# # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You under the Apache License, Version 2.0 # (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # # Default values for dolphinscheduler-chart. # This is a YAML-formatted file. # Declare variables to be passed into your templates. nameOverride: "" fullnameOverride: "" timezone: "Asia/Shanghai" image: registry: "apache" repository: "dolphinscheduler" tag: "latest" pullPolicy: "IfNotPresent" pullSecrets: [] # If not exists external database, by default, Dolphinscheduler's database will use it. postgresql: enabled: true postgresqlUsername: "root" postgresqlPassword: "root" postgresqlDatabase: "dolphinscheduler" persistence: enabled: false size: "20Gi" storageClass: "-" # If exists external database, and set postgresql.enable value to false. # external database will be used, otherwise Dolphinscheduler's database will be used. externalDatabase: type: "postgresql" driver: "org.postgresql.Driver" host: "localhost" port: "5432" username: "root" password: "root" database: "dolphinscheduler" # multi params should join with & char params: "characterEncoding=utf8" # If not exists external zookeeper, by default, Dolphinscheduler's zookeeper will use it. zookeeper: enabled: true taskQueue: "zookeeper" config: null service: port: "2181" persistence: enabled: false size: "20Gi" storageClass: "-" # If exists external zookeeper, and set zookeeper.enable value to false. # If zookeeper.enable is false, Dolphinscheduler's zookeeper will use it. externalZookeeper: taskQueue: "zookeeper" zookeeperQuorum: "127.0.0.1:2181" zookeeperRoot: "/dolphinscheduler" common: configmap: DOLPHINSCHEDULER_ENV_PATH: "/tmp/dolphinscheduler/env" DOLPHINSCHEDULER_DATA_BASEDIR_PATH: "/tmp/dolphinscheduler/files" RESOURCE_STORAGE_TYPE: "NONE" RESOURCE_UPLOAD_PATH: "/ds" FS_DEFAULT_FS: "s3a://xxxx" FS_S3A_ENDPOINT: "s3.xxx.amazonaws.com" FS_S3A_ACCESS_KEY: "xxxxxxx" FS_S3A_SECRET_KEY: "xxxxxxx" master: podManagementPolicy: "Parallel" replicas: "3" # NodeSelector is a selector which must be true for the pod to fit on a node. # Selector which must match a node's labels for the pod to be scheduled on that node. # More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ nodeSelector: {} # Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission, # effectively unioning the set of nodes tolerated by the pod and the RuntimeClass. tolerations: [] # Affinity is a group of affinity scheduling rules. # If specified, the pod's scheduling constraints. # More info: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.17/#affinity-v1-core affinity: {} # The jvm options for java instance startup jvmOptions: "" resources: {} # limits: # memory: "18Gi" # cpu: "4" # requests: # memory: "2Gi" # cpu: "500m" # You can use annotations to attach arbitrary non-identifying metadata to objects. # Clients such as tools and libraries can retrieve this metadata. annotations: {} ## Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes configmap: MASTER_EXEC_THREADS: "100" MASTER_EXEC_TASK_NUM: "20" MASTER_HEARTBEAT_INTERVAL: "10" MASTER_TASK_COMMIT_RETRYTIMES: "5" MASTER_TASK_COMMIT_INTERVAL: "1000" MASTER_MAX_CPULOAD_AVG: "100" MASTER_RESERVED_MEMORY: "0.1" MASTER_LISTEN_PORT: "5678" livenessProbe: enabled: true initialDelaySeconds: "30" periodSeconds: "30" timeoutSeconds: "5" failureThreshold: "3" successThreshold: "1" ## Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes readinessProbe: enabled: true initialDelaySeconds: "30" periodSeconds: "30" timeoutSeconds: "5" failureThreshold: "3" successThreshold: "1" ## volumeClaimTemplates is a list of claims that pods are allowed to reference. ## The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod. ## Every claim in this list must have at least one matching (by name) volumeMount in one container in the template. ## A claim in this list takes precedence over any volumes in the template, with the same name. persistentVolumeClaim: enabled: false accessModes: - "ReadWriteOnce" storageClassName: "-" storage: "20Gi" worker: podManagementPolicy: "Parallel" replicas: "3" # NodeSelector is a selector which must be true for the pod to fit on a node. # Selector which must match a node's labels for the pod to be scheduled on that node. # More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ nodeSelector: {} # Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission, # effectively unioning the set of nodes tolerated by the pod and the RuntimeClass. tolerations: [] # Affinity is a group of affinity scheduling rules. # If specified, the pod's scheduling constraints. # More info: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.17/#affinity-v1-core affinity: {} # The jvm options for java instance startup jvmOptions: "" resources: {} # limits: # memory: "18Gi" # cpu: "4" # requests: # memory: "2Gi" # cpu: "500m" # You can use annotations to attach arbitrary non-identifying metadata to objects. # Clients such as tools and libraries can retrieve this metadata. annotations: {} ## Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes livenessProbe: enabled: true initialDelaySeconds: "30" periodSeconds: "30" timeoutSeconds: "5" failureThreshold: "3" successThreshold: "1" ## Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes readinessProbe: enabled: true initialDelaySeconds: "30" periodSeconds: "30" timeoutSeconds: "5" failureThreshold: "3" successThreshold: "1" configmap: WORKER_EXEC_THREADS: "100" WORKER_HEARTBEAT_INTERVAL: "10" WORKER_FETCH_TASK_NUM: "3" WORKER_MAX_CPULOAD_AVG: "100" WORKER_RESERVED_MEMORY: "0.1" WORKER_LISTEN_PORT: "1234" WORKER_GROUP: "default" DOLPHINSCHEDULER_DATA_BASEDIR_PATH: "/tmp/dolphinscheduler" DOLPHINSCHEDULER_ENV: - "export HADOOP_HOME=/opt/soft/hadoop" - "export HADOOP_CONF_DIR=/opt/soft/hadoop/etc/hadoop" - "export SPARK_HOME1=/opt/soft/spark1" - "export SPARK_HOME2=/opt/soft/spark2" - "export PYTHON_HOME=/opt/soft/python" - "export JAVA_HOME=/opt/soft/java" - "export HIVE_HOME=/opt/soft/hive" - "export FLINK_HOME=/opt/soft/flink" - "export PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$PATH" ## volumeClaimTemplates is a list of claims that pods are allowed to reference. ## The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod. ## Every claim in this list must have at least one matching (by name) volumeMount in one container in the template. ## A claim in this list takes precedence over any volumes in the template, with the same name. persistentVolumeClaim: enabled: false ## dolphinscheduler data volume dataPersistentVolume: enabled: false accessModes: - "ReadWriteOnce" storageClassName: "-" storage: "20Gi" ## dolphinscheduler logs volume logsPersistentVolume: enabled: false accessModes: - "ReadWriteOnce" storageClassName: "-" storage: "20Gi" alert: strategy: type: "RollingUpdate" rollingUpdate: maxSurge: "25%" maxUnavailable: "25%" replicas: "1" # NodeSelector is a selector which must be true for the pod to fit on a node. # Selector which must match a node's labels for the pod to be scheduled on that node. # More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ nodeSelector: {} # Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission, # effectively unioning the set of nodes tolerated by the pod and the RuntimeClass. tolerations: [] # Affinity is a group of affinity scheduling rules. # If specified, the pod's scheduling constraints. # More info: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.17/#affinity-v1-core affinity: {} # The jvm options for java instance startup jvmOptions: "" resources: {} # limits: # memory: "4Gi" # cpu: "1" # requests: # memory: "2Gi" # cpu: "500m" # You can use annotations to attach arbitrary non-identifying metadata to objects. # Clients such as tools and libraries can retrieve this metadata. annotations: {} ## Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes configmap: ALERT_PLUGIN_DIR: "/opt/dolphinscheduler/alert/plugin" XLS_FILE_PATH: "/tmp/xls" MAIL_SERVER_HOST: "" MAIL_SERVER_PORT: "" MAIL_SENDER: "" MAIL_USER: "" MAIL_PASSWD: "" MAIL_SMTP_STARTTLS_ENABLE: false MAIL_SMTP_SSL_ENABLE: false MAIL_SMTP_SSL_TRUST: "" ENTERPRISE_WECHAT_ENABLE: false ENTERPRISE_WECHAT_CORP_ID: "" ENTERPRISE_WECHAT_SECRET: "" ENTERPRISE_WECHAT_AGENT_ID: "" ENTERPRISE_WECHAT_USERS: "" livenessProbe: enabled: true initialDelaySeconds: "30" periodSeconds: "30" timeoutSeconds: "5" failureThreshold: "3" successThreshold: "1" ## Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes readinessProbe: enabled: true initialDelaySeconds: "30" periodSeconds: "30" timeoutSeconds: "5" failureThreshold: "3" successThreshold: "1" ## volumeClaimTemplates is a list of claims that pods are allowed to reference. ## The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod. ## Every claim in this list must have at least one matching (by name) volumeMount in one container in the template. ## A claim in this list takes precedence over any volumes in the template, with the same name. persistentVolumeClaim: enabled: false accessModes: - "ReadWriteOnce" storageClassName: "-" storage: "20Gi" api: strategy: type: "RollingUpdate" rollingUpdate: maxSurge: "25%" maxUnavailable: "25%" replicas: "1" # NodeSelector is a selector which must be true for the pod to fit on a node. # Selector which must match a node's labels for the pod to be scheduled on that node. # More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ nodeSelector: {} # Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission, # effectively unioning the set of nodes tolerated by the pod and the RuntimeClass. tolerations: [] # Affinity is a group of affinity scheduling rules. # If specified, the pod's scheduling constraints. # More info: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.17/#affinity-v1-core affinity: {} # The jvm options for java instance startup jvmOptions: "" resources: {} # limits: # memory: "4Gi" # cpu: "2" # requests: # memory: "2Gi" # cpu: "500m" # You can use annotations to attach arbitrary non-identifying metadata to objects. # Clients such as tools and libraries can retrieve this metadata. annotations: {} ## Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes livenessProbe: enabled: true initialDelaySeconds: "30" periodSeconds: "30" timeoutSeconds: "5" failureThreshold: "3" successThreshold: "1" ## Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes readinessProbe: enabled: true initialDelaySeconds: "30" periodSeconds: "30" timeoutSeconds: "5" failureThreshold: "3" successThreshold: "1" ## volumeClaimTemplates is a list of claims that pods are allowed to reference. ## The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod. ## Every claim in this list must have at least one matching (by name) volumeMount in one container in the template. ## A claim in this list takes precedence over any volumes in the template, with the same name. persistentVolumeClaim: enabled: false accessModes: - "ReadWriteOnce" storageClassName: "-" storage: "20Gi" frontend: strategy: type: "RollingUpdate" rollingUpdate: maxSurge: "25%" maxUnavailable: "25%" replicas: "1" # NodeSelector is a selector which must be true for the pod to fit on a node. # Selector which must match a node's labels for the pod to be scheduled on that node. # More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ nodeSelector: {} # Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission, # effectively unioning the set of nodes tolerated by the pod and the RuntimeClass. tolerations: [] # Affinity is a group of affinity scheduling rules. # If specified, the pod's scheduling constraints. # More info: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.17/#affinity-v1-core affinity: {} resources: {} # limits: # memory: "256Mi" # cpu: "1" # requests: # memory: "256Mi" # cpu: "500m" # You can use annotations to attach arbitrary non-identifying metadata to objects. # Clients such as tools and libraries can retrieve this metadata. annotations: {} ## Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes livenessProbe: enabled: true initialDelaySeconds: "30" periodSeconds: "30" timeoutSeconds: "5" failureThreshold: "3" successThreshold: "1" ## Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes readinessProbe: enabled: true initialDelaySeconds: "30" periodSeconds: "30" timeoutSeconds: "5" failureThreshold: "3" successThreshold: "1" ## volumeClaimTemplates is a list of claims that pods are allowed to reference. ## The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod. ## Every claim in this list must have at least one matching (by name) volumeMount in one container in the template. ## A claim in this list takes precedence over any volumes in the template, with the same name. persistentVolumeClaim: enabled: false accessModes: - "ReadWriteOnce" storageClassName: "-" storage: "20Gi" ingress: enabled: false host: "dolphinscheduler.org" path: "/" tls: enabled: false hosts: - "dolphinscheduler.org" secretName: "dolphinscheduler-tls"