You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
411 lines
17 KiB
411 lines
17 KiB
# |
|
# 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. |
|
|
|
timezone: "Asia/Shanghai" |
|
|
|
image: |
|
registry: "dolphinscheduler.docker.scarf.sh/apache" |
|
tag: "dev-SNAPSHOT" |
|
pullPolicy: "IfNotPresent" |
|
pullSecret: "" |
|
|
|
## 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" |
|
host: "localhost" |
|
port: "5432" |
|
username: "root" |
|
password: "root" |
|
database: "dolphinscheduler" |
|
params: "characterEncoding=utf8" |
|
|
|
## If not exists external registry, the zookeeper registry will be used by default. |
|
zookeeper: |
|
enabled: true |
|
service: |
|
port: 2181 |
|
fourlwCommandsWhitelist: "srvr,ruok,wchs,cons" |
|
persistence: |
|
enabled: false |
|
size: "20Gi" |
|
storageClass: "-" |
|
|
|
## If exists external registry and set zookeeper.enable value to false, the external registry will be used. |
|
externalRegistry: |
|
registryPluginDir: "lib/plugin/registry" |
|
registryPluginName: "zookeeper" |
|
registryServers: "127.0.0.1:2181" |
|
|
|
common: |
|
## Configmap |
|
configmap: |
|
DOLPHINSCHEDULER_OPTS: "" |
|
DATA_BASEDIR_PATH: "/tmp/dolphinscheduler" |
|
RESOURCE_STORAGE_TYPE: "HDFS" |
|
RESOURCE_UPLOAD_PATH: "/dolphinscheduler" |
|
FS_DEFAULT_FS: "file:///" |
|
FS_S3A_ENDPOINT: "s3.xxx.amazonaws.com" |
|
FS_S3A_ACCESS_KEY: "xxxxxxx" |
|
FS_S3A_SECRET_KEY: "xxxxxxx" |
|
HADOOP_SECURITY_AUTHENTICATION_STARTUP_STATE: "false" |
|
JAVA_SECURITY_KRB5_CONF_PATH: "/opt/krb5.conf" |
|
LOGIN_USER_KEYTAB_USERNAME: "hdfs@HADOOP.COM" |
|
LOGIN_USER_KEYTAB_PATH: "/opt/hdfs.keytab" |
|
KERBEROS_EXPIRE_TIME: "2" |
|
HDFS_ROOT_USER: "hdfs" |
|
RESOURCE_MANAGER_HTTPADDRESS_PORT: "8088" |
|
YARN_RESOURCEMANAGER_HA_RM_IDS: "" |
|
YARN_APPLICATION_STATUS_ADDRESS: "http://ds1:%s/ws/v1/cluster/apps/%s" |
|
YARN_JOB_HISTORY_STATUS_ADDRESS: "http://ds1:19888/ws/v1/history/mapreduce/jobs/%s" |
|
DATASOURCE_ENCRYPTION_ENABLE: "false" |
|
DATASOURCE_ENCRYPTION_SALT: "!@#$%^&*" |
|
SUDO_ENABLE: "true" |
|
# dolphinscheduler env |
|
HADOOP_HOME: "/opt/soft/hadoop" |
|
HADOOP_CONF_DIR: "/opt/soft/hadoop/etc/hadoop" |
|
SPARK_HOME1: "/opt/soft/spark1" |
|
SPARK_HOME2: "/opt/soft/spark2" |
|
PYTHON_HOME: "/usr/bin/python" |
|
JAVA_HOME: "/usr/local/openjdk-8" |
|
HIVE_HOME: "/opt/soft/hive" |
|
FLINK_HOME: "/opt/soft/flink" |
|
DATAX_HOME: "/opt/soft/datax" |
|
## Shared storage persistence mounted into api, master and worker, such as Hadoop, Spark, Flink and DataX binary package |
|
sharedStoragePersistence: |
|
enabled: false |
|
mountPath: "/opt/soft" |
|
accessModes: |
|
- "ReadWriteMany" |
|
## storageClassName must support the access mode: ReadWriteMany |
|
storageClassName: "-" |
|
storage: "20Gi" |
|
## If RESOURCE_STORAGE_TYPE is HDFS and FS_DEFAULT_FS is file:///, fsFileResourcePersistence should be enabled for resource storage |
|
fsFileResourcePersistence: |
|
enabled: false |
|
accessModes: |
|
- "ReadWriteMany" |
|
## storageClassName must support the access mode: ReadWriteMany |
|
storageClassName: "-" |
|
storage: "20Gi" |
|
|
|
master: |
|
## PodManagementPolicy controls how pods are created during initial scale up, when replacing pods on nodes, or when scaling down. |
|
podManagementPolicy: "Parallel" |
|
## Replicas is the desired number of replicas of the given Template. |
|
replicas: "3" |
|
## You can use annotations to attach arbitrary non-identifying metadata to objects. |
|
## Clients such as tools and libraries can retrieve this metadata. |
|
annotations: {} |
|
## 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: {} |
|
## 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: [] |
|
## Compute Resources required by this container. Cannot be updated. |
|
## More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container |
|
resources: {} |
|
# resources: |
|
# limits: |
|
# memory: "8Gi" |
|
# cpu: "4" |
|
# requests: |
|
# memory: "2Gi" |
|
# cpu: "500m" |
|
## 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" |
|
## PersistentVolumeClaim represents a reference to a PersistentVolumeClaim in the same namespace. |
|
## 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" |
|
env: |
|
JAVA_OPTS: "-Xms1g -Xmx1g -Xmn512m" |
|
MASTER_EXEC_THREADS: "100" |
|
MASTER_EXEC_TASK_NUM: "20" |
|
MASTER_DISPATCH_TASK_NUM: "3" |
|
MASTER_HOST_SELECTOR: "LowerWeight" |
|
MASTER_HEARTBEAT_INTERVAL: "10" |
|
MASTER_TASK_COMMIT_RETRYTIMES: "5" |
|
MASTER_TASK_COMMIT_INTERVAL: "1000" |
|
MASTER_MAX_CPU_LOAD_AVG: "-1" |
|
MASTER_RESERVED_MEMORY: "0.3" |
|
MASTER_FAILOVER_INTERVAL: 10 |
|
MASTER_KILL_YARN_JOB_WHEN_HANDLE_FAILOVER: "true" |
|
|
|
worker: |
|
## PodManagementPolicy controls how pods are created during initial scale up, when replacing pods on nodes, or when scaling down. |
|
podManagementPolicy: "Parallel" |
|
## Replicas is the desired number of replicas of the given Template. |
|
replicas: "3" |
|
## You can use annotations to attach arbitrary non-identifying metadata to objects. |
|
## Clients such as tools and libraries can retrieve this metadata. |
|
annotations: {} |
|
## 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: {} |
|
## 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: [] |
|
## Compute Resources required by this container. Cannot be updated. |
|
## More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container |
|
resources: {} |
|
# resources: |
|
# limits: |
|
# memory: "8Gi" |
|
# cpu: "4" |
|
# requests: |
|
# memory: "2Gi" |
|
# cpu: "500m" |
|
## 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" |
|
## PersistentVolumeClaim represents a reference to a PersistentVolumeClaim in the same namespace. |
|
## 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" |
|
env: |
|
WORKER_GROUPS_0: default |
|
WORKER_MAX_CPU_LOAD_AVG: "-1" |
|
WORKER_RESERVED_MEMORY: "0.3" |
|
WORKER_EXEC_THREADS: "100" |
|
WORKER_HEARTBEAT_INTERVAL: "10" |
|
WORKER_HOST_WEIGHT: "100" |
|
WORKER_GROUPS: "default" |
|
|
|
alert: |
|
## Number of desired pods. This is a pointer to distinguish between explicit zero and not specified. Defaults to 1. |
|
replicas: 1 |
|
## The deployment strategy to use to replace existing pods with new ones. |
|
strategy: |
|
type: "RollingUpdate" |
|
rollingUpdate: |
|
maxSurge: "25%" |
|
maxUnavailable: "25%" |
|
## You can use annotations to attach arbitrary non-identifying metadata to objects. |
|
## Clients such as tools and libraries can retrieve this metadata. |
|
annotations: {} |
|
## 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/ |
|
affinity: {} |
|
## Compute Resources required by this container. Cannot be updated. |
|
## More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container |
|
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 |
|
resources: {} |
|
# resources: |
|
# limits: |
|
# memory: "2Gi" |
|
# cpu: "1" |
|
# requests: |
|
# memory: "1Gi" |
|
# cpu: "500m" |
|
## 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" |
|
## PersistentVolumeClaim represents a reference to a PersistentVolumeClaim in the same namespace. |
|
## More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
persistentVolumeClaim: |
|
enabled: false |
|
accessModes: |
|
- "ReadWriteOnce" |
|
storageClassName: "-" |
|
storage: "20Gi" |
|
env: |
|
JAVA_OPTS: "-Xms512m -Xmx512m -Xmn256m" |
|
|
|
api: |
|
## Number of desired pods. This is a pointer to distinguish between explicit zero and not specified. Defaults to 1. |
|
replicas: "1" |
|
## The deployment strategy to use to replace existing pods with new ones. |
|
strategy: |
|
type: "RollingUpdate" |
|
rollingUpdate: |
|
maxSurge: "25%" |
|
maxUnavailable: "25%" |
|
## You can use annotations to attach arbitrary non-identifying metadata to objects. |
|
## Clients such as tools and libraries can retrieve this metadata. |
|
annotations: {} |
|
## 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/ |
|
affinity: {} |
|
## Compute Resources required by this container. Cannot be updated. |
|
## More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container |
|
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 |
|
resources: {} |
|
# resources: |
|
# limits: |
|
# memory: "2Gi" |
|
# cpu: "1" |
|
# requests: |
|
# memory: "1Gi" |
|
# cpu: "500m" |
|
## 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" |
|
## PersistentVolumeClaim represents a reference to a PersistentVolumeClaim in the same namespace. |
|
## More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims |
|
persistentVolumeClaim: |
|
enabled: false |
|
accessModes: |
|
- "ReadWriteOnce" |
|
storageClassName: "-" |
|
storage: "20Gi" |
|
service: |
|
## type determines how the Service is exposed. Defaults to ClusterIP. Valid options are ExternalName, ClusterIP, NodePort, and LoadBalancer |
|
type: "ClusterIP" |
|
## clusterIP is the IP address of the service and is usually assigned randomly by the master |
|
clusterIP: "" |
|
## nodePort is the port on each node on which this service is exposed when type=NodePort |
|
nodePort: "" |
|
## externalIPs is a list of IP addresses for which nodes in the cluster will also accept traffic for this service |
|
externalIPs: [] |
|
## externalName is the external reference that kubedns or equivalent will return as a CNAME record for this service, requires Type to be ExternalName |
|
externalName: "" |
|
## loadBalancerIP when service.type is LoadBalancer. LoadBalancer will get created with the IP specified in this field |
|
loadBalancerIP: "" |
|
## annotations may need to be set when service.type is LoadBalancer |
|
## service.beta.kubernetes.io/aws-load-balancer-ssl-cert: arn:aws:acm:us-east-1:EXAMPLE_CERT |
|
annotations: {} |
|
env: |
|
JAVA_OPTS: "-Xms512m -Xmx512m -Xmn256m" |
|
|
|
ingress: |
|
enabled: false |
|
host: "dolphinscheduler.org" |
|
path: "/dolphinscheduler" |
|
annotations: {} |
|
tls: |
|
enabled: false |
|
secretName: "dolphinscheduler-tls"
|
|
|