| # 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: v1 |
| 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 |
| kind: ConfigMap |
| metadata: |
| labels: |
| app.kubernetes.io/component: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/managed-by: Helm |
| app.kubernetes.io/name: zookeeper |
| helm.sh/chart: zookeeper-11.1.6 |
| name: zookeeper-scripts |
| namespace: dubbo-system |
| |
| --- |
| apiVersion: apps/v1 |
| kind: StatefulSet |
| metadata: |
| labels: |
| app.kubernetes.io/component: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/managed-by: Helm |
| app.kubernetes.io/name: zookeeper |
| helm.sh/chart: zookeeper-11.1.6 |
| role: zookeeper |
| name: zookeeper |
| namespace: dubbo-system |
| spec: |
| podManagementPolicy: Parallel |
| replicas: 1 |
| selector: |
| matchLabels: |
| app.kubernetes.io/component: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/name: zookeeper |
| serviceName: zookeeper-headless |
| template: |
| metadata: |
| annotations: null |
| labels: |
| app.kubernetes.io/component: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/managed-by: Helm |
| app.kubernetes.io/name: zookeeper |
| helm.sh/chart: zookeeper-11.1.6 |
| spec: |
| affinity: |
| nodeAffinity: null |
| podAffinity: null |
| podAntiAffinity: |
| preferredDuringSchedulingIgnoredDuringExecution: |
| - podAffinityTerm: |
| labelSelector: |
| matchLabels: |
| app.kubernetes.io/component: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/name: zookeeper |
| topologyKey: kubernetes.io/hostname |
| weight: 1 |
| containers: |
| - command: |
| - /scripts/setup.sh |
| 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.dubbo-system.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 |
| image: docker.io/bitnami/zookeeper:3.8.1-debian-11-r18 |
| imagePullPolicy: IfNotPresent |
| livenessProbe: |
| exec: |
| command: |
| - /bin/bash |
| - -c |
| - echo "ruok" | timeout 2 nc -w 2 localhost 2181 | grep imok |
| failureThreshold: 6 |
| initialDelaySeconds: 30 |
| periodSeconds: 10 |
| successThreshold: 1 |
| timeoutSeconds: 5 |
| name: zookeeper |
| ports: |
| - containerPort: 2181 |
| name: client |
| - containerPort: 2888 |
| name: follower |
| - containerPort: 3888 |
| name: election |
| readinessProbe: |
| exec: |
| command: |
| - /bin/bash |
| - -c |
| - echo "ruok" | timeout 2 nc -w 2 localhost 2181 | grep imok |
| failureThreshold: 6 |
| initialDelaySeconds: 5 |
| periodSeconds: 10 |
| successThreshold: 1 |
| timeoutSeconds: 5 |
| resources: |
| limits: {} |
| requests: |
| cpu: 250m |
| memory: 256Mi |
| securityContext: |
| allowPrivilegeEscalation: false |
| runAsNonRoot: true |
| runAsUser: 1001 |
| volumeMounts: |
| - mountPath: /scripts/setup.sh |
| name: scripts |
| subPath: setup.sh |
| - mountPath: /bitnami/zookeeper |
| name: data |
| initContainers: null |
| securityContext: |
| fsGroup: 1001 |
| serviceAccountName: default |
| volumes: |
| - configMap: |
| defaultMode: 493 |
| name: zookeeper-scripts |
| name: scripts |
| - emptyDir: {} |
| name: data |
| updateStrategy: |
| rollingUpdate: {} |
| type: RollingUpdate |
| |
| --- |
| apiVersion: v1 |
| kind: Service |
| metadata: |
| labels: |
| app.kubernetes.io/component: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/managed-by: Helm |
| app.kubernetes.io/name: zookeeper |
| helm.sh/chart: zookeeper-11.1.6 |
| name: zookeeper-headless |
| namespace: dubbo-system |
| spec: |
| clusterIP: None |
| ports: |
| - name: tcp-client |
| port: 2181 |
| targetPort: client |
| - name: tcp-follower |
| port: 2888 |
| targetPort: follower |
| - name: tcp-election |
| port: 3888 |
| targetPort: election |
| publishNotReadyAddresses: true |
| selector: |
| app.kubernetes.io/component: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/name: zookeeper |
| type: ClusterIP |
| |
| --- |
| apiVersion: v1 |
| kind: Service |
| metadata: |
| labels: |
| app.kubernetes.io/component: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/managed-by: Helm |
| app.kubernetes.io/name: zookeeper |
| helm.sh/chart: zookeeper-11.1.6 |
| name: zookeeper |
| namespace: dubbo-system |
| spec: |
| ports: |
| - name: tcp-client |
| nodePort: null |
| port: 2181 |
| targetPort: client |
| - name: tcp-follower |
| port: 2888 |
| targetPort: follower |
| - name: tcp-election |
| port: 3888 |
| targetPort: election |
| selector: |
| app.kubernetes.io/component: zookeeper |
| app.kubernetes.io/instance: zookeeper |
| app.kubernetes.io/name: zookeeper |
| sessionAffinity: None |
| type: ClusterIP |
| |
| --- |