-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathKubernetesLocalExecutor.yaml
133 lines (125 loc) · 2.61 KB
/
KubernetesLocalExecutor.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
apiVersion: v1
kind: Namespace
metadata:
name: airflow
---
apiVersion: v1
kind: Service
metadata:
name: mysql
namespace: airflow
spec:
type: NodePort
ports:
- name: mysql
port: 3306
targetPort: 3306
protocol: TCP
selector:
app: mysql
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: mysql
namespace: airflow
spec:
serviceName: "mysql"
replicas: 1
selector:
matchLabels:
app: mysql
template:
metadata:
labels:
app: mysql
spec:
containers:
- name: mysql
image: email2liyang/mysql-for-airflow:5.7.24
volumeMounts:
- name: datadir
mountPath: /var/lib/mysql
env:
- name: MYSQL_ROOT_PASSWORD
value: airflow
- name: MYSQL_USER
value: airflow
- name: MYSQL_PASSWORD
value: airflow
- name: MYSQL_DATABASE
value: airflow
ports:
- containerPort: 3306
# No pre-stop hook is required, a SIGTERM plus some time is all that's
# needed for graceful shutdown of a node.
terminationGracePeriodSeconds: 60
volumeClaimTemplates:
- metadata:
name: datadir
spec:
accessModes:
- "ReadWriteOnce"
resources:
requests:
storage: 1Gi
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: airflow-local-executor
namespace: airflow
spec:
selector:
matchLabels:
app: airflow-local-executor
template:
metadata:
labels:
name: airflow-local-executor
app: airflow-local-executor
spec:
containers:
- name: airflow-local-executor-webserver
image: docker.io/email2liyang/docker-airflow:1.10.2
imagePullPolicy: Always
env:
- name: LOAD_EX
value: "n"
- name: EXECUTOR
value: Local
- name: AIRFLOW_MYSQL_DB_HOST
value: mysql
- name: AIRFLOW_MYSQL_DB_PORT
value: "3306"
readinessProbe:
httpGet:
path: /admin/
port: 8080
initialDelaySeconds: 8
timeoutSeconds: 10
livenessProbe:
httpGet:
path: /admin/
port: 8080
initialDelaySeconds: 8
timeoutSeconds: 10
ports:
- name: webserver
containerPort: 8080
command: ["/entrypoint.sh"]
args: ["webserver"]
---
apiVersion: v1
kind: Service
metadata:
name: airflow-local-executor
namespace: airflow
spec:
type: NodePort
ports:
- name: webserver
port: 8080
targetPort: webserver
selector:
app: airflow-local-executor