Prepare for release 0.1.0
9 files changed
tree: 67cc50ac3af5ad4150e32305863193777623c4fd
  1. .github/
  2. api/
  3. config/
  4. controllers/
  5. hack/
  6. .dockerignore
  7. .gitignore
  8. .licenserc.yaml
  9. Dockerfile
  10. go.mod
  11. go.sum
  12. main.go
  13. Makefile
  14. PROJECT
  15. README.md
README.md

dolphinscheduler-operator

Features

  • Deploy and manage the master, worker, alert, api components.
  • Scale the Pod numbers with one commond.
  • Update the component's version (not include the database schema).

Project Status

Project status: alpha1

Current API version: v1alpha1

Get Started

  • Create a namespace ds
kubectl create namespace ds
  • Install PostgreSQL database (Optional)

If you don't have a running database, you can run

kubectl apply -f config/ds/postgreSQL

to create a demo database, note that this is only for demonstration, DO NOT use it in production environment. You need to replace the hostPath.path in postgres-pv.yaml if you don't have a directory /var/lib/data.

Connect to PostgreSQL and initialize the database schema by executing dolphinscheduler/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_postgresql.sql.

  • Install zookeeper (Optional)

If you don't have a running zookeeper, the demo doployment file is in config/ds/zookeeper,

kubectl apply -f config/ds/zookeeper
  • Create pv and pvc (Optional)

If you have pv and pvc, you can config it in config/sameples.

Or you can create it with config/ds/ds-pv.yaml and config/configmap/ds-pvc.yaml. Notice to replace the hostPath.path in ds-pv.yaml.

And you can mount the lib in dolphinscheduler /opt/soft in config/samples/ds_v1alpha1_dsworker.yaml with paramter named lib_pvc_name

Mount the logs in /opt/dolphinscheduler/logs with the pvcname named log_pvc_name.

query the status of worker

kubectl get dsworkers.ds.apache.dolphinscheduler.dev -n ds

api explain

kubectl explain dsmaster

how to test

how to deploy

export IMG=ghcr.io/apache/dolphinscheduler-operator:latest
make build && make manifests && make install && make deploy
  • Deploy the sample
cd config/samples
kubectl apply -f ds_v1alpha1_dsalert.yaml
kubectl apply -f ds_v1alpha1_api.yaml -f ds_v1alpha1_dsmaster.yaml -f ds_v1alpha1_dsworker.yaml