values.yaml 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681
  1. #
  2. # Licensed to the Apache Software Foundation (ASF) under one or more
  3. # contributor license agreements. See the NOTICE file distributed with
  4. # this work for additional information regarding copyright ownership.
  5. # The ASF licenses this file to You under the Apache License, Version 2.0
  6. # (the "License"); you may not use this file except in compliance with
  7. # the License. You may obtain a copy of the License at
  8. #
  9. # http://www.apache.org/licenses/LICENSE-2.0
  10. #
  11. # Unless required by applicable law or agreed to in writing, software
  12. # distributed under the License is distributed on an "AS IS" BASIS,
  13. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. # See the License for the specific language governing permissions and
  15. # limitations under the License.
  16. #
  17. # Default values for dolphinscheduler-chart.
  18. # This is a YAML-formatted file.
  19. # Declare variables to be passed into your templates.
  20. timezone: "Asia/Shanghai"
  21. # Used to detect whether dolphinscheduler dependent services such as database are ready
  22. initImage:
  23. pullPolicy: "IfNotPresent"
  24. busybox: "busybox:1.30.1"
  25. image:
  26. registry: "dolphinscheduler.docker.scarf.sh/apache"
  27. tag: "dev-SNAPSHOT"
  28. pullPolicy: "IfNotPresent"
  29. pullSecret: ""
  30. master: dolphinscheduler-master
  31. worker: dolphinscheduler-worker
  32. api: dolphinscheduler-api
  33. alert: dolphinscheduler-alert-server
  34. tools: dolphinscheduler-tools
  35. ## If not exists external database, by default, Dolphinscheduler's database will use it.
  36. postgresql:
  37. enabled: true
  38. postgresqlUsername: "root"
  39. postgresqlPassword: "root"
  40. postgresqlDatabase: "dolphinscheduler"
  41. driverClassName: "org.postgresql.Driver"
  42. params: "characterEncoding=utf8"
  43. persistence:
  44. enabled: false
  45. size: "20Gi"
  46. storageClass: "-"
  47. mysql:
  48. enabled: false
  49. driverClassName: "com.mysql.cj.jdbc.Driver"
  50. auth:
  51. username: "ds"
  52. password: "ds"
  53. database: "dolphinscheduler"
  54. params: "characterEncoding=utf8"
  55. primary:
  56. persistence:
  57. enabled: false
  58. size: "20Gi"
  59. storageClass: "-"
  60. minio:
  61. enabled: true
  62. auth:
  63. rootUser: minioadmin
  64. rootPassword: minioadmin
  65. persistence:
  66. enabled: false
  67. defaultBuckets: "dolphinscheduler"
  68. ## If exists external database, and set postgresql.enable value to false.
  69. ## external database will be used, otherwise Dolphinscheduler's database will be used.
  70. externalDatabase:
  71. enabled: false
  72. type: "postgresql"
  73. host: "localhost"
  74. port: "5432"
  75. username: "root"
  76. password: "root"
  77. database: "dolphinscheduler"
  78. params: "characterEncoding=utf8"
  79. driverClassName: "org.postgresql.Driver"
  80. ## If not exists external registry, the zookeeper registry will be used by default.
  81. zookeeper:
  82. enabled: true
  83. service:
  84. port: 2181
  85. fourlwCommandsWhitelist: "srvr,ruok,wchs,cons"
  86. persistence:
  87. enabled: false
  88. size: "20Gi"
  89. storageClass: "-"
  90. etcd:
  91. enabled: false
  92. endpoints: ""
  93. namespace: "dolphinscheduler"
  94. user: ""
  95. passWord: ""
  96. authority: ""
  97. # Please create a new folder: deploy/kubernetes/dolphinscheduler/etcd-certs
  98. ssl:
  99. enabled: false
  100. certFile: "etcd-certs/ca.crt"
  101. keyCertChainFile: "etcd-certs/client.crt"
  102. keyFile: "etcd-certs/client.pem"
  103. ## If exists external registry and set zookeeper.enable value to false, the external registry will be used.
  104. externalRegistry:
  105. registryPluginName: "zookeeper"
  106. registryServers: "127.0.0.1:2181"
  107. security:
  108. authentication:
  109. type: PASSWORD
  110. ldap:
  111. urls: ldap://ldap.forumsys.com:389/
  112. basedn: dc=example,dc=com
  113. username: cn=read-only-admin,dc=example,dc=com
  114. password: password
  115. user:
  116. admin: read-only-admin
  117. identityattribute: uid
  118. emailattribute: mail
  119. notexistaction: CREATE
  120. ssl:
  121. enable: false
  122. # do not change this value
  123. truststore: "/opt/ldapkeystore.jks"
  124. # if you use macOS, please run `base64 -b 0 -i /path/to/your.jks`
  125. # if you use Linux, please run `base64 -w 0 /path/to/your.jks`
  126. # if you use Windows, please run `certutil -f -encode /path/to/your.jks`
  127. # Then copy the base64 content to below field in one line
  128. jksbase64content: ""
  129. truststorepassword: ""
  130. conf:
  131. # auto restart, if true, all components will be restarted automatically after the common configuration is updated. if false, you need to restart the components manually. default is false
  132. auto: false
  133. # common configuration
  134. common:
  135. # user data local directory path, please make sure the directory exists and have read write permissions
  136. data.basedir.path: /tmp/dolphinscheduler
  137. # resource storage type: HDFS, S3, OSS, GCS, ABS, NONE
  138. resource.storage.type: S3
  139. # resource store on HDFS/S3 path, resource file will store to this base path, self configuration, please make sure the directory exists on hdfs and have read write permissions. "/dolphinscheduler" is recommended
  140. resource.storage.upload.base.path: /dolphinscheduler
  141. # The AWS access key. if resource.storage.type=S3 or use EMR-Task, This configuration is required
  142. resource.aws.access.key.id: minioadmin
  143. # The AWS secret access key. if resource.storage.type=S3 or use EMR-Task, This configuration is required
  144. resource.aws.secret.access.key: minioadmin
  145. # The AWS Region to use. if resource.storage.type=S3 or use EMR-Task, This configuration is required
  146. resource.aws.region: ca-central-1
  147. # The name of the bucket. You need to create them by yourself. Otherwise, the system cannot start. All buckets in Amazon S3 share a single namespace; ensure the bucket is given a unique name.
  148. resource.aws.s3.bucket.name: dolphinscheduler
  149. # You need to set this parameter when private cloud s3. If S3 uses public cloud, you only need to set resource.aws.region or set to the endpoint of a public cloud such as S3.cn-north-1.amazonaws.com.cn
  150. resource.aws.s3.endpoint: http://minio:9000
  151. # alibaba cloud access key id, required if you set resource.storage.type=OSS
  152. resource.alibaba.cloud.access.key.id: <your-access-key-id>
  153. # alibaba cloud access key secret, required if you set resource.storage.type=OSS
  154. resource.alibaba.cloud.access.key.secret: <your-access-key-secret>
  155. # alibaba cloud region, required if you set resource.storage.type=OSS
  156. resource.alibaba.cloud.region: cn-hangzhou
  157. # oss bucket name, required if you set resource.storage.type=OSS
  158. resource.alibaba.cloud.oss.bucket.name: dolphinscheduler
  159. # oss bucket endpoint, required if you set resource.storage.type=OSS
  160. resource.alibaba.cloud.oss.endpoint: https://oss-cn-hangzhou.aliyuncs.com
  161. # azure storage account name, required if you set resource.storage.type=ABS
  162. resource.azure.client.id: minioadmin
  163. # azure storage account key, required if you set resource.storage.type=ABS
  164. resource.azure.client.secret: minioadmin
  165. # azure storage subId, required if you set resource.storage.type=ABS
  166. resource.azure.subId: minioadmin
  167. # azure storage tenantId, required if you set resource.storage.type=ABS
  168. resource.azure.tenant.id: minioadmin
  169. # if resource.storage.type=HDFS, the user must have the permission to create directories under the HDFS root path
  170. resource.hdfs.root.user: hdfs
  171. # if resource.storage.type=S3, the value like: s3a://dolphinscheduler; if resource.storage.type=HDFS and namenode HA is enabled, you need to copy core-site.xml and hdfs-site.xml to conf dir
  172. resource.hdfs.fs.defaultFS: hdfs://mycluster:8020
  173. # whether to startup kerberos
  174. hadoop.security.authentication.startup.state: false
  175. # java.security.krb5.conf path
  176. java.security.krb5.conf.path: /opt/krb5.conf
  177. # login user from keytab username
  178. login.user.keytab.username: hdfs-mycluster@ESZ.COM
  179. # login user from keytab path
  180. login.user.keytab.path: /opt/hdfs.headless.keytab
  181. # kerberos expire time, the unit is hour
  182. kerberos.expire.time: 2
  183. # resourcemanager port, the default value is 8088 if not specified
  184. resource.manager.httpaddress.port: 8088
  185. # if resourcemanager HA is enabled, please set the HA IPs; if resourcemanager is single, keep this value empty
  186. yarn.resourcemanager.ha.rm.ids: 192.168.xx.xx,192.168.xx.xx
  187. # if resourcemanager HA is enabled or not use resourcemanager, please keep the default value; If resourcemanager is single, you only need to replace ds1 to actual resourcemanager hostname
  188. yarn.application.status.address: http://ds1:%s/ws/v1/cluster/apps/%s
  189. # job history status url when application number threshold is reached(default 10000, maybe it was set to 1000)
  190. yarn.job.history.status.address: http://ds1:19888/ws/v1/history/mapreduce/jobs/%s
  191. # datasource encryption enable
  192. datasource.encryption.enable: false
  193. # datasource encryption salt
  194. datasource.encryption.salt: '!@#$%^&*'
  195. # data quality option
  196. data-quality.jar.name: dolphinscheduler-data-quality-dev-SNAPSHOT.jar
  197. # Whether hive SQL is executed in the same session
  198. support.hive.oneSession: false
  199. # use sudo or not, if set true, executing user is tenant user and deploy user needs sudo permissions; if set false, executing user is the deploy user and doesn't need sudo permissions
  200. sudo.enable: true
  201. # development state
  202. development.state: false
  203. # rpc port
  204. alert.rpc.port: 50052
  205. # set path of conda.sh
  206. conda.path: /opt/anaconda3/etc/profile.d/conda.sh
  207. # Task resource limit state
  208. task.resource.limit.state: false
  209. # mlflow task plugin preset repository
  210. ml.mlflow.preset_repository: https://github.com/apache/dolphinscheduler-mlflow
  211. # mlflow task plugin preset repository version
  212. ml.mlflow.preset_repository_version: "main"
  213. # way to collect applicationId: log, aop
  214. appId.collect: log
  215. common:
  216. ## Configmap
  217. configmap:
  218. DOLPHINSCHEDULER_OPTS: ""
  219. DATA_BASEDIR_PATH: "/tmp/dolphinscheduler"
  220. RESOURCE_UPLOAD_PATH: "/dolphinscheduler"
  221. # dolphinscheduler env
  222. HADOOP_HOME: "/opt/soft/hadoop"
  223. HADOOP_CONF_DIR: "/opt/soft/hadoop/etc/hadoop"
  224. SPARK_HOME: "/opt/soft/spark"
  225. PYTHON_LAUNCHER: "/usr/bin/python/bin/python3"
  226. JAVA_HOME: "/opt/java/openjdk"
  227. HIVE_HOME: "/opt/soft/hive"
  228. FLINK_HOME: "/opt/soft/flink"
  229. DATAX_LAUNCHER: "/opt/soft/datax/bin/datax.py"
  230. ## Shared storage persistence mounted into api, master and worker, such as Hadoop, Spark, Flink and DataX binary package
  231. sharedStoragePersistence:
  232. enabled: false
  233. mountPath: "/opt/soft"
  234. accessModes:
  235. - "ReadWriteMany"
  236. ## storageClassName must support the access mode: ReadWriteMany
  237. storageClassName: "-"
  238. storage: "20Gi"
  239. ## If RESOURCE_STORAGE_TYPE is HDFS and FS_DEFAULT_FS is file:///, fsFileResourcePersistence should be enabled for resource storage
  240. fsFileResourcePersistence:
  241. enabled: false
  242. accessModes:
  243. - "ReadWriteMany"
  244. ## storageClassName must support the access mode: ReadWriteMany
  245. storageClassName: "-"
  246. storage: "20Gi"
  247. master:
  248. ## PodManagementPolicy controls how pods are created during initial scale up, when replacing pods on nodes, or when scaling down.
  249. podManagementPolicy: "Parallel"
  250. ## Replicas is the desired number of replicas of the given Template.
  251. replicas: "3"
  252. ## You can use annotations to attach arbitrary non-identifying metadata to objects.
  253. ## Clients such as tools and libraries can retrieve this metadata.
  254. annotations: {}
  255. ## Affinity is a group of affinity scheduling rules. If specified, the pod's scheduling constraints.
  256. ## More info: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.17/#affinity-v1-core
  257. affinity: {}
  258. ## NodeSelector is a selector which must be true for the pod to fit on a node.
  259. ## Selector which must match a node's labels for the pod to be scheduled on that node.
  260. ## More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
  261. nodeSelector: {}
  262. ## Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission,
  263. ## effectively unioning the set of nodes tolerated by the pod and the RuntimeClass.
  264. tolerations: []
  265. ## Compute Resources required by this container. Cannot be updated.
  266. ## More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container
  267. resources: {}
  268. # resources:
  269. # limits:
  270. # memory: "8Gi"
  271. # cpu: "4"
  272. # requests:
  273. # memory: "2Gi"
  274. # cpu: "500m"
  275. ## Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated.
  276. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
  277. livenessProbe:
  278. enabled: true
  279. initialDelaySeconds: "30"
  280. periodSeconds: "30"
  281. timeoutSeconds: "5"
  282. failureThreshold: "3"
  283. successThreshold: "1"
  284. ## Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated.
  285. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
  286. readinessProbe:
  287. enabled: true
  288. initialDelaySeconds: "30"
  289. periodSeconds: "30"
  290. timeoutSeconds: "5"
  291. failureThreshold: "3"
  292. successThreshold: "1"
  293. ## PersistentVolumeClaim represents a reference to a PersistentVolumeClaim in the same namespace.
  294. ## The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod.
  295. ## Every claim in this list must have at least one matching (by name) volumeMount in one container in the template.
  296. ## A claim in this list takes precedence over any volumes in the template, with the same name.
  297. persistentVolumeClaim:
  298. enabled: false
  299. accessModes:
  300. - "ReadWriteOnce"
  301. storageClassName: "-"
  302. storage: "20Gi"
  303. env:
  304. JAVA_OPTS: "-Xms1g -Xmx1g -Xmn512m"
  305. MASTER_EXEC_THREADS: "100"
  306. MASTER_EXEC_TASK_NUM: "20"
  307. MASTER_DISPATCH_TASK_NUM: "3"
  308. MASTER_HOST_SELECTOR: "LowerWeight"
  309. MASTER_HEARTBEAT_INTERVAL: "10s"
  310. MASTER_HEARTBEAT_ERROR_THRESHOLD: "5"
  311. MASTER_TASK_COMMIT_RETRYTIMES: "5"
  312. MASTER_TASK_COMMIT_INTERVAL: "1s"
  313. MASTER_STATE_WHEEL_INTERVAL: "5s"
  314. MASTER_MAX_CPU_LOAD_AVG: "1"
  315. MASTER_RESERVED_MEMORY: "0.3"
  316. MASTER_FAILOVER_INTERVAL: "10m"
  317. MASTER_KILL_APPLICATION_WHEN_HANDLE_FAILOVER: "true"
  318. service:
  319. # annotations may need to be set when want to scrapy metrics by prometheus but not install prometheus operator
  320. annotations: {}
  321. # serviceMonitor for prometheus operator
  322. serviceMonitor:
  323. # -- Enable or disable master serviceMonitor
  324. enabled: false
  325. # -- @param serviceMonitor.interval interval at which metrics should be scraped
  326. interval: 15s
  327. # -- @param serviceMonitor.path path of the metrics endpoint
  328. path: /actuator/prometheus
  329. # -- @param serviceMonitor.labels ServiceMonitor extra labels
  330. labels: {}
  331. # -- @param serviceMonitor.annotations ServiceMonitor annotations
  332. annotations: {}
  333. worker:
  334. ## PodManagementPolicy controls how pods are created during initial scale up, when replacing pods on nodes, or when scaling down.
  335. podManagementPolicy: "Parallel"
  336. ## Replicas is the desired number of replicas of the given Template.
  337. replicas: "3"
  338. ## You can use annotations to attach arbitrary non-identifying metadata to objects.
  339. ## Clients such as tools and libraries can retrieve this metadata.
  340. annotations: {}
  341. ## Affinity is a group of affinity scheduling rules. If specified, the pod's scheduling constraints.
  342. ## More info: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.17/#affinity-v1-core
  343. affinity: {}
  344. ## NodeSelector is a selector which must be true for the pod to fit on a node.
  345. ## Selector which must match a node's labels for the pod to be scheduled on that node.
  346. ## More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
  347. nodeSelector: {}
  348. ## Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission,
  349. ## effectively unioning the set of nodes tolerated by the pod and the RuntimeClass.
  350. tolerations: []
  351. ## Compute Resources required by this container. Cannot be updated.
  352. ## More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container
  353. resources: {}
  354. # resources:
  355. # limits:
  356. # memory: "8Gi"
  357. # cpu: "4"
  358. # requests:
  359. # memory: "2Gi"
  360. # cpu: "500m"
  361. ## Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated.
  362. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
  363. livenessProbe:
  364. enabled: true
  365. initialDelaySeconds: "30"
  366. periodSeconds: "30"
  367. timeoutSeconds: "5"
  368. failureThreshold: "3"
  369. successThreshold: "1"
  370. ## Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated.
  371. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
  372. readinessProbe:
  373. enabled: true
  374. initialDelaySeconds: "30"
  375. periodSeconds: "30"
  376. timeoutSeconds: "5"
  377. failureThreshold: "3"
  378. successThreshold: "1"
  379. ## PersistentVolumeClaim represents a reference to a PersistentVolumeClaim in the same namespace.
  380. ## The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod.
  381. ## Every claim in this list must have at least one matching (by name) volumeMount in one container in the template.
  382. ## A claim in this list takes precedence over any volumes in the template, with the same name.
  383. persistentVolumeClaim:
  384. enabled: false
  385. ## dolphinscheduler data volume
  386. dataPersistentVolume:
  387. enabled: false
  388. accessModes:
  389. - "ReadWriteOnce"
  390. storageClassName: "-"
  391. storage: "20Gi"
  392. ## dolphinscheduler logs volume
  393. logsPersistentVolume:
  394. enabled: false
  395. accessModes:
  396. - "ReadWriteOnce"
  397. storageClassName: "-"
  398. storage: "20Gi"
  399. env:
  400. WORKER_MAX_CPU_LOAD_AVG: "1"
  401. WORKER_RESERVED_MEMORY: "0.3"
  402. WORKER_EXEC_THREADS: "100"
  403. WORKER_HEARTBEAT_INTERVAL: "10s"
  404. WORKER_HEART_ERROR_THRESHOLD: "5"
  405. WORKER_HOST_WEIGHT: "100"
  406. keda:
  407. enabled: false
  408. namespaceLabels: { }
  409. # How often KEDA polls the DolphinScheduler DB to report new scale requests to the HPA
  410. pollingInterval: 5
  411. # How many seconds KEDA will wait before scaling to zero.
  412. # Note that HPA has a separate cooldown period for scale-downs
  413. cooldownPeriod: 30
  414. # Minimum number of workers created by keda
  415. minReplicaCount: 0
  416. # Maximum number of workers created by keda
  417. maxReplicaCount: 3
  418. # Specify HPA related options
  419. advanced: { }
  420. # horizontalPodAutoscalerConfig:
  421. # behavior:
  422. # scaleDown:
  423. # stabilizationWindowSeconds: 300
  424. # policies:
  425. # - type: Percent
  426. # value: 100
  427. # periodSeconds: 15
  428. service:
  429. # annotations may need to be set when want to scrapy metrics by prometheus but not install prometheus operator
  430. annotations: {}
  431. # serviceMonitor for prometheus operator
  432. serviceMonitor:
  433. # -- Enable or disable worker serviceMonitor
  434. enabled: false
  435. # -- @param serviceMonitor.interval interval at which metrics should be scraped
  436. interval: 15s
  437. # -- @param serviceMonitor.path path of the metrics endpoint
  438. path: /actuator/prometheus
  439. # -- @param serviceMonitor.labels ServiceMonitor extra labels
  440. labels: {}
  441. # -- @param serviceMonitor.annotations ServiceMonitor annotations
  442. annotations: {}
  443. alert:
  444. ## Number of desired pods. This is a pointer to distinguish between explicit zero and not specified. Defaults to 1.
  445. replicas: 1
  446. ## The deployment strategy to use to replace existing pods with new ones.
  447. strategy:
  448. type: "RollingUpdate"
  449. rollingUpdate:
  450. maxSurge: "25%"
  451. maxUnavailable: "25%"
  452. ## You can use annotations to attach arbitrary non-identifying metadata to objects.
  453. ## Clients such as tools and libraries can retrieve this metadata.
  454. annotations: {}
  455. ## Affinity is a group of affinity scheduling rules. If specified, the pod's scheduling constraints.
  456. ## More info: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.17/#affinity-v1-core
  457. affinity: {}
  458. ## NodeSelector is a selector which must be true for the pod to fit on a node.
  459. ## Selector which must match a node's labels for the pod to be scheduled on that node.
  460. ## More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
  461. nodeSelector: {}
  462. ## Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission,
  463. ## effectively unioning the set of nodes tolerated by the pod and the RuntimeClass.
  464. tolerations: []
  465. ## Compute Resources required by this container. Cannot be updated.
  466. ## More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container
  467. resources: {}
  468. # resources:
  469. # limits:
  470. # memory: "2Gi"
  471. # cpu: "1"
  472. # requests:
  473. # memory: "1Gi"
  474. # cpu: "500m"
  475. ## Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated.
  476. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
  477. livenessProbe:
  478. enabled: true
  479. initialDelaySeconds: "30"
  480. periodSeconds: "30"
  481. timeoutSeconds: "5"
  482. failureThreshold: "3"
  483. successThreshold: "1"
  484. ## Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated.
  485. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
  486. readinessProbe:
  487. enabled: true
  488. initialDelaySeconds: "30"
  489. periodSeconds: "30"
  490. timeoutSeconds: "5"
  491. failureThreshold: "3"
  492. successThreshold: "1"
  493. ## PersistentVolumeClaim represents a reference to a PersistentVolumeClaim in the same namespace.
  494. ## More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
  495. persistentVolumeClaim:
  496. enabled: false
  497. accessModes:
  498. - "ReadWriteOnce"
  499. storageClassName: "-"
  500. storage: "20Gi"
  501. env:
  502. JAVA_OPTS: "-Xms512m -Xmx512m -Xmn256m"
  503. service:
  504. # annotations may need to be set when want to scrapy metrics by prometheus but not install prometheus operator
  505. annotations: {}
  506. # serviceMonitor for prometheus operator
  507. serviceMonitor:
  508. # -- Enable or disable alert-server serviceMonitor
  509. enabled: false
  510. # -- @param serviceMonitor.interval interval at which metrics should be scraped
  511. interval: 15s
  512. # -- @param serviceMonitor.path path of the metrics endpoint
  513. path: /actuator/prometheus
  514. # -- @param serviceMonitor.labels ServiceMonitor extra labels
  515. labels: {}
  516. # -- @param serviceMonitor.annotations ServiceMonitor annotations
  517. annotations: {}
  518. api:
  519. ## Number of desired pods. This is a pointer to distinguish between explicit zero and not specified. Defaults to 1.
  520. replicas: "1"
  521. ## The deployment strategy to use to replace existing pods with new ones.
  522. strategy:
  523. type: "RollingUpdate"
  524. rollingUpdate:
  525. maxSurge: "25%"
  526. maxUnavailable: "25%"
  527. ## You can use annotations to attach arbitrary non-identifying metadata to objects.
  528. ## Clients such as tools and libraries can retrieve this metadata.
  529. annotations: {}
  530. ## Affinity is a group of affinity scheduling rules. If specified, the pod's scheduling constraints.
  531. ## More info: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.17/#affinity-v1-core
  532. affinity: {}
  533. ## NodeSelector is a selector which must be true for the pod to fit on a node.
  534. ## Selector which must match a node's labels for the pod to be scheduled on that node.
  535. ## More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
  536. nodeSelector: {}
  537. ## Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission,
  538. ## effectively unioning the set of nodes tolerated by the pod and the RuntimeClass.
  539. tolerations: []
  540. ## Compute Resources required by this container. Cannot be updated.
  541. ## More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container
  542. resources: {}
  543. # resources:
  544. # limits:
  545. # memory: "2Gi"
  546. # cpu: "1"
  547. # requests:
  548. # memory: "1Gi"
  549. # cpu: "500m"
  550. ## Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated.
  551. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
  552. livenessProbe:
  553. enabled: true
  554. initialDelaySeconds: "30"
  555. periodSeconds: "30"
  556. timeoutSeconds: "5"
  557. failureThreshold: "3"
  558. successThreshold: "1"
  559. ## Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated.
  560. ## More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
  561. readinessProbe:
  562. enabled: true
  563. initialDelaySeconds: "30"
  564. periodSeconds: "30"
  565. timeoutSeconds: "5"
  566. failureThreshold: "3"
  567. successThreshold: "1"
  568. ## PersistentVolumeClaim represents a reference to a PersistentVolumeClaim in the same namespace.
  569. ## More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
  570. persistentVolumeClaim:
  571. enabled: false
  572. accessModes:
  573. - "ReadWriteOnce"
  574. storageClassName: "-"
  575. storage: "20Gi"
  576. service:
  577. ## type determines how the Service is exposed. Defaults to ClusterIP. Valid options are ExternalName, ClusterIP, NodePort, and LoadBalancer
  578. type: "ClusterIP"
  579. ## clusterIP is the IP address of the service and is usually assigned randomly by the master
  580. clusterIP: ""
  581. ## nodePort is the port on each node on which this api service is exposed when type=NodePort
  582. nodePort: ""
  583. ## pythonNodePort is the port on each node on which this python api service is exposed when type=NodePort
  584. pythonNodePort: ""
  585. ## externalIPs is a list of IP addresses for which nodes in the cluster will also accept traffic for this service
  586. externalIPs: []
  587. ## externalName is the external reference that kubedns or equivalent will return as a CNAME record for this service, requires Type to be ExternalName
  588. externalName: ""
  589. ## loadBalancerIP when service.type is LoadBalancer. LoadBalancer will get created with the IP specified in this field
  590. loadBalancerIP: ""
  591. ## annotations may need to be set when service.type is LoadBalancer
  592. ## service.beta.kubernetes.io/aws-load-balancer-ssl-cert: arn:aws:acm:us-east-1:EXAMPLE_CERT
  593. annotations: {}
  594. # serviceMonitor for prometheus operator
  595. serviceMonitor:
  596. # -- Enable or disable api-server serviceMonitor
  597. enabled: false
  598. # -- @param serviceMonitor.interval interval at which metrics should be scraped
  599. interval: 15s
  600. # -- @param serviceMonitor.path path of the metrics endpoint
  601. path: /dolphinscheduler/actuator/prometheus
  602. # -- @param serviceMonitor.labels ServiceMonitor extra labels
  603. labels: {}
  604. # -- @param serviceMonitor.annotations ServiceMonitor annotations
  605. annotations: {}
  606. env:
  607. JAVA_OPTS: "-Xms512m -Xmx512m -Xmn256m"
  608. ingress:
  609. enabled: false
  610. host: "dolphinscheduler.org"
  611. path: "/dolphinscheduler"
  612. annotations: {}
  613. tls:
  614. enabled: false
  615. secretName: "dolphinscheduler-tls"