forked from usdot-jpo-ode/jpo-ode
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathjpoode_zookeeper.yaml
123 lines (123 loc) · 3.17 KB
/
jpoode_zookeeper.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
---
apiVersion: v1
kind: Service
metadata:
name: {{ .Values.resources.services.zookeeper }}
labels:
app: jpoode-zookeeper
spec:
ports:
- port: 2181
name: ode-zookeeper-client
- port: 2888
name: ode-zookeeper-server
- port: 3888
name: ode-zookeeper-leader-election
clusterIP: None
selector:
app: jpoode-zookeeper
---
apiVersion: policy/v1beta1
kind: PodDisruptionBudget
metadata:
name: ode-zookeeper-pdb
spec:
selector:
matchLabels:
app: jpoode-zookeeper
maxUnavailable: 1
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: jpoode-zookeeper
spec:
selector:
matchLabels:
app: jpoode-zookeeper
serviceName: {{ .Values.resources.services.zookeeper }}
replicas: {{ .Values.replicas.jpoode_zookeeper }}
podManagementPolicy: Parallel
updateStrategy:
type: RollingUpdate
template:
metadata:
labels:
app: jpoode-zookeeper
spec:
# assign pods to nodes
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: "app"
operator: In
values:
- jpoode-zookeeper
topologyKey: "kubernetes.io/region"
containers:
- name: kubernetes-zookeeper
imagePullPolicy: Always
image: confluentinc/cp-zookeeper:6.2.0
resources:
requests:
memory: "1Gi"
cpu: "0.5"
tty: true
stdin: true
ports:
- containerPort: 2181
name: ode-zk-client
- containerPort: 2888
name: ode-zk-server
- containerPort: 3888
name: ode-zk-election
env:
- name: ZOOKEEPER_CLIENT_PORT
value: "2181"
- name: ZOOKEEPER_TICK_TIME
value: "2000"
- name : ZOOKEEPER_SYNC_LIMIT
value: "5"
- name : ZOOKEEPER_INIT_LIMIT
value: "10"
- name : ZOOKEEPER_MAX_CLIENT_CNXNS
value: "60"
- name : ZOOKEEPER_AUTOPURGE_SNAP_RETAIN_COUNT
value: "3"
- name : ZOOKEEPER_AUTOPURGE_PURGE_INTERVAL
value: "24"
- name: ZOOKEEPER_DATA_DIR
value: "/var/lib/zookeeper/data"
- name: ZOOKEEPER_DATA_LOG_DIR
value: "/var/lib/zookeeper/data/log"
- name: ZOOKEEPER_ELECTION_PORT
value: "3888"
- name: ZOOKEEPER_SERVER_PORT
value: "2888"
- name: ZOOKEEPER_HEAP
value: "512M"
- name: ZOOKEEPER_LOG_LEVEL
value: "INFO"
- name: ZOOKEEPER_CONF_DIR
value: "/opt/zookeeper/conf"
command:
- /bin/bash
- -c
- export ZOOKEEPER_SERVER_ID=$((${HOSTNAME##*-}+1)) && /etc/confluent/docker/run
volumeMounts:
- name: datadir
mountPath: /var/lib/zookeeper
securityContext:
runAsUser: 1000
fsGroup: 1000
volumeClaimTemplates:
- metadata:
name: datadir
spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 10Gi
---