You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dolphinscheduler.apache.org by ke...@apache.org on 2021/12/12 15:17:55 UTC

[dolphinscheduler] branch dev updated: Adjust Helm Chart templates in dev branch (#7353)

This is an automated email from the ASF dual-hosted git repository.

kezhenxu94 pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git


The following commit(s) were added to refs/heads/dev by this push:
     new 12b46df  Adjust Helm Chart templates in dev branch (#7353)
12b46df is described below

commit 12b46dfaa62f8f6c51ea739e0d31ca934c811994
Author: kezhenxu94 <ke...@apache.org>
AuthorDate: Sun Dec 12 23:17:50 2021 +0800

    Adjust Helm Chart templates in dev branch (#7353)
---
 .../dolphinscheduler/templates/_helpers.tpl        | 72 +++++++++++-----------
 .../configmap-dolphinscheduler-alert.yaml          | 29 ---------
 .../templates/configmap-dolphinscheduler-api.yaml  | 29 ---------
 .../configmap-dolphinscheduler-master.yaml         | 29 ---------
 .../configmap-dolphinscheduler-worker.yaml         | 29 ---------
 .../deployment-dolphinscheduler-alert.yaml         | 18 +++---
 .../templates/deployment-dolphinscheduler-api.yaml | 16 ++---
 .../job-dolphinscheduler-schema-initializer.yaml   | 50 +++++++++++++++
 .../statefulset-dolphinscheduler-master.yaml       | 16 ++---
 .../statefulset-dolphinscheduler-worker.yaml       | 18 +++---
 .../templates/svc-dolphinscheduler-alert.yaml      |  6 +-
 deploy/kubernetes/dolphinscheduler/values.yaml     | 56 ++++++++---------
 dolphinscheduler-meter/pom.xml                     | 14 +++++
 13 files changed, 165 insertions(+), 217 deletions(-)

diff --git a/deploy/kubernetes/dolphinscheduler/templates/_helpers.tpl b/deploy/kubernetes/dolphinscheduler/templates/_helpers.tpl
index 5ef83a7..c2684e0 100644
--- a/deploy/kubernetes/dolphinscheduler/templates/_helpers.tpl
+++ b/deploy/kubernetes/dolphinscheduler/templates/_helpers.tpl
@@ -27,10 +27,22 @@ If release name contains chart name it will be used as a full name.
 {{- end -}}
 
 {{/*
-Create a default docker image fullname.
+Create default docker images' fullname.
 */}}
-{{- define "dolphinscheduler.image.fullname" -}}
-{{- .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion -}}
+{{- define "dolphinscheduler.image.fullname.master" -}}
+{{- .Values.image.registry }}/dolphinscheduler-master:{{ .Values.image.tag | default .Chart.AppVersion -}}
+{{- end -}}
+{{- define "dolphinscheduler.image.fullname.worker" -}}
+{{- .Values.image.registry }}/dolphinscheduler-worker:{{ .Values.image.tag | default .Chart.AppVersion -}}
+{{- end -}}
+{{- define "dolphinscheduler.image.fullname.api" -}}
+{{- .Values.image.registry }}/dolphinscheduler-api:{{ .Values.image.tag | default .Chart.AppVersion -}}
+{{- end -}}
+{{- define "dolphinscheduler.image.fullname.alert" -}}
+{{- .Values.image.registry }}/dolphinscheduler-alert-server:{{ .Values.image.tag | default .Chart.AppVersion -}}
+{{- end -}}
+{{- define "dolphinscheduler.image.fullname.tools" -}}
+{{- .Values.image.registry }}/dolphinscheduler-tools:{{ .Values.image.tag | default .Chart.AppVersion -}}
 {{- end -}}
 
 {{/*
@@ -108,37 +120,25 @@ Create a default fully qualified zookkeeper quorum.
 Create a database environment variables.
 */}}
 {{- define "dolphinscheduler.database.env_vars" -}}
-- name: DATABASE_TYPE
+- name: DATABASE
   {{- if .Values.postgresql.enabled }}
   value: "postgresql"
   {{- else }}
   value: {{ .Values.externalDatabase.type | quote }}
   {{- end }}
-- name: DATABASE_DRIVER
-  {{- if .Values.postgresql.enabled }}
-  value: "org.postgresql.Driver"
-  {{- else }}
-  value: {{ .Values.externalDatabase.driver | quote }}
-  {{- end }}
-- name: DATABASE_HOST
-  {{- if .Values.postgresql.enabled }}
-  value: {{ template "dolphinscheduler.postgresql.fullname" . }}
-  {{- else }}
-  value: {{ .Values.externalDatabase.host | quote }}
-  {{- end }}
-- name: DATABASE_PORT
+- name: SPRING_DATASOURCE_URL
   {{- if .Values.postgresql.enabled }}
-  value: "5432"
+  value: jdbc:postgresql://{{ template "dolphinscheduler.postgresql.fullname" . }}:5432/{{ .Values.postgresql.postgresqlDatabase }}?characterEncoding=utf8
   {{- else }}
-  value: {{ .Values.externalDatabase.port | quote }}
+  value: jdbc:{{ .Values.externalDatabase.type }}://{{ .Values.externalDatabase.host }}:{{ .Values.externalDatabase.port }}/{{ .Values.externalDatabase.database }}?{{ .Values.externalDatabase.params }}
   {{- end }}
-- name: DATABASE_USERNAME
+- name: SPRING_DATASOURCE_USERNAME
   {{- if .Values.postgresql.enabled }}
   value: {{ .Values.postgresql.postgresqlUsername }}
   {{- else }}
   value: {{ .Values.externalDatabase.username | quote }}
   {{- end }}
-- name: DATABASE_PASSWORD
+- name: SPRING_DATASOURCE_PASSWORD
   valueFrom:
     secretKeyRef:
       {{- if .Values.postgresql.enabled }}
@@ -148,31 +148,33 @@ Create a database environment variables.
       name: {{ include "dolphinscheduler.fullname" . }}-externaldb
       key: database-password
       {{- end }}
-- name: DATABASE_DATABASE
-  {{- if .Values.postgresql.enabled }}
-  value: {{ .Values.postgresql.postgresqlDatabase }}
-  {{- else }}
-  value: {{ .Values.externalDatabase.database | quote }}
-  {{- end }}
-- name: DATABASE_PARAMS
-  {{- if .Values.postgresql.enabled }}
-  value: "characterEncoding=utf8"
-  {{- else }}
-  value: {{ .Values.externalDatabase.params | quote }}
-  {{- end }}
+{{- end -}}
+
+{{/*
+Wait for database to be ready.
+*/}}
+{{- define "dolphinscheduler.database.wait-for-ready" -}}
+- name: wait-for-database
+  image: busybox:1.30
+  imagePullPolicy: IfNotPresent
+{{- if .Values.postgresql.enabled }}
+  command: ['sh', '-xc', 'for i in $(seq 1 180); do nc -z -w3 {{ template "dolphinscheduler.postgresql.fullname" . }} 5432 && exit 0 || sleep 5; done; exit 1']
+{{- else }}
+  command: ['sh', '-xc', 'for i in $(seq 1 180); do nc -z -w3 {{ .Values.externalDatabase.host }} {{ .Values.externalDatabase.port }} && exit 0 || sleep 5; done; exit 1']
+{{- end }}
 {{- end -}}
 
 {{/*
 Create a registry environment variables.
 */}}
 {{- define "dolphinscheduler.registry.env_vars" -}}
-- name: REGISTRY_PLUGIN_NAME
+- name: REGISTRY_TYPE
   {{- if .Values.zookeeper.enabled }}
   value: "zookeeper"
   {{- else }}
   value: {{ .Values.externalRegistry.registryPluginName }}
   {{- end }}
-- name: REGISTRY_SERVERS
+- name: REGISTRY_ZOOKEEPER_CONNECT_STRING
   {{- if .Values.zookeeper.enabled }}
   value: {{ template "dolphinscheduler.zookeeper.quorum" . }}
   {{- else }}
diff --git a/deploy/kubernetes/dolphinscheduler/templates/configmap-dolphinscheduler-alert.yaml b/deploy/kubernetes/dolphinscheduler/templates/configmap-dolphinscheduler-alert.yaml
deleted file mode 100644
index 9ef96fb..0000000
--- a/deploy/kubernetes/dolphinscheduler/templates/configmap-dolphinscheduler-alert.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-# 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.
-#
-{{- if .Values.alert.configmap }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: {{ include "dolphinscheduler.fullname" . }}-alert
-  labels:
-    app.kubernetes.io/name: {{ include "dolphinscheduler.fullname" . }}-alert
-    {{- include "dolphinscheduler.common.labels" . | nindent 4 }}
-data:
-  {{- range $key, $value := .Values.alert.configmap }}
-  {{ $key }}: {{ $value | quote }}
-  {{- end }}
-{{- end }}
\ No newline at end of file
diff --git a/deploy/kubernetes/dolphinscheduler/templates/configmap-dolphinscheduler-api.yaml b/deploy/kubernetes/dolphinscheduler/templates/configmap-dolphinscheduler-api.yaml
deleted file mode 100644
index 70b818f..0000000
--- a/deploy/kubernetes/dolphinscheduler/templates/configmap-dolphinscheduler-api.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-# 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.
-#
-{{- if .Values.api.configmap }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: {{ include "dolphinscheduler.fullname" . }}-api
-  labels:
-    app.kubernetes.io/name: {{ include "dolphinscheduler.fullname" . }}-api
-    {{- include "dolphinscheduler.common.labels" . | nindent 4 }}
-data:
-  {{- range $key, $value := .Values.api.configmap }}
-  {{ $key }}: {{ $value | quote }}
-  {{- end }}
-{{- end }}
\ No newline at end of file
diff --git a/deploy/kubernetes/dolphinscheduler/templates/configmap-dolphinscheduler-master.yaml b/deploy/kubernetes/dolphinscheduler/templates/configmap-dolphinscheduler-master.yaml
deleted file mode 100644
index 34823f6..0000000
--- a/deploy/kubernetes/dolphinscheduler/templates/configmap-dolphinscheduler-master.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-# 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.
-#
-{{- if .Values.master.configmap }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: {{ include "dolphinscheduler.fullname" . }}-master
-  labels:
-    app.kubernetes.io/name: {{ include "dolphinscheduler.fullname" . }}-master
-    {{- include "dolphinscheduler.common.labels" . | nindent 4 }}
-data:
-  {{- range $key, $value := .Values.master.configmap }}
-  {{ $key }}: {{ $value | quote }}
-  {{- end }}
-{{- end }}
\ No newline at end of file
diff --git a/deploy/kubernetes/dolphinscheduler/templates/configmap-dolphinscheduler-worker.yaml b/deploy/kubernetes/dolphinscheduler/templates/configmap-dolphinscheduler-worker.yaml
deleted file mode 100644
index 68a292d..0000000
--- a/deploy/kubernetes/dolphinscheduler/templates/configmap-dolphinscheduler-worker.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-# 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.
-#
-{{- if .Values.worker.configmap }}
-apiVersion: v1
-kind: ConfigMap
-metadata:
-  name: {{ include "dolphinscheduler.fullname" . }}-worker
-  labels:
-    app.kubernetes.io/name: {{ include "dolphinscheduler.fullname" . }}-worker
-    {{- include "dolphinscheduler.common.labels" . | nindent 4 }}
-data:
-  {{- range $key, $value := .Values.worker.configmap }}
-  {{ $key }}: {{ $value | quote }}
-  {{- end }}
-{{- end }}
\ No newline at end of file
diff --git a/deploy/kubernetes/dolphinscheduler/templates/deployment-dolphinscheduler-alert.yaml b/deploy/kubernetes/dolphinscheduler/templates/deployment-dolphinscheduler-alert.yaml
index 70e292a..aba9e60 100644
--- a/deploy/kubernetes/dolphinscheduler/templates/deployment-dolphinscheduler-alert.yaml
+++ b/deploy/kubernetes/dolphinscheduler/templates/deployment-dolphinscheduler-alert.yaml
@@ -57,22 +57,24 @@ spec:
       {{- end }}
       containers:
         - name: {{ include "dolphinscheduler.fullname" . }}-alert
-          image: {{ include "dolphinscheduler.image.fullname" . }}
+          image: {{ include "dolphinscheduler.image.fullname.alert" . }}
           imagePullPolicy: {{ .Values.image.pullPolicy }}
-          args:
-            - "alert-server"
           ports:
             - containerPort: 50052
               name: "alert-port"
+            - containerPort: 50053
+              name: "actuator-port"
           env:
             - name: TZ
               value: {{ .Values.timezone }}
             {{- include "dolphinscheduler.database.env_vars" . | nindent 12 }}
+            {{ range $key, $value :=  .Values.alert.env }}
+            - name: {{ $key }}
+              value: {{ $value | quote }}
+            {{ end }}
           envFrom:
             - configMapRef:
                 name: {{ include "dolphinscheduler.fullname" . }}-common
-            - configMapRef:
-                name: {{ include "dolphinscheduler.fullname" . }}-alert
           {{- if .Values.alert.resources }}
           resources:
             {{- toYaml .Values.alert.resources | nindent 12 }}
@@ -80,7 +82,7 @@ spec:
           {{- if .Values.alert.livenessProbe.enabled }}
           livenessProbe:
             exec:
-              command: ["bash", "/root/checkpoint.sh", "AlertServer"]
+              command: ["curl", "-s", "http://localhost:50053/actuator/health/liveness"]
             initialDelaySeconds: {{ .Values.alert.livenessProbe.initialDelaySeconds }}
             periodSeconds: {{ .Values.alert.livenessProbe.periodSeconds }}
             timeoutSeconds: {{ .Values.alert.livenessProbe.timeoutSeconds }}
@@ -90,7 +92,7 @@ spec:
           {{- if .Values.alert.readinessProbe.enabled }}
           readinessProbe:
             exec:
-              command: ["bash", "/root/checkpoint.sh", "AlertServer"]
+              command: ["curl", "-s", "http://localhost:50053/actuator/health/readiness"]
             initialDelaySeconds: {{ .Values.alert.readinessProbe.initialDelaySeconds }}
             periodSeconds: {{ .Values.alert.readinessProbe.periodSeconds }}
             timeoutSeconds: {{ .Values.alert.readinessProbe.timeoutSeconds }}
@@ -107,4 +109,4 @@ spec:
             claimName: {{ include "dolphinscheduler.fullname" . }}-alert
           {{- else }}
           emptyDir: {}
-          {{- end }}
\ No newline at end of file
+          {{- end }}
diff --git a/deploy/kubernetes/dolphinscheduler/templates/deployment-dolphinscheduler-api.yaml b/deploy/kubernetes/dolphinscheduler/templates/deployment-dolphinscheduler-api.yaml
index b2838df..64ff6ab 100644
--- a/deploy/kubernetes/dolphinscheduler/templates/deployment-dolphinscheduler-api.yaml
+++ b/deploy/kubernetes/dolphinscheduler/templates/deployment-dolphinscheduler-api.yaml
@@ -57,10 +57,8 @@ spec:
       {{- end }}
       containers:
         - name: {{ include "dolphinscheduler.fullname" . }}-api
-          image: {{ include "dolphinscheduler.image.fullname" . }}
+          image: {{ include "dolphinscheduler.image.fullname.api" . }}
           imagePullPolicy: {{ .Values.image.pullPolicy }}
-          args:
-            - "api-server"
           ports:
             - containerPort: 12345
               name: "api-port"
@@ -70,11 +68,13 @@ spec:
             {{- include "dolphinscheduler.database.env_vars" . | nindent 12 }}
             {{- include "dolphinscheduler.registry.env_vars" . | nindent 12 }}
             {{- include "dolphinscheduler.fs_s3a.env_vars" . | nindent 12 }}
+            {{ range $key, $value :=  .Values.api.env }}
+            - name: {{ $key }}
+              value: {{ $value | quote }}
+            {{ end }}
           envFrom:
             - configMapRef:
                 name: {{ include "dolphinscheduler.fullname" . }}-common
-            - configMapRef:
-                name: {{ include "dolphinscheduler.fullname" . }}-api
           {{- if .Values.api.resources }}
           resources:
             {{- toYaml .Values.api.resources | nindent 12 }}
@@ -82,7 +82,7 @@ spec:
           {{- if .Values.api.livenessProbe.enabled }}
           livenessProbe:
             exec:
-              command: ["bash", "/root/checkpoint.sh", "ApiApplicationServer"]
+              command: ["curl", "-s", "http://localhost:12345/actuator/health/liveness"]
             initialDelaySeconds: {{ .Values.api.livenessProbe.initialDelaySeconds }}
             periodSeconds: {{ .Values.api.livenessProbe.periodSeconds }}
             timeoutSeconds: {{ .Values.api.livenessProbe.timeoutSeconds }}
@@ -92,7 +92,7 @@ spec:
           {{- if .Values.api.readinessProbe.enabled }}
           readinessProbe:
             exec:
-              command: ["bash", "/root/checkpoint.sh", "ApiApplicationServer"]
+              command: ["curl", "-s", "http://localhost:12345/actuator/health/readiness"]
             initialDelaySeconds: {{ .Values.api.readinessProbe.initialDelaySeconds }}
             periodSeconds: {{ .Values.api.readinessProbe.periodSeconds }}
             timeoutSeconds: {{ .Values.api.readinessProbe.timeoutSeconds }}
@@ -113,4 +113,4 @@ spec:
           emptyDir: {}
           {{- end }}
         {{- include "dolphinscheduler.sharedStorage.volume" . | nindent 8 }}
-        {{- include "dolphinscheduler.fsFileResource.volume" . | nindent 8 }}
\ No newline at end of file
+        {{- include "dolphinscheduler.fsFileResource.volume" . | nindent 8 }}
diff --git a/deploy/kubernetes/dolphinscheduler/templates/job-dolphinscheduler-schema-initializer.yaml b/deploy/kubernetes/dolphinscheduler/templates/job-dolphinscheduler-schema-initializer.yaml
new file mode 100644
index 0000000..4df2ebd
--- /dev/null
+++ b/deploy/kubernetes/dolphinscheduler/templates/job-dolphinscheduler-schema-initializer.yaml
@@ -0,0 +1,50 @@
+#
+# 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.
+#
+apiVersion: batch/v1
+kind: Job
+metadata:
+  name: {{ include "dolphinscheduler.fullname" . }}-db-init-job
+  labels:
+    {{- include "dolphinscheduler.common.labels" . | nindent 4 }}
+spec:
+  template:
+    metadata:
+      labels:
+        {{- include "dolphinscheduler.common.labels" . | nindent 8 }}
+    spec:
+      {{- if .Values.image.pullSecret }}
+      imagePullSecrets:
+      - name: {{ .Values.image.pullSecret }}
+      {{- end }}
+      restartPolicy: Never
+      initContainers:
+        {{- include "dolphinscheduler.database.wait-for-ready" . | nindent 6 }}
+      containers:
+        - name: {{ include "dolphinscheduler.fullname" . }}-db-init-job
+          image: {{ include "dolphinscheduler.image.fullname.tools" . }}
+          imagePullPolicy: {{ .Values.image.pullPolicy }}
+          args:
+            - bin/create-schema.sh
+          env:
+            - name: TZ
+              value: {{ .Values.timezone }}
+            {{- include "dolphinscheduler.database.env_vars" . | nindent 12 }}
+            {{- include "dolphinscheduler.registry.env_vars" . | nindent 12 }}
+            {{- include "dolphinscheduler.fs_s3a.env_vars" . | nindent 12 }}
+          envFrom:
+            - configMapRef:
+                name: {{ include "dolphinscheduler.fullname" . }}-common
diff --git a/deploy/kubernetes/dolphinscheduler/templates/statefulset-dolphinscheduler-master.yaml b/deploy/kubernetes/dolphinscheduler/templates/statefulset-dolphinscheduler-master.yaml
index 686d260..503ff23 100644
--- a/deploy/kubernetes/dolphinscheduler/templates/statefulset-dolphinscheduler-master.yaml
+++ b/deploy/kubernetes/dolphinscheduler/templates/statefulset-dolphinscheduler-master.yaml
@@ -54,10 +54,8 @@ spec:
       {{- end }}
       containers:
         - name: {{ include "dolphinscheduler.fullname" . }}-master
-          image: {{ include "dolphinscheduler.image.fullname" . }}
+          image: {{ include "dolphinscheduler.image.fullname.master" . }}
           imagePullPolicy: {{ .Values.image.pullPolicy }}
-          args:
-            - "master-server"
           ports:
             - containerPort: 5678
               name: "master-port"
@@ -67,11 +65,13 @@ spec:
             {{- include "dolphinscheduler.database.env_vars" . | nindent 12 }}
             {{- include "dolphinscheduler.registry.env_vars" . | nindent 12 }}
             {{- include "dolphinscheduler.fs_s3a.env_vars" . | nindent 12 }}
+            {{ range $key, $value :=  .Values.master.env }}
+            - name: {{ $key }}
+              value: {{ $value | quote }}
+            {{ end }}
           envFrom:
             - configMapRef:
                 name: {{ include "dolphinscheduler.fullname" . }}-common
-            - configMapRef:
-                name: {{ include "dolphinscheduler.fullname" . }}-master
           {{- if .Values.master.resources }}
           resources:
             {{- toYaml .Values.master.resources | nindent 12 }}
@@ -79,7 +79,7 @@ spec:
           {{- if .Values.master.livenessProbe.enabled }}
           livenessProbe:
             exec:
-              command: ["bash", "/root/checkpoint.sh", "MasterServer"]
+              command: ["curl", "-s", "http://localhost:5679/actuator/health/liveness"]
             initialDelaySeconds: {{ .Values.master.livenessProbe.initialDelaySeconds }}
             periodSeconds: {{ .Values.master.livenessProbe.periodSeconds }}
             timeoutSeconds: {{ .Values.master.livenessProbe.timeoutSeconds }}
@@ -89,7 +89,7 @@ spec:
           {{- if .Values.master.readinessProbe.enabled }}
           readinessProbe:
             exec:
-              command: ["bash", "/root/checkpoint.sh", "MasterServer"]
+              command: ["curl", "-s", "http://localhost:5679/actuator/health/readiness"]
             initialDelaySeconds: {{ .Values.master.readinessProbe.initialDelaySeconds }}
             periodSeconds: {{ .Values.master.readinessProbe.periodSeconds }}
             timeoutSeconds: {{ .Values.master.readinessProbe.timeoutSeconds }}
@@ -125,4 +125,4 @@ spec:
         resources:
           requests:
             storage: {{ .Values.master.persistentVolumeClaim.storage | quote }}
-  {{- end }}
\ No newline at end of file
+  {{- end }}
diff --git a/deploy/kubernetes/dolphinscheduler/templates/statefulset-dolphinscheduler-worker.yaml b/deploy/kubernetes/dolphinscheduler/templates/statefulset-dolphinscheduler-worker.yaml
index 392ae07..4432805 100644
--- a/deploy/kubernetes/dolphinscheduler/templates/statefulset-dolphinscheduler-worker.yaml
+++ b/deploy/kubernetes/dolphinscheduler/templates/statefulset-dolphinscheduler-worker.yaml
@@ -54,10 +54,8 @@ spec:
       {{- end }}
       containers:
         - name: {{ include "dolphinscheduler.fullname" . }}-worker
-          image: {{ include "dolphinscheduler.image.fullname" . }}
+          image: {{ include "dolphinscheduler.image.fullname.worker" . }}
           imagePullPolicy: {{ .Values.image.pullPolicy }}
-          args:
-            - "worker-server"
           ports:
             - containerPort: 1234
               name: "worker-port"
@@ -71,13 +69,13 @@ spec:
             {{- include "dolphinscheduler.database.env_vars" . | nindent 12 }}
             {{- include "dolphinscheduler.registry.env_vars" . | nindent 12 }}
             {{- include "dolphinscheduler.fs_s3a.env_vars" . | nindent 12 }}
+            {{ range $key, $value :=  .Values.worker.env }}
+            - name: {{ $key }}
+              value: {{ $value | quote }}
+            {{ end }}
           envFrom:
             - configMapRef:
                 name: {{ include "dolphinscheduler.fullname" . }}-common
-            - configMapRef:
-                name: {{ include "dolphinscheduler.fullname" . }}-worker
-            - configMapRef:
-                name: {{ include "dolphinscheduler.fullname" . }}-alert
           {{- if .Values.worker.resources }}
           resources:
             {{- toYaml .Values.worker.resources | nindent 12 }}
@@ -85,7 +83,7 @@ spec:
           {{- if .Values.worker.livenessProbe.enabled }}
           livenessProbe:
             exec:
-              command: ["bash", "/root/checkpoint.sh", "WorkerServer"]
+              command: ["curl", "-s", "http://localhost:1235/actuator/health/liveness"]
             initialDelaySeconds: {{ .Values.worker.livenessProbe.initialDelaySeconds }}
             periodSeconds: {{ .Values.worker.livenessProbe.periodSeconds }}
             timeoutSeconds: {{ .Values.worker.livenessProbe.timeoutSeconds }}
@@ -95,7 +93,7 @@ spec:
           {{- if .Values.worker.readinessProbe.enabled }}
           readinessProbe:
             exec:
-              command: ["bash", "/root/checkpoint.sh", "WorkerServer"]
+              command: ["curl", "-s", "http://localhost:1235/actuator/health/readiness"]
             initialDelaySeconds: {{ .Values.worker.readinessProbe.initialDelaySeconds }}
             periodSeconds: {{ .Values.worker.readinessProbe.periodSeconds }}
             timeoutSeconds: {{ .Values.worker.readinessProbe.timeoutSeconds }}
@@ -160,4 +158,4 @@ spec:
           requests:
             storage: {{ .Values.worker.persistentVolumeClaim.logsPersistentVolume.storage | quote }}
     {{- end }}
-  {{- end }}
\ No newline at end of file
+  {{- end }}
diff --git a/deploy/kubernetes/dolphinscheduler/templates/svc-dolphinscheduler-alert.yaml b/deploy/kubernetes/dolphinscheduler/templates/svc-dolphinscheduler-alert.yaml
index a24dfe6..cb4e3ab 100644
--- a/deploy/kubernetes/dolphinscheduler/templates/svc-dolphinscheduler-alert.yaml
+++ b/deploy/kubernetes/dolphinscheduler/templates/svc-dolphinscheduler-alert.yaml
@@ -27,5 +27,9 @@ spec:
       targetPort: alert-port
       protocol: TCP
       name: alert-port
+    - port: 50053
+      targetPort: actuator-port
+      protocol: TCP
+      name: actuator-port
   selector:
-    {{- include "dolphinscheduler.alert.labels" . | nindent 4 }}
\ No newline at end of file
+    {{- include "dolphinscheduler.alert.labels" . | nindent 4 }}
diff --git a/deploy/kubernetes/dolphinscheduler/values.yaml b/deploy/kubernetes/dolphinscheduler/values.yaml
index 03245c3..92d6a04 100644
--- a/deploy/kubernetes/dolphinscheduler/values.yaml
+++ b/deploy/kubernetes/dolphinscheduler/values.yaml
@@ -22,7 +22,7 @@
 timezone: "Asia/Shanghai"
 
 image:
-  repository: "dolphinscheduler.docker.scarf.sh/apache/dolphinscheduler"
+  registry: "dolphinscheduler.docker.scarf.sh/apache"
   tag: "2.0.0-SNAPSHOT"
   pullPolicy: "IfNotPresent"
   pullSecret: ""
@@ -42,7 +42,6 @@ postgresql:
 ## 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"
@@ -146,18 +145,6 @@ master:
   #   requests:
   #     memory: "2Gi"
   #     cpu: "500m"
-  ## Configmap
-  configmap:
-    MASTER_SERVER_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_CPULOAD_AVG: "-1"
-    MASTER_RESERVED_MEMORY: "0.3"
   ## 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:
@@ -186,6 +173,17 @@ master:
     - "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"
 
 worker:
   ## PodManagementPolicy controls how pods are created during initial scale up, when replacing pods on nodes, or when scaling down.
@@ -215,16 +213,6 @@ worker:
   #   requests:
   #     memory: "2Gi"
   #     cpu: "500m"
-  ## Configmap
-  configmap:
-    LOGGER_SERVER_OPTS: "-Xms512m -Xmx512m -Xmn256m"
-    WORKER_SERVER_OPTS: "-Xms1g -Xmx1g -Xmn512m"
-    WORKER_EXEC_THREADS: "100"
-    WORKER_HEARTBEAT_INTERVAL: "10"
-    WORKER_HOST_WEIGHT: "100"
-    WORKER_MAX_CPULOAD_AVG: "-1"
-    WORKER_RESERVED_MEMORY: "0.3"
-    WORKER_GROUPS: "default"
   ## 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:
@@ -263,10 +251,18 @@ worker:
       - "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"
+  replicas: 1
   ## The deployment strategy to use to replace existing pods with new ones.
   strategy:
     type: "RollingUpdate"
@@ -296,9 +292,6 @@ alert:
   #   requests:
   #     memory: "1Gi"
   #     cpu: "500m"
-  ## Configmap
-  configmap:
-    ALERT_SERVER_OPTS: "-Xms512m -Xmx512m -Xmn256m"
   ## 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:
@@ -325,6 +318,8 @@ alert:
     - "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.
@@ -358,9 +353,6 @@ api:
   #   requests:
   #     memory: "1Gi"
   #     cpu: "500m"
-  ## Configmap
-  configmap:
-    API_SERVER_OPTS: "-Xms512m -Xmx512m -Xmn256m"
   ## 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:
@@ -403,6 +395,8 @@ api:
     ## 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
diff --git a/dolphinscheduler-meter/pom.xml b/dolphinscheduler-meter/pom.xml
index 5ff8e59..442167c 100644
--- a/dolphinscheduler-meter/pom.xml
+++ b/dolphinscheduler-meter/pom.xml
@@ -57,6 +57,20 @@
         </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-jetty</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.eclipse.jetty.websocket</groupId>
+                    <artifactId>javax-websocket-server-impl</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>org.eclipse.jetty.websocket</groupId>
+                    <artifactId>websocket-server</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-actuator</artifactId>
         </dependency>
         <dependency>