cri-o/vendor/k8s.io/kubernetes/examples/storage/vitess/etcd-controller-template.yaml
Mrunal Patel 8e5b17cf13 Switch to github.com/golang/dep for vendoring
Signed-off-by: Mrunal Patel <mrunalp@gmail.com>
2017-01-31 16:45:59 -08:00

54 lines
1.6 KiB
YAML

apiVersion: v1
kind: ReplicationController
metadata:
name: etcd-{{cell}}
spec:
replicas: {{replicas}}
template:
metadata:
labels:
component: etcd
cell: {{cell}}
app: vitess
spec:
volumes:
- name: certs
hostPath: {path: /etc/ssl/certs}
containers:
- name: etcd
image: vitess/etcd:v2.0.13-lite
volumeMounts:
- name: certs
readOnly: true
mountPath: /etc/ssl/certs
resources:
limits:
memory: "128Mi"
cpu: "100m"
command:
- bash
- "-c"
- >-
ipaddr=$(hostname -i)
global_etcd=$ETCD_GLOBAL_SERVICE_HOST:$ETCD_GLOBAL_SERVICE_PORT
cell="{{cell}}" &&
local_etcd_host_var="ETCD_${cell^^}_SERVICE_HOST" &&
local_etcd_port_var="ETCD_${cell^^}_SERVICE_PORT" &&
local_etcd=${!local_etcd_host_var}:${!local_etcd_port_var}
if [ "{{cell}}" != "global" ]; then
until etcdctl -C "http://$global_etcd"
set "/vt/cells/{{cell}}" "http://$local_etcd"; do
echo "[$(date)] waiting for global etcd to register cell '{{cell}}'";
sleep 1;
done;
fi
etcd -name $HOSTNAME -discovery {{discovery}}
-advertise-client-urls http://$ipaddr:4001
-initial-advertise-peer-urls http://$ipaddr:7001
-listen-client-urls http://$ipaddr:4001
-listen-peer-urls http://$ipaddr:7001