diff --git a/k8s/etcd-statefulset.yaml b/k8s/etcd-statefulset.yaml index 81080926..c467438b 100644 --- a/k8s/etcd-statefulset.yaml +++ b/k8s/etcd-statefulset.yaml @@ -15,6 +15,7 @@ spec: - port: 2380 name: peer clusterIP: None + publishNotReadyAddresses: true selector: app: etcd --- @@ -25,7 +26,7 @@ metadata: namespace: towerops spec: serviceName: etcd - replicas: 1 + replicas: 3 podManagementPolicy: Parallel selector: matchLabels: @@ -49,7 +50,7 @@ spec: fieldRef: fieldPath: metadata.name - name: ETCD_INITIAL_CLUSTER - value: "etcd-0=http://etcd-0.etcd.towerops.svc.cluster.local:2380" + value: "etcd-0=http://etcd-0.etcd.towerops.svc.cluster.local:2380,etcd-1=http://etcd-1.etcd.towerops.svc.cluster.local:2380,etcd-2=http://etcd-2.etcd.towerops.svc.cluster.local:2380" - name: ETCD_INITIAL_CLUSTER_STATE value: "new" - name: ETCD_INITIAL_CLUSTER_TOKEN @@ -76,22 +77,30 @@ spec: volumeMounts: - name: etcd-data mountPath: /var/run/etcd + startupProbe: + httpGet: + path: /health + port: 2379 + initialDelaySeconds: 10 + periodSeconds: 5 + timeoutSeconds: 3 + failureThreshold: 30 livenessProbe: httpGet: path: /health port: 2379 - initialDelaySeconds: 30 + initialDelaySeconds: 10 periodSeconds: 10 timeoutSeconds: 5 - failureThreshold: 5 + failureThreshold: 3 readinessProbe: httpGet: path: /health port: 2379 - initialDelaySeconds: 20 - periodSeconds: 10 - timeoutSeconds: 5 - failureThreshold: 10 + initialDelaySeconds: 10 + periodSeconds: 5 + timeoutSeconds: 3 + failureThreshold: 3 volumeClaimTemplates: - metadata: name: etcd-data