@@ -52,7 +52,7 @@ template: {
5252 type : " helm "
5353 properties : {
5454 chart : " airflow "
55- version : parameter . chartVersion
55+ version : " 1.14.0 "
5656 url : context [" helm_repo_url " ]
5757 repoType : " oci "
5858 releaseName : context .name
@@ -81,12 +81,32 @@ template: {
8181 " dag_dir_list_interval " : 60
8282 }
8383 }
84+ enableBuiltInSecretEnvVars : {
85+ " AIRFLOW_CONN_AIRFLOW_DB " : false
86+ " AIRFLOW__CORE__SQL_ALCHEMY_CONN " : false
87+ " AIRFLOW__DATABASE__SQL_ALCHEMY_CONN " : false
88+ }
8489 extraEnvFrom : """
8590 - secretRef:
8691 name: '\(parameter .dependencies .mysql .mysqlSecret )'
8792 - configMapRef:
8893 name: '\(parameter .dependencies .mysql .mysqlSetting )'
8994 """
95+
96+ extraEnv : """
97+ - name: AIRFLOW__DATABASE__SQL_ALCHEMY_CONN
98+ value: "mysql://$(MYSQL_USER):$(MYSQL_PASSWORD)@$(MYSQL_HOST):$(MYSQL_PORT)/\(_databaseName )"
99+ """
100+
101+ migrateDatabaseJob : {
102+ command : [
103+ " bash " , " -c " ,
104+ ]
105+ args : [
106+ " mysql -h $MYSQL_HOST -P $MYSQL_PORT -u $MYSQL_USER -p$MYSQL_PASSWORD -e \" CREATE DATABASE IF NOT EXISTS \(_databaseName ) CHARACTER SET utf8mb4;\" && airflow db migrate " ,
107+ ]
108+ }
109+
90110 data : {
91111 metadataConnection : {
92112 protocol : " mysql "
@@ -103,6 +123,14 @@ template: {
103123 webserverSecretKey : " feab0e05d989b76acb325a8b35e596c9 "
104124 webserver : {
105125 replicas : parameter .webserver .replicas
126+ args : [
127+ " airflow " ,
128+ " webserver " ,
129+ " --workers " ,
130+ " \(parameter .webserver .workerCount ) " ,
131+ " --workerclass " ,
132+ " gevent " ,
133+ ]
106134 resources : {
107135 limits : {
108136 cpu : parameter .webserver .resources .limits .cpu
@@ -136,55 +164,7 @@ template: {
136164 failureThreshold : 20
137165 periodSeconds : 10
138166 }
139- extraInitContainers : [
140- {
141- name : " create-mysql-database "
142- image : _imageRegistry + " bitnami/mysql:8.0.22 "
143- env : [
144- {
145- name : " PASSWORD "
146- valueFrom : {
147- secretKeyRef : {
148- key : " MYSQL_PASSWORD "
149- name : " \(parameter .dependencies .mysql .mysqlSecret ) "
150- }
151- }
152- },
153- {
154- name : " USER "
155- valueFrom : {
156- secretKeyRef : {
157- key : " MYSQL_USER "
158- name : " \(parameter .dependencies .mysql .mysqlSecret ) "
159- }
160- }
161- },
162- {
163- name : " DATABASE "
164- value : _databaseName
165- },
166- {
167- name : " MYSQL_HOST "
168- valueFrom : configMapKeyRef : {
169- name : " \(parameter .dependencies .mysql .mysqlSetting ) "
170- key : " MYSQL_HOST "
171- }
172- },
173- {
174- name : " MYSQL_PORT "
175- valueFrom : configMapKeyRef : {
176- name : " \(parameter .dependencies .mysql .mysqlSetting ) "
177- key : " MYSQL_PORT "
178- }
179- },
180- ]
181- command : [
182- " sh " ,
183- " -c " ,
184- " mysql -h $MYSQL_HOST -P $MYSQL_PORT -u $USER -p$PASSWORD -e \" CREATE DATABASE IF NOT EXISTS $DATABASE CHARACTER SET utf8mb4;\" " ,
185- ]
186- },
187- ]
167+
188168 }
189169 workers : {
190170 replicas : parameter .workers .replicas
@@ -307,6 +287,11 @@ template: {
307287 // // +pattern=^([1-9]\d*)$
308288 // +err:options={"pattern":"请输入正确的副本数"}
309289 replicas : * 1 | int
290+
291+ // +minimum=1
292+ // +ui:description=worker 数量,增大可以提高webserver并发
293+ // +ui:order=3
294+ workerCount : * 1 | int
310295 }
311296 // +ui:title=Scheduler
312297 // +ui:order=4
@@ -391,10 +376,6 @@ template: {
391376 replicas : * 1 | int
392377 }
393378
394- // +ui:description=Helm Chart 版本号
395- // +ui:order=100
396- // +ui:options={"disabled":true}
397- chartVersion : string
398379 // +ui:description=镜像版本
399380 // +ui:order=101
400381 // +ui:options={"disabled":true}
0 commit comments