apiVersion: apps/v1
kind: StatefulSet
metadata:
#   name: zk
  labels:
    app.kubernetes.io/managed-by: test-infra
spec:
  # serviceName: zk-svc
  replicas: 1
  updateStrategy:
    type: RollingUpdate
  podManagementPolicy: OrderedReady
  template:
    spec:
      containers:
      - name: zk
        imagePullPolicy: IfNotPresent
        image: "k8s.gcr.io/kubernetes-zookeeper:1.0-3.4.10"
        resources:
          requests:
            memory: "1Gi"
            cpu: "0.5"
          limits: 
            memory: "10Gi"
            cpu: "2"
        ports:
        - containerPort: 2181
          name: client
        - containerPort: 2888
          name: server
        - containerPort: 3888
          name: leader-election
        command:
        - sh
        - -c
        - "start-zookeeper \
          --servers=$SERVER_NUM"
        env:
          - name: SERVER_NUM
            value : "1"
        readinessProbe:
          exec:
            command:
            - sh
            - -c
            - "zookeeper-ready 2181"
          initialDelaySeconds: 10
          timeoutSeconds: 5
        livenessProbe:
          exec:
            command:
            - sh
            - -c
            - "zookeeper-ready 2181"
          initialDelaySeconds: 10
          timeoutSeconds: 5
        volumeMounts:
        - name: data-zk
          mountPath: /var/lib/zookeeper
  volumeClaimTemplates:
  - metadata:
      name: data-zk
    spec:
      accessModes: [ "ReadWriteOnce" ]
      resources:
        requests:
          storage: 10Gi
