| --- |
| # Source: zookeeper/templates/scripts-configmap.yaml |
| apiVersion: v1 |
| kind: ConfigMap |
| metadata: |
| name: zookeeper-scripts |
| namespace: default |
| labels: |
| app.kubernetes.io/name: zookeeper |
| helm.sh/chart: zookeeper-11.1.6 |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/managed-by: Helm |
| app.kubernetes.io/component: zookeeper |
| data: |
| init-certs.sh: |- |
| #!/bin/bash |
| setup.sh: |- |
| #!/bin/bash |
| |
| # Execute entrypoint as usual after obtaining ZOO_SERVER_ID |
| # check ZOO_SERVER_ID in persistent volume via myid |
| # if not present, set based on POD hostname |
| if [[ -f "/bitnami/zookeeper/data/myid" ]]; then |
| export ZOO_SERVER_ID="$(cat /bitnami/zookeeper/data/myid)" |
| else |
| HOSTNAME="$(hostname -s)" |
| if [[ $HOSTNAME =~ (.*)-([0-9]+)$ ]]; then |
| ORD=${BASH_REMATCH[2]} |
| export ZOO_SERVER_ID="$((ORD + 1 ))" |
| else |
| echo "Failed to get index from hostname $HOST" |
| exit 1 |
| fi |
| fi |
| exec /entrypoint.sh /run.sh |
| --- |
| # Source: zookeeper/templates/svc-headless.yaml |
| apiVersion: v1 |
| kind: Service |
| metadata: |
| name: zookeeper-headless |
| namespace: default |
| labels: |
| app.kubernetes.io/name: zookeeper |
| helm.sh/chart: zookeeper-11.1.6 |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/managed-by: Helm |
| app.kubernetes.io/component: zookeeper |
| spec: |
| type: ClusterIP |
| clusterIP: None |
| publishNotReadyAddresses: true |
| ports: |
| - name: tcp-client |
| port: 2181 |
| targetPort: client |
| - name: tcp-follower |
| port: 2888 |
| targetPort: follower |
| - name: tcp-election |
| port: 3888 |
| targetPort: election |
| selector: |
| app.kubernetes.io/name: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/component: zookeeper |
| --- |
| # Source: zookeeper/templates/svc.yaml |
| apiVersion: v1 |
| kind: Service |
| metadata: |
| name: zookeeper |
| namespace: default |
| labels: |
| app.kubernetes.io/name: zookeeper |
| helm.sh/chart: zookeeper-11.1.6 |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/managed-by: Helm |
| app.kubernetes.io/component: zookeeper |
| spec: |
| type: ClusterIP |
| sessionAffinity: None |
| ports: |
| - name: tcp-client |
| port: 2181 |
| targetPort: client |
| nodePort: null |
| - name: tcp-follower |
| port: 2888 |
| targetPort: follower |
| - name: tcp-election |
| port: 3888 |
| targetPort: election |
| selector: |
| app.kubernetes.io/name: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/component: zookeeper |
| --- |
| # Source: zookeeper/templates/statefulset.yaml |
| apiVersion: apps/v1 |
| kind: StatefulSet |
| metadata: |
| name: zookeeper |
| namespace: default |
| labels: |
| app.kubernetes.io/name: zookeeper |
| helm.sh/chart: zookeeper-11.1.6 |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/managed-by: Helm |
| app.kubernetes.io/component: zookeeper |
| role: zookeeper |
| spec: |
| replicas: 1 |
| podManagementPolicy: Parallel |
| selector: |
| matchLabels: |
| app.kubernetes.io/name: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/component: zookeeper |
| serviceName: zookeeper-headless |
| updateStrategy: |
| rollingUpdate: {} |
| type: RollingUpdate |
| template: |
| metadata: |
| annotations: |
| labels: |
| app.kubernetes.io/name: zookeeper |
| helm.sh/chart: zookeeper-11.1.6 |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/managed-by: Helm |
| app.kubernetes.io/component: zookeeper |
| spec: |
| serviceAccountName: default |
| |
| affinity: |
| podAffinity: |
| |
| podAntiAffinity: |
| preferredDuringSchedulingIgnoredDuringExecution: |
| - podAffinityTerm: |
| labelSelector: |
| matchLabels: |
| app.kubernetes.io/name: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/component: zookeeper |
| topologyKey: kubernetes.io/hostname |
| weight: 1 |
| nodeAffinity: |
| |
| securityContext: |
| fsGroup: 1001 |
| initContainers: |
| containers: |
| - name: zookeeper |
| image: docker.io/bitnami/zookeeper:3.8.1-debian-11-r18 |
| imagePullPolicy: "IfNotPresent" |
| securityContext: |
| allowPrivilegeEscalation: false |
| runAsNonRoot: true |
| runAsUser: 1001 |
| command: |
| - /scripts/setup.sh |
| resources: |
| limits: {} |
| requests: |
| cpu: 250m |
| memory: 256Mi |
| env: |
| - name: BITNAMI_DEBUG |
| value: "false" |
| - name: ZOO_DATA_LOG_DIR |
| value: "" |
| - name: ZOO_PORT_NUMBER |
| value: "2181" |
| - name: ZOO_TICK_TIME |
| value: "2000" |
| - name: ZOO_INIT_LIMIT |
| value: "10" |
| - name: ZOO_SYNC_LIMIT |
| value: "5" |
| - name: ZOO_PRE_ALLOC_SIZE |
| value: "65536" |
| - name: ZOO_SNAPCOUNT |
| value: "100000" |
| - name: ZOO_MAX_CLIENT_CNXNS |
| value: "60" |
| - name: ZOO_4LW_COMMANDS_WHITELIST |
| value: "srvr, mntr, ruok" |
| - name: ZOO_LISTEN_ALLIPS_ENABLED |
| value: "no" |
| - name: ZOO_AUTOPURGE_INTERVAL |
| value: "0" |
| - name: ZOO_AUTOPURGE_RETAIN_COUNT |
| value: "3" |
| - name: ZOO_MAX_SESSION_TIMEOUT |
| value: "40000" |
| - name: ZOO_SERVERS |
| value: zookeeper-0.zookeeper-headless.default.svc.cluster.local:2888:3888::1 |
| - name: ZOO_ENABLE_AUTH |
| value: "no" |
| - name: ZOO_ENABLE_QUORUM_AUTH |
| value: "no" |
| - name: ZOO_HEAP_SIZE |
| value: "1024" |
| - name: ZOO_LOG_LEVEL |
| value: "ERROR" |
| - name: ALLOW_ANONYMOUS_LOGIN |
| value: "yes" |
| - name: POD_NAME |
| valueFrom: |
| fieldRef: |
| apiVersion: v1 |
| fieldPath: metadata.name |
| ports: |
| - name: client |
| containerPort: 2181 |
| - name: follower |
| containerPort: 2888 |
| - name: election |
| containerPort: 3888 |
| livenessProbe: |
| failureThreshold: 6 |
| initialDelaySeconds: 30 |
| periodSeconds: 10 |
| successThreshold: 1 |
| timeoutSeconds: 5 |
| exec: |
| command: ['/bin/bash', '-c', 'echo "ruok" | timeout 2 nc -w 2 localhost 2181 | grep imok'] |
| readinessProbe: |
| failureThreshold: 6 |
| initialDelaySeconds: 5 |
| periodSeconds: 10 |
| successThreshold: 1 |
| timeoutSeconds: 5 |
| exec: |
| command: ['/bin/bash', '-c', 'echo "ruok" | timeout 2 nc -w 2 localhost 2181 | grep imok'] |
| volumeMounts: |
| - name: scripts |
| mountPath: /scripts/setup.sh |
| subPath: setup.sh |
| - name: data |
| mountPath: /bitnami/zookeeper |
| volumes: |
| - name: scripts |
| configMap: |
| name: zookeeper-scripts |
| defaultMode: 0755 |
| - name: data |
| emptyDir: {} |