diff --git a/zookeeper.yaml b/zookeeper.yaml new file mode 100644 index 0000000..19b920e --- /dev/null +++ b/zookeeper.yaml @@ -0,0 +1,263 @@ +--- +apiVersion: apps/v1 +kind: StatefulSet +metadata: + annotations: + meta.helm.sh/release-name: hbase + meta.helm.sh/release-namespace: hbase + labels: + app.kubernetes.io/component: zookeeper + app.kubernetes.io/instance: hbase + app.kubernetes.io/managed-by: Helm + app.kubernetes.io/name: zookeeper + helm.sh/chart: zookeeper-10.0.2 + role: zookeeper + name: hbase-zookeeper + namespace: hbase + resourceVersion: '36784810' +spec: + persistentVolumeClaimRetentionPolicy: + whenDeleted: Retain + whenScaled: Retain + podManagementPolicy: Parallel + replicas: 3 + revisionHistoryLimit: 10 + selector: + matchLabels: + app.kubernetes.io/component: zookeeper + app.kubernetes.io/instance: hbase + app.kubernetes.io/name: zookeeper + serviceName: hbase-zookeeper-headless + template: + metadata: + creationTimestamp: null + labels: + app.kubernetes.io/component: zookeeper + app.kubernetes.io/instance: hbase + app.kubernetes.io/managed-by: Helm + app.kubernetes.io/name: zookeeper + helm.sh/chart: zookeeper-10.0.2 + spec: + affinity: + podAntiAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - podAffinityTerm: + labelSelector: + matchLabels: + app.kubernetes.io/component: zookeeper + app.kubernetes.io/instance: hbase + app.kubernetes.io/name: zookeeper + namespaces: + - hbase + topologyKey: kubernetes.io/hostname + weight: 1 + containers: + - command: + - /scripts/setup.sh + env: + - name: BITNAMI_DEBUG + value: 'false' + - name: ZOO_DATA_LOG_DIR + - 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: '1000' + - 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: >- + hbase-zookeeper-0.hbase-zookeeper-headless.hbase.svc.cluster.local:2888:3888::1 + hbase-zookeeper-1.hbase-zookeeper-headless.hbase.svc.cluster.local:2888:3888::2 + hbase-zookeeper-2.hbase-zookeeper-headless.hbase.svc.cluster.local:2888:3888::3 + - 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.0-debian-11-r11' + 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 + protocol: TCP + - containerPort: 2888 + name: follower + protocol: TCP + - containerPort: 3888 + name: election + protocol: TCP + 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: + requests: + cpu: 250m + memory: 256Mi + securityContext: + runAsNonRoot: true + runAsUser: 1001 + terminationMessagePath: /dev/termination-log + terminationMessagePolicy: File + volumeMounts: + - mountPath: /scripts/setup.sh + name: scripts + subPath: setup.sh + - mountPath: /bitnami/zookeeper + name: data + dnsPolicy: ClusterFirst + restartPolicy: Always + schedulerName: default-scheduler + securityContext: + fsGroup: 1001 + serviceAccount: default + serviceAccountName: default + terminationGracePeriodSeconds: 30 + volumes: + - configMap: + defaultMode: 493 + name: hbase-zookeeper-scripts + name: scripts + - emptyDir: {} + name: data + updateStrategy: + rollingUpdate: + partition: 0 + type: RollingUpdate + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + meta.helm.sh/release-name: hbase + meta.helm.sh/release-namespace: hbase + labels: + app.kubernetes.io/component: zookeeper + app.kubernetes.io/instance: hbase + app.kubernetes.io/managed-by: Helm + app.kubernetes.io/name: zookeeper + helm.sh/chart: zookeeper-10.0.2 + name: hbase-zookeeper-headless + namespace: hbase + resourceVersion: '36780934' +spec: + clusterIP: None + clusterIPs: + - None + internalTrafficPolicy: Cluster + ipFamilies: + - IPv4 + ipFamilyPolicy: SingleStack + ports: + - name: tcp-client + port: 2181 + protocol: TCP + targetPort: client + - name: tcp-follower + port: 2888 + protocol: TCP + targetPort: follower + - name: tcp-election + port: 3888 + protocol: TCP + targetPort: election + publishNotReadyAddresses: true + selector: + app.kubernetes.io/component: zookeeper + app.kubernetes.io/instance: hbase + app.kubernetes.io/name: zookeeper + sessionAffinity: None + type: ClusterIP + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + meta.helm.sh/release-name: hbase + meta.helm.sh/release-namespace: hbase + labels: + app.kubernetes.io/component: zookeeper + app.kubernetes.io/instance: hbase + app.kubernetes.io/managed-by: Helm + app.kubernetes.io/name: zookeeper + helm.sh/chart: zookeeper-10.0.2 + name: hbase-zookeeper + namespace: hbase + resourceVersion: '36780978' +spec: + clusterIP: 10.104.147.183 + clusterIPs: + - 10.104.147.183 + internalTrafficPolicy: Cluster + ipFamilies: + - IPv4 + ipFamilyPolicy: SingleStack + ports: + - name: tcp-client + port: 2181 + protocol: TCP + targetPort: client + - name: tcp-follower + port: 2888 + protocol: TCP + targetPort: follower + - name: tcp-election + port: 3888 + protocol: TCP + targetPort: election + selector: + app.kubernetes.io/component: zookeeper + app.kubernetes.io/instance: hbase + app.kubernetes.io/name: zookeeper + sessionAffinity: None + type: ClusterIP +