diff --git a/pkg/controller/template/test_data/templates/aws/master/files/-etc-kubernetes-manifests-etcd-member.yaml b/pkg/controller/template/test_data/templates/aws/master/files/-etc-kubernetes-manifests-etcd-member.yaml new file mode 100644 index 0000000000..4323cc832c --- /dev/null +++ b/pkg/controller/template/test_data/templates/aws/master/files/-etc-kubernetes-manifests-etcd-member.yaml @@ -0,0 +1,6 @@ +contents: + source: data:,apiVersion%3A%20v1%0Akind%3A%20Pod%0Ametadata%3A%0A%20%20name%3A%20etcd-member%0A%20%20namespace%3A%20kube-system%0A%20%20labels%3A%0A%20%20%20%20k8s-app%3A%20etcd%0Aspec%3A%0A%20%20initContainers%3A%0A%20%20-%20name%3A%20discovery%0A%20%20%20%20image%3A%20%22registry.svc.ci.openshift.org%2Fopenshift%2Forigin-v4.0%3Asetup-etcd-environment%22%0A%20%20%20%20args%3A%0A%20%20%20%20-%20%22run%22%0A%20%20%20%20-%20%22--discovery-srv%3Dmy-test-cluster.installer.team.coreos.systems%22%0A%20%20%20%20-%20%22--output-file%3D%2Frun%2Fetcd%2Fenvironment%22%0A%20%20%20%20-%20%22--v%3D4%22%0A%20%20%20%20securityContext%3A%0A%20%20%20%20%20%20priviledged%3A%20true%0A%20%20%20%20volumeMounts%3A%0A%20%20%20%20-%20name%3A%20discovery%0A%20%20%20%20%20%20mountPath%3A%20%2Frun%2Fetcd%2F%0A%20%20-%20name%3A%20certs%0A%20%20%20%20image%3A%20%22quay.io%2Fcoreos%2Fkube-client-agent%3A678cc8e6841e2121ebfdb6e2db568fce290b67d6%22%20%23%23%20FIXME(abhinav)%3A%20these%20images%20should%20be%20replacable%20by%20release%20image.%0A%20%20%20%20command%3A%0A%20%20%20%20-%20%2Fbin%2Fsh%0A%20%20%20%20-%20-c%0A%20%20%20%20-%20%7C%0A%20%20%20%20%20%20%23!%2Fbin%2Fsh%0A%20%20%20%20%20%20set%20-euo%20pipefail%0A%0A%20%20%20%20%20%20source%20%2Frun%2Fetcd%2Fenvironment%0A%0A%20%20%20%20%20%20%5B%20-e%20%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D.crt%20-a%20%5C%0A%20%20%20%20%20%20%20%20-e%20%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D.key%20%5D%20%7C%7C%20%5C%0A%20%20%20%20%20%20%20%20%2Fusr%2Flocal%2Fbin%2Fkube-client-agent%20%5C%0A%20%20%20%20%20%20%20%20%20%20request%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--orgname%3Dsystem%3Aetcd-servers%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--cacrt%3D%2Fetc%2Fssl%2Fetcd%2Froot-ca.crt%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--assetsdir%3D%2Fetc%2Fssl%2Fetcd%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--address%3Dhttps%3A%2F%2Fmy-test-cluster-api.installer.team.coreos.systems%3A6443%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--dnsnames%3Dlocalhost%2Cetcd.kube-system.svc%2Cetcd.kube-system.svc.cluster.local%2C%24%7BETCD_DNS_NAME%7D%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--commonname%3Dsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--ipaddrs%3D%24%7BETCD_IPV4_ADDRESS%7D%2C127.0.0.1%20%5C%0A%0A%20%20%20%20%20%20%5B%20-e%20%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D.crt%20-a%20%5C%0A%20%20%20%20%20%20%20%20-e%20%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D.key%20%5D%20%7C%7C%20%5C%0A%20%20%20%20%20%20%20%20%2Fusr%2Flocal%2Fbin%2Fkube-client-agent%20%5C%0A%20%20%20%20%20%20%20%20%20%20request%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--orgname%3Dsystem%3Aetcd-peers%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--cacrt%3D%2Fetc%2Fssl%2Fetcd%2Froot-ca.crt%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--assetsdir%3D%2Fetc%2Fssl%2Fetcd%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--address%3Dhttps%3A%2F%2Fmy-test-cluster-api.installer.team.coreos.systems%3A6443%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--dnsnames%3D%24%7BETCD_DNS_NAME%7D%2Cmy-test-cluster.installer.team.coreos.systems%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--commonname%3Dsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--ipaddrs%3D%24%7BETCD_IPV4_ADDRESS%7D%20%5C%0A%20%20%20%20%20%20%0A%20%20%20%20securityContext%3A%0A%20%20%20%20%20%20priviledged%3A%20true%0A%20%20%20%20volumeMounts%3A%0A%20%20%20%20-%20name%3A%20discovery%0A%20%20%20%20%20%20mountPath%3A%20%2Frun%2Fetcd%2F%0A%20%20%20%20-%20name%3A%20certs%0A%20%20%20%20%20%20mountPath%3A%20%2Fetc%2Fssl%2Fetcd%0A%20%20containers%3A%0A%20%20-%20name%3A%20etcd-member%0A%20%20%20%20image%3A%20%22quay.io%2Fcoreos%2Fetcd%3Av3.2.14%22%20%23%23%20FIXME(abhinav)%3A%20these%20images%20should%20be%20replacable%20by%20release%20image.%0A%20%20%20%20command%3A%0A%20%20%20%20-%20%2Fbin%2Fsh%0A%20%20%20%20-%20-c%0A%20%20%20%20-%20%7C%0A%20%20%20%20%20%20%23!%2Fbin%2Fsh%0A%20%20%20%20%20%20set%20-euo%20pipefail%0A%0A%20%20%20%20%20%20source%20%2Frun%2Fetcd%2Fenvironment%0A%0A%20%20%20%20%20%20%2Fusr%2Flocal%2Fbin%2Fetcd%20%5C%0A%20%20%20%20%20%20%20%20--discovery-srv%20my-test-cluster.installer.team.coreos.systems%20%5C%0A%20%20%20%20%20%20%20%20--initial-advertise-peer-urls%3Dhttps%3A%2F%2F%24%7BETCD_IPV4_ADDRESS%7D%3A2380%20%5C%0A%20%20%20%20%20%20%20%20--cert-file%3D%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D.crt%20%5C%0A%20%20%20%20%20%20%20%20--key-file%3D%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D.key%20%5C%0A%20%20%20%20%20%20%20%20--trusted-ca-file%3D%2Fetc%2Fssl%2Fetcd%2Fca.crt%20%5C%0A%20%20%20%20%20%20%20%20--client-cert-auth%3Dtrue%20%5C%0A%20%20%20%20%20%20%20%20--peer-cert-file%3D%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D.crt%20%5C%0A%20%20%20%20%20%20%20%20--peer-key-file%3D%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D.key%20%5C%0A%20%20%20%20%20%20%20%20--peer-trusted-ca-file%3D%2Fetc%2Fssl%2Fetcd%2Fca.crt%20%5C%0A%20%20%20%20%20%20%20%20--peer-client-cert-auth%3Dtrue%20%5C%0A%20%20%20%20%20%20%20%20--advertise-client-urls%3Dhttps%3A%2F%2F%24%7BETCD_IPV4_ADDRESS%7D%3A2379%20%5C%0A%20%20%20%20%20%20%20%20--listen-client-urls%3Dhttps%3A%2F%2F0.0.0.0%3A2379%20%5C%0A%20%20%20%20%20%20%20%20--listen-peer-urls%3Dhttps%3A%2F%2F0.0.0.0%3A2380%20%5C%0A%20%20%20%20securityContext%3A%0A%20%20%20%20%20%20priviledged%3A%20true%0A%20%20%20%20volumeMounts%3A%0A%20%20%20%20-%20name%3A%20discovery%0A%20%20%20%20%20%20mountPath%3A%20%2Frun%2Fetcd%2F%0A%20%20%20%20-%20name%3A%20certs%0A%20%20%20%20%20%20mountPath%3A%20%2Fetc%2Fssl%2Fetcd%0A%20%20%20%20-%20name%3A%20data-dir%0A%20%20%20%20%20%20mountPath%3A%20%2Fvar%2Flib%2Fetcd%0A%20%20%20%20env%3A%0A%20%20%20%20-%20name%3A%20ETCD_DATA_DIR%0A%20%20%20%20%20%20value%3A%20%22%2Fvar%2Flib%2Fetcd%22%0A%20%20%20%20-%20name%3A%20ETCD_NAME%0A%20%20%20%20%20%20valueFrom%3A%0A%20%20%20%20%20%20%20%20fieldRef%3A%0A%20%20%20%20%20%20%20%20%20%20fieldPath%3A%20metadata.name%0A%20%20%20%20ports%3A%0A%20%20%20%20-%20name%3A%20peer%0A%20%20%20%20%20%20containerPort%3A%202380%0A%20%20%20%20%20%20protocol%3A%20TCP%0A%20%20%20%20-%20name%3A%20server%0A%20%20%20%20%20%20containerPort%3A%202379%0A%20%20%20%20%20%20protocol%3A%20TCP%0A%20%20hostNetwork%3A%20true%0A%20%20restartPolicy%3A%20Always%0A%20%20volumes%3A%0A%20%20-%20name%3A%20discovery%0A%20%20%20%20hostpath%3A%0A%20%20%20%20%20%20path%3A%20%2Frun%2Fetcd%0A%20%20-%20name%3A%20certs%0A%20%20%20%20hostPath%3A%0A%20%20%20%20%20%20path%3A%20%2Fetc%2Fssl%2Fetcd%0A%20%20-%20name%3A%20data-dir%0A%20%20%20%20hostPath%3A%0A%20%20%20%20%20%20path%3A%20%2Fvar%2Flib%2Fetcd + verification: {} +filesystem: root +mode: 420 +path: /etc/kubernetes/manifests/etcd-member.yaml diff --git a/pkg/controller/template/test_data/templates/aws/master/units/etcd-member.service b/pkg/controller/template/test_data/templates/aws/master/units/etcd-member.service deleted file mode 100644 index 253cf518c3..0000000000 --- a/pkg/controller/template/test_data/templates/aws/master/units/etcd-member.service +++ /dev/null @@ -1,103 +0,0 @@ -contents: | - [Unit] - Description=etcd (System Application Container) - Documentation=https://github.com/coreos/etcd - After=network-online.target - Wants=network-online.target - Requires=setup-etcd-environment.service - - [Service] - Restart=on-failure - RestartSec=10s - TimeoutStartSec=0 - LimitNOFILE=40000 - - ## FIXME(abhinav): these images should be replacable by release image. - Environment="SIGNER_IMAGE=quay.io/coreos/kube-client-agent:678cc8e6841e2121ebfdb6e2db568fce290b67d6" - Environment="ETCD_IMAGE=quay.io/coreos/etcd:v3.2.14" - EnvironmentFile=/run/etcd/environment - - ExecStartPre=/bin/sh -c " \ - [ -e /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt -a \ - -e /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key ] || \ - /bin/podman \ - run \ - --rm \ - --volume /etc/ssl/etcd:/etc/ssl/etcd:rw,z \ - --network host \ - '${SIGNER_IMAGE}' \ - request \ - --orgname=system:etcd-servers \ - --cacrt=/etc/ssl/etcd/root-ca.crt \ - --assetsdir=/etc/ssl/etcd \ - --address=https://my-test-cluster-api.installer.team.coreos.systems:6443 \ - --dnsnames=localhost,etcd.kube-system.svc,etcd.kube-system.svc.cluster.local,${ETCD_DNS_NAME} \ - --commonname=system:etcd-server:${ETCD_DNS_NAME} \ - --ipaddrs=${ETCD_IPV4_ADDRESS},127.0.0.1 \ - " - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key - - ExecStartPre=/bin/sh -c " \ - [ -e /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt -a \ - -e /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key ] || \ - /bin/podman \ - run \ - --rm \ - --volume /etc/ssl/etcd:/etc/ssl/etcd:rw,z \ - --network host \ - '${SIGNER_IMAGE}' \ - request \ - --orgname=system:etcd-peers \ - --cacrt=/etc/ssl/etcd/root-ca.crt \ - --assetsdir=/etc/ssl/etcd \ - --address=https://my-test-cluster-api.installer.team.coreos.systems:6443 \ - --dnsnames=${ETCD_DNS_NAME},my-test-cluster.installer.team.coreos.systems \ - --commonname=system:etcd-peer:${ETCD_DNS_NAME} \ - --ipaddrs=${ETCD_IPV4_ADDRESS} \ - " - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key - - ExecStartPre=-/bin/podman rm etcd-member - ExecStartPre=/usr/bin/mkdir --parents /var/lib/etcd - ExecStartPre=/usr/bin/mkdir --parents /run/etcd - ExecStartPre=/usr/bin/chown etcd /var/lib/etcd - ExecStartPre=/usr/bin/chown etcd /run/etcd - - ExecStart= /usr/bin/bash -c " \ - /bin/podman \ - run \ - --rm \ - --name etcd-member \ - --volume /run/systemd/system:/run/systemd/system:ro,z \ - --volume /etc/ssl/certs:/etc/ssl/certs:ro,z \ - --volume /etc/ssl/etcd:/etc/ssl/etcd:ro,z \ - --volume /var/lib/etcd:/var/lib/etcd:rw,z \ - --volume /etc/ssl/certs:/etc/ssl/certs:ro,z \ - --env 'ETCD_NAME=%m' \ - --env ETCD_DATA_DIR=/var/lib/etcd \ - --network host \ - --user=$(id --user etcd) \ - '${ETCD_IMAGE}' \ - /usr/local/bin/etcd \ - --name ${ETCD_DNS_NAME} \ - --discovery-srv my-test-cluster.installer.team.coreos.systems \ - --initial-advertise-peer-urls=https://${ETCD_IPV4_ADDRESS}:2380 \ - --cert-file=/etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt \ - --key-file=/etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key \ - --trusted-ca-file=/etc/ssl/etcd/ca.crt \ - --client-cert-auth=true \ - --peer-cert-file=/etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt \ - --peer-key-file=/etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key \ - --peer-trusted-ca-file=/etc/ssl/etcd/ca.crt \ - --peer-client-cert-auth=true \ - --advertise-client-urls=https://${ETCD_IPV4_ADDRESS}:2379 \ - --listen-client-urls=https://0.0.0.0:2379 \ - --listen-peer-urls=https://0.0.0.0:2380 \ - " - - [Install] - WantedBy=multi-user.target -enabled: true -name: etcd-member.service diff --git a/pkg/controller/template/test_data/templates/aws/master/units/setup-etcd-environment.service b/pkg/controller/template/test_data/templates/aws/master/units/setup-etcd-environment.service deleted file mode 100644 index c47c4230a7..0000000000 --- a/pkg/controller/template/test_data/templates/aws/master/units/setup-etcd-environment.service +++ /dev/null @@ -1,8 +0,0 @@ -contents: "[Unit]\nDescription=Setup Etcd Environment \nRequires=network-online.target - \ \nAfter=network-online.target\n\n[Service]\nRestart=on-failure\nRestartSec=5s\n\n## - FIXME(abhinav): switch this to official image.\nEnvironment=\"IMAGE=docker.io/abhinavdahiya/origin-setup-etcd-environment\"\n\nExecStartPre=/usr/bin/mkdir - --parents /run/etcd\nExecStart=/bin/podman \\\n run \\\n --net host \\\n --rm - \\\n --volume /run/etcd:/run/etcd:z \\\n ${IMAGE} \\\n --discovery-srv=my-test-cluster.installer.team.coreos.systems - \\\n --output-file=/run/etcd/environment \\\n --v=4 \\\n\n[Install]\nWantedBy=multi-user.target\n" -enabled: true -name: setup-etcd-environment.service diff --git a/pkg/controller/template/test_data/templates/libvirt/master/files/-etc-kubernetes-manifests-etcd-member.yaml b/pkg/controller/template/test_data/templates/libvirt/master/files/-etc-kubernetes-manifests-etcd-member.yaml new file mode 100644 index 0000000000..4323cc832c --- /dev/null +++ b/pkg/controller/template/test_data/templates/libvirt/master/files/-etc-kubernetes-manifests-etcd-member.yaml @@ -0,0 +1,6 @@ +contents: + source: data:,apiVersion%3A%20v1%0Akind%3A%20Pod%0Ametadata%3A%0A%20%20name%3A%20etcd-member%0A%20%20namespace%3A%20kube-system%0A%20%20labels%3A%0A%20%20%20%20k8s-app%3A%20etcd%0Aspec%3A%0A%20%20initContainers%3A%0A%20%20-%20name%3A%20discovery%0A%20%20%20%20image%3A%20%22registry.svc.ci.openshift.org%2Fopenshift%2Forigin-v4.0%3Asetup-etcd-environment%22%0A%20%20%20%20args%3A%0A%20%20%20%20-%20%22run%22%0A%20%20%20%20-%20%22--discovery-srv%3Dmy-test-cluster.installer.team.coreos.systems%22%0A%20%20%20%20-%20%22--output-file%3D%2Frun%2Fetcd%2Fenvironment%22%0A%20%20%20%20-%20%22--v%3D4%22%0A%20%20%20%20securityContext%3A%0A%20%20%20%20%20%20priviledged%3A%20true%0A%20%20%20%20volumeMounts%3A%0A%20%20%20%20-%20name%3A%20discovery%0A%20%20%20%20%20%20mountPath%3A%20%2Frun%2Fetcd%2F%0A%20%20-%20name%3A%20certs%0A%20%20%20%20image%3A%20%22quay.io%2Fcoreos%2Fkube-client-agent%3A678cc8e6841e2121ebfdb6e2db568fce290b67d6%22%20%23%23%20FIXME(abhinav)%3A%20these%20images%20should%20be%20replacable%20by%20release%20image.%0A%20%20%20%20command%3A%0A%20%20%20%20-%20%2Fbin%2Fsh%0A%20%20%20%20-%20-c%0A%20%20%20%20-%20%7C%0A%20%20%20%20%20%20%23!%2Fbin%2Fsh%0A%20%20%20%20%20%20set%20-euo%20pipefail%0A%0A%20%20%20%20%20%20source%20%2Frun%2Fetcd%2Fenvironment%0A%0A%20%20%20%20%20%20%5B%20-e%20%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D.crt%20-a%20%5C%0A%20%20%20%20%20%20%20%20-e%20%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D.key%20%5D%20%7C%7C%20%5C%0A%20%20%20%20%20%20%20%20%2Fusr%2Flocal%2Fbin%2Fkube-client-agent%20%5C%0A%20%20%20%20%20%20%20%20%20%20request%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--orgname%3Dsystem%3Aetcd-servers%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--cacrt%3D%2Fetc%2Fssl%2Fetcd%2Froot-ca.crt%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--assetsdir%3D%2Fetc%2Fssl%2Fetcd%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--address%3Dhttps%3A%2F%2Fmy-test-cluster-api.installer.team.coreos.systems%3A6443%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--dnsnames%3Dlocalhost%2Cetcd.kube-system.svc%2Cetcd.kube-system.svc.cluster.local%2C%24%7BETCD_DNS_NAME%7D%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--commonname%3Dsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--ipaddrs%3D%24%7BETCD_IPV4_ADDRESS%7D%2C127.0.0.1%20%5C%0A%0A%20%20%20%20%20%20%5B%20-e%20%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D.crt%20-a%20%5C%0A%20%20%20%20%20%20%20%20-e%20%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D.key%20%5D%20%7C%7C%20%5C%0A%20%20%20%20%20%20%20%20%2Fusr%2Flocal%2Fbin%2Fkube-client-agent%20%5C%0A%20%20%20%20%20%20%20%20%20%20request%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--orgname%3Dsystem%3Aetcd-peers%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--cacrt%3D%2Fetc%2Fssl%2Fetcd%2Froot-ca.crt%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--assetsdir%3D%2Fetc%2Fssl%2Fetcd%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--address%3Dhttps%3A%2F%2Fmy-test-cluster-api.installer.team.coreos.systems%3A6443%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--dnsnames%3D%24%7BETCD_DNS_NAME%7D%2Cmy-test-cluster.installer.team.coreos.systems%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--commonname%3Dsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--ipaddrs%3D%24%7BETCD_IPV4_ADDRESS%7D%20%5C%0A%20%20%20%20%20%20%0A%20%20%20%20securityContext%3A%0A%20%20%20%20%20%20priviledged%3A%20true%0A%20%20%20%20volumeMounts%3A%0A%20%20%20%20-%20name%3A%20discovery%0A%20%20%20%20%20%20mountPath%3A%20%2Frun%2Fetcd%2F%0A%20%20%20%20-%20name%3A%20certs%0A%20%20%20%20%20%20mountPath%3A%20%2Fetc%2Fssl%2Fetcd%0A%20%20containers%3A%0A%20%20-%20name%3A%20etcd-member%0A%20%20%20%20image%3A%20%22quay.io%2Fcoreos%2Fetcd%3Av3.2.14%22%20%23%23%20FIXME(abhinav)%3A%20these%20images%20should%20be%20replacable%20by%20release%20image.%0A%20%20%20%20command%3A%0A%20%20%20%20-%20%2Fbin%2Fsh%0A%20%20%20%20-%20-c%0A%20%20%20%20-%20%7C%0A%20%20%20%20%20%20%23!%2Fbin%2Fsh%0A%20%20%20%20%20%20set%20-euo%20pipefail%0A%0A%20%20%20%20%20%20source%20%2Frun%2Fetcd%2Fenvironment%0A%0A%20%20%20%20%20%20%2Fusr%2Flocal%2Fbin%2Fetcd%20%5C%0A%20%20%20%20%20%20%20%20--discovery-srv%20my-test-cluster.installer.team.coreos.systems%20%5C%0A%20%20%20%20%20%20%20%20--initial-advertise-peer-urls%3Dhttps%3A%2F%2F%24%7BETCD_IPV4_ADDRESS%7D%3A2380%20%5C%0A%20%20%20%20%20%20%20%20--cert-file%3D%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D.crt%20%5C%0A%20%20%20%20%20%20%20%20--key-file%3D%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D.key%20%5C%0A%20%20%20%20%20%20%20%20--trusted-ca-file%3D%2Fetc%2Fssl%2Fetcd%2Fca.crt%20%5C%0A%20%20%20%20%20%20%20%20--client-cert-auth%3Dtrue%20%5C%0A%20%20%20%20%20%20%20%20--peer-cert-file%3D%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D.crt%20%5C%0A%20%20%20%20%20%20%20%20--peer-key-file%3D%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D.key%20%5C%0A%20%20%20%20%20%20%20%20--peer-trusted-ca-file%3D%2Fetc%2Fssl%2Fetcd%2Fca.crt%20%5C%0A%20%20%20%20%20%20%20%20--peer-client-cert-auth%3Dtrue%20%5C%0A%20%20%20%20%20%20%20%20--advertise-client-urls%3Dhttps%3A%2F%2F%24%7BETCD_IPV4_ADDRESS%7D%3A2379%20%5C%0A%20%20%20%20%20%20%20%20--listen-client-urls%3Dhttps%3A%2F%2F0.0.0.0%3A2379%20%5C%0A%20%20%20%20%20%20%20%20--listen-peer-urls%3Dhttps%3A%2F%2F0.0.0.0%3A2380%20%5C%0A%20%20%20%20securityContext%3A%0A%20%20%20%20%20%20priviledged%3A%20true%0A%20%20%20%20volumeMounts%3A%0A%20%20%20%20-%20name%3A%20discovery%0A%20%20%20%20%20%20mountPath%3A%20%2Frun%2Fetcd%2F%0A%20%20%20%20-%20name%3A%20certs%0A%20%20%20%20%20%20mountPath%3A%20%2Fetc%2Fssl%2Fetcd%0A%20%20%20%20-%20name%3A%20data-dir%0A%20%20%20%20%20%20mountPath%3A%20%2Fvar%2Flib%2Fetcd%0A%20%20%20%20env%3A%0A%20%20%20%20-%20name%3A%20ETCD_DATA_DIR%0A%20%20%20%20%20%20value%3A%20%22%2Fvar%2Flib%2Fetcd%22%0A%20%20%20%20-%20name%3A%20ETCD_NAME%0A%20%20%20%20%20%20valueFrom%3A%0A%20%20%20%20%20%20%20%20fieldRef%3A%0A%20%20%20%20%20%20%20%20%20%20fieldPath%3A%20metadata.name%0A%20%20%20%20ports%3A%0A%20%20%20%20-%20name%3A%20peer%0A%20%20%20%20%20%20containerPort%3A%202380%0A%20%20%20%20%20%20protocol%3A%20TCP%0A%20%20%20%20-%20name%3A%20server%0A%20%20%20%20%20%20containerPort%3A%202379%0A%20%20%20%20%20%20protocol%3A%20TCP%0A%20%20hostNetwork%3A%20true%0A%20%20restartPolicy%3A%20Always%0A%20%20volumes%3A%0A%20%20-%20name%3A%20discovery%0A%20%20%20%20hostpath%3A%0A%20%20%20%20%20%20path%3A%20%2Frun%2Fetcd%0A%20%20-%20name%3A%20certs%0A%20%20%20%20hostPath%3A%0A%20%20%20%20%20%20path%3A%20%2Fetc%2Fssl%2Fetcd%0A%20%20-%20name%3A%20data-dir%0A%20%20%20%20hostPath%3A%0A%20%20%20%20%20%20path%3A%20%2Fvar%2Flib%2Fetcd + verification: {} +filesystem: root +mode: 420 +path: /etc/kubernetes/manifests/etcd-member.yaml diff --git a/pkg/controller/template/test_data/templates/libvirt/master/units/etcd-member.service b/pkg/controller/template/test_data/templates/libvirt/master/units/etcd-member.service deleted file mode 100644 index 253cf518c3..0000000000 --- a/pkg/controller/template/test_data/templates/libvirt/master/units/etcd-member.service +++ /dev/null @@ -1,103 +0,0 @@ -contents: | - [Unit] - Description=etcd (System Application Container) - Documentation=https://github.com/coreos/etcd - After=network-online.target - Wants=network-online.target - Requires=setup-etcd-environment.service - - [Service] - Restart=on-failure - RestartSec=10s - TimeoutStartSec=0 - LimitNOFILE=40000 - - ## FIXME(abhinav): these images should be replacable by release image. - Environment="SIGNER_IMAGE=quay.io/coreos/kube-client-agent:678cc8e6841e2121ebfdb6e2db568fce290b67d6" - Environment="ETCD_IMAGE=quay.io/coreos/etcd:v3.2.14" - EnvironmentFile=/run/etcd/environment - - ExecStartPre=/bin/sh -c " \ - [ -e /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt -a \ - -e /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key ] || \ - /bin/podman \ - run \ - --rm \ - --volume /etc/ssl/etcd:/etc/ssl/etcd:rw,z \ - --network host \ - '${SIGNER_IMAGE}' \ - request \ - --orgname=system:etcd-servers \ - --cacrt=/etc/ssl/etcd/root-ca.crt \ - --assetsdir=/etc/ssl/etcd \ - --address=https://my-test-cluster-api.installer.team.coreos.systems:6443 \ - --dnsnames=localhost,etcd.kube-system.svc,etcd.kube-system.svc.cluster.local,${ETCD_DNS_NAME} \ - --commonname=system:etcd-server:${ETCD_DNS_NAME} \ - --ipaddrs=${ETCD_IPV4_ADDRESS},127.0.0.1 \ - " - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key - - ExecStartPre=/bin/sh -c " \ - [ -e /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt -a \ - -e /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key ] || \ - /bin/podman \ - run \ - --rm \ - --volume /etc/ssl/etcd:/etc/ssl/etcd:rw,z \ - --network host \ - '${SIGNER_IMAGE}' \ - request \ - --orgname=system:etcd-peers \ - --cacrt=/etc/ssl/etcd/root-ca.crt \ - --assetsdir=/etc/ssl/etcd \ - --address=https://my-test-cluster-api.installer.team.coreos.systems:6443 \ - --dnsnames=${ETCD_DNS_NAME},my-test-cluster.installer.team.coreos.systems \ - --commonname=system:etcd-peer:${ETCD_DNS_NAME} \ - --ipaddrs=${ETCD_IPV4_ADDRESS} \ - " - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key - - ExecStartPre=-/bin/podman rm etcd-member - ExecStartPre=/usr/bin/mkdir --parents /var/lib/etcd - ExecStartPre=/usr/bin/mkdir --parents /run/etcd - ExecStartPre=/usr/bin/chown etcd /var/lib/etcd - ExecStartPre=/usr/bin/chown etcd /run/etcd - - ExecStart= /usr/bin/bash -c " \ - /bin/podman \ - run \ - --rm \ - --name etcd-member \ - --volume /run/systemd/system:/run/systemd/system:ro,z \ - --volume /etc/ssl/certs:/etc/ssl/certs:ro,z \ - --volume /etc/ssl/etcd:/etc/ssl/etcd:ro,z \ - --volume /var/lib/etcd:/var/lib/etcd:rw,z \ - --volume /etc/ssl/certs:/etc/ssl/certs:ro,z \ - --env 'ETCD_NAME=%m' \ - --env ETCD_DATA_DIR=/var/lib/etcd \ - --network host \ - --user=$(id --user etcd) \ - '${ETCD_IMAGE}' \ - /usr/local/bin/etcd \ - --name ${ETCD_DNS_NAME} \ - --discovery-srv my-test-cluster.installer.team.coreos.systems \ - --initial-advertise-peer-urls=https://${ETCD_IPV4_ADDRESS}:2380 \ - --cert-file=/etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt \ - --key-file=/etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key \ - --trusted-ca-file=/etc/ssl/etcd/ca.crt \ - --client-cert-auth=true \ - --peer-cert-file=/etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt \ - --peer-key-file=/etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key \ - --peer-trusted-ca-file=/etc/ssl/etcd/ca.crt \ - --peer-client-cert-auth=true \ - --advertise-client-urls=https://${ETCD_IPV4_ADDRESS}:2379 \ - --listen-client-urls=https://0.0.0.0:2379 \ - --listen-peer-urls=https://0.0.0.0:2380 \ - " - - [Install] - WantedBy=multi-user.target -enabled: true -name: etcd-member.service diff --git a/pkg/controller/template/test_data/templates/libvirt/master/units/setup-etcd-environment.service b/pkg/controller/template/test_data/templates/libvirt/master/units/setup-etcd-environment.service deleted file mode 100644 index c47c4230a7..0000000000 --- a/pkg/controller/template/test_data/templates/libvirt/master/units/setup-etcd-environment.service +++ /dev/null @@ -1,8 +0,0 @@ -contents: "[Unit]\nDescription=Setup Etcd Environment \nRequires=network-online.target - \ \nAfter=network-online.target\n\n[Service]\nRestart=on-failure\nRestartSec=5s\n\n## - FIXME(abhinav): switch this to official image.\nEnvironment=\"IMAGE=docker.io/abhinavdahiya/origin-setup-etcd-environment\"\n\nExecStartPre=/usr/bin/mkdir - --parents /run/etcd\nExecStart=/bin/podman \\\n run \\\n --net host \\\n --rm - \\\n --volume /run/etcd:/run/etcd:z \\\n ${IMAGE} \\\n --discovery-srv=my-test-cluster.installer.team.coreos.systems - \\\n --output-file=/run/etcd/environment \\\n --v=4 \\\n\n[Install]\nWantedBy=multi-user.target\n" -enabled: true -name: setup-etcd-environment.service diff --git a/pkg/controller/template/test_data/templates/openstack/master/files/-etc-kubernetes-manifests-etcd-member.yaml b/pkg/controller/template/test_data/templates/openstack/master/files/-etc-kubernetes-manifests-etcd-member.yaml new file mode 100644 index 0000000000..4323cc832c --- /dev/null +++ b/pkg/controller/template/test_data/templates/openstack/master/files/-etc-kubernetes-manifests-etcd-member.yaml @@ -0,0 +1,6 @@ +contents: + source: data:,apiVersion%3A%20v1%0Akind%3A%20Pod%0Ametadata%3A%0A%20%20name%3A%20etcd-member%0A%20%20namespace%3A%20kube-system%0A%20%20labels%3A%0A%20%20%20%20k8s-app%3A%20etcd%0Aspec%3A%0A%20%20initContainers%3A%0A%20%20-%20name%3A%20discovery%0A%20%20%20%20image%3A%20%22registry.svc.ci.openshift.org%2Fopenshift%2Forigin-v4.0%3Asetup-etcd-environment%22%0A%20%20%20%20args%3A%0A%20%20%20%20-%20%22run%22%0A%20%20%20%20-%20%22--discovery-srv%3Dmy-test-cluster.installer.team.coreos.systems%22%0A%20%20%20%20-%20%22--output-file%3D%2Frun%2Fetcd%2Fenvironment%22%0A%20%20%20%20-%20%22--v%3D4%22%0A%20%20%20%20securityContext%3A%0A%20%20%20%20%20%20priviledged%3A%20true%0A%20%20%20%20volumeMounts%3A%0A%20%20%20%20-%20name%3A%20discovery%0A%20%20%20%20%20%20mountPath%3A%20%2Frun%2Fetcd%2F%0A%20%20-%20name%3A%20certs%0A%20%20%20%20image%3A%20%22quay.io%2Fcoreos%2Fkube-client-agent%3A678cc8e6841e2121ebfdb6e2db568fce290b67d6%22%20%23%23%20FIXME(abhinav)%3A%20these%20images%20should%20be%20replacable%20by%20release%20image.%0A%20%20%20%20command%3A%0A%20%20%20%20-%20%2Fbin%2Fsh%0A%20%20%20%20-%20-c%0A%20%20%20%20-%20%7C%0A%20%20%20%20%20%20%23!%2Fbin%2Fsh%0A%20%20%20%20%20%20set%20-euo%20pipefail%0A%0A%20%20%20%20%20%20source%20%2Frun%2Fetcd%2Fenvironment%0A%0A%20%20%20%20%20%20%5B%20-e%20%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D.crt%20-a%20%5C%0A%20%20%20%20%20%20%20%20-e%20%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D.key%20%5D%20%7C%7C%20%5C%0A%20%20%20%20%20%20%20%20%2Fusr%2Flocal%2Fbin%2Fkube-client-agent%20%5C%0A%20%20%20%20%20%20%20%20%20%20request%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--orgname%3Dsystem%3Aetcd-servers%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--cacrt%3D%2Fetc%2Fssl%2Fetcd%2Froot-ca.crt%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--assetsdir%3D%2Fetc%2Fssl%2Fetcd%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--address%3Dhttps%3A%2F%2Fmy-test-cluster-api.installer.team.coreos.systems%3A6443%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--dnsnames%3Dlocalhost%2Cetcd.kube-system.svc%2Cetcd.kube-system.svc.cluster.local%2C%24%7BETCD_DNS_NAME%7D%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--commonname%3Dsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--ipaddrs%3D%24%7BETCD_IPV4_ADDRESS%7D%2C127.0.0.1%20%5C%0A%0A%20%20%20%20%20%20%5B%20-e%20%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D.crt%20-a%20%5C%0A%20%20%20%20%20%20%20%20-e%20%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D.key%20%5D%20%7C%7C%20%5C%0A%20%20%20%20%20%20%20%20%2Fusr%2Flocal%2Fbin%2Fkube-client-agent%20%5C%0A%20%20%20%20%20%20%20%20%20%20request%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--orgname%3Dsystem%3Aetcd-peers%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--cacrt%3D%2Fetc%2Fssl%2Fetcd%2Froot-ca.crt%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--assetsdir%3D%2Fetc%2Fssl%2Fetcd%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--address%3Dhttps%3A%2F%2Fmy-test-cluster-api.installer.team.coreos.systems%3A6443%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--dnsnames%3D%24%7BETCD_DNS_NAME%7D%2Cmy-test-cluster.installer.team.coreos.systems%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--commonname%3Dsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D%20%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20--ipaddrs%3D%24%7BETCD_IPV4_ADDRESS%7D%20%5C%0A%20%20%20%20%20%20%0A%20%20%20%20securityContext%3A%0A%20%20%20%20%20%20priviledged%3A%20true%0A%20%20%20%20volumeMounts%3A%0A%20%20%20%20-%20name%3A%20discovery%0A%20%20%20%20%20%20mountPath%3A%20%2Frun%2Fetcd%2F%0A%20%20%20%20-%20name%3A%20certs%0A%20%20%20%20%20%20mountPath%3A%20%2Fetc%2Fssl%2Fetcd%0A%20%20containers%3A%0A%20%20-%20name%3A%20etcd-member%0A%20%20%20%20image%3A%20%22quay.io%2Fcoreos%2Fetcd%3Av3.2.14%22%20%23%23%20FIXME(abhinav)%3A%20these%20images%20should%20be%20replacable%20by%20release%20image.%0A%20%20%20%20command%3A%0A%20%20%20%20-%20%2Fbin%2Fsh%0A%20%20%20%20-%20-c%0A%20%20%20%20-%20%7C%0A%20%20%20%20%20%20%23!%2Fbin%2Fsh%0A%20%20%20%20%20%20set%20-euo%20pipefail%0A%0A%20%20%20%20%20%20source%20%2Frun%2Fetcd%2Fenvironment%0A%0A%20%20%20%20%20%20%2Fusr%2Flocal%2Fbin%2Fetcd%20%5C%0A%20%20%20%20%20%20%20%20--discovery-srv%20my-test-cluster.installer.team.coreos.systems%20%5C%0A%20%20%20%20%20%20%20%20--initial-advertise-peer-urls%3Dhttps%3A%2F%2F%24%7BETCD_IPV4_ADDRESS%7D%3A2380%20%5C%0A%20%20%20%20%20%20%20%20--cert-file%3D%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D.crt%20%5C%0A%20%20%20%20%20%20%20%20--key-file%3D%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-server%3A%24%7BETCD_DNS_NAME%7D.key%20%5C%0A%20%20%20%20%20%20%20%20--trusted-ca-file%3D%2Fetc%2Fssl%2Fetcd%2Fca.crt%20%5C%0A%20%20%20%20%20%20%20%20--client-cert-auth%3Dtrue%20%5C%0A%20%20%20%20%20%20%20%20--peer-cert-file%3D%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D.crt%20%5C%0A%20%20%20%20%20%20%20%20--peer-key-file%3D%2Fetc%2Fssl%2Fetcd%2Fsystem%3Aetcd-peer%3A%24%7BETCD_DNS_NAME%7D.key%20%5C%0A%20%20%20%20%20%20%20%20--peer-trusted-ca-file%3D%2Fetc%2Fssl%2Fetcd%2Fca.crt%20%5C%0A%20%20%20%20%20%20%20%20--peer-client-cert-auth%3Dtrue%20%5C%0A%20%20%20%20%20%20%20%20--advertise-client-urls%3Dhttps%3A%2F%2F%24%7BETCD_IPV4_ADDRESS%7D%3A2379%20%5C%0A%20%20%20%20%20%20%20%20--listen-client-urls%3Dhttps%3A%2F%2F0.0.0.0%3A2379%20%5C%0A%20%20%20%20%20%20%20%20--listen-peer-urls%3Dhttps%3A%2F%2F0.0.0.0%3A2380%20%5C%0A%20%20%20%20securityContext%3A%0A%20%20%20%20%20%20priviledged%3A%20true%0A%20%20%20%20volumeMounts%3A%0A%20%20%20%20-%20name%3A%20discovery%0A%20%20%20%20%20%20mountPath%3A%20%2Frun%2Fetcd%2F%0A%20%20%20%20-%20name%3A%20certs%0A%20%20%20%20%20%20mountPath%3A%20%2Fetc%2Fssl%2Fetcd%0A%20%20%20%20-%20name%3A%20data-dir%0A%20%20%20%20%20%20mountPath%3A%20%2Fvar%2Flib%2Fetcd%0A%20%20%20%20env%3A%0A%20%20%20%20-%20name%3A%20ETCD_DATA_DIR%0A%20%20%20%20%20%20value%3A%20%22%2Fvar%2Flib%2Fetcd%22%0A%20%20%20%20-%20name%3A%20ETCD_NAME%0A%20%20%20%20%20%20valueFrom%3A%0A%20%20%20%20%20%20%20%20fieldRef%3A%0A%20%20%20%20%20%20%20%20%20%20fieldPath%3A%20metadata.name%0A%20%20%20%20ports%3A%0A%20%20%20%20-%20name%3A%20peer%0A%20%20%20%20%20%20containerPort%3A%202380%0A%20%20%20%20%20%20protocol%3A%20TCP%0A%20%20%20%20-%20name%3A%20server%0A%20%20%20%20%20%20containerPort%3A%202379%0A%20%20%20%20%20%20protocol%3A%20TCP%0A%20%20hostNetwork%3A%20true%0A%20%20restartPolicy%3A%20Always%0A%20%20volumes%3A%0A%20%20-%20name%3A%20discovery%0A%20%20%20%20hostpath%3A%0A%20%20%20%20%20%20path%3A%20%2Frun%2Fetcd%0A%20%20-%20name%3A%20certs%0A%20%20%20%20hostPath%3A%0A%20%20%20%20%20%20path%3A%20%2Fetc%2Fssl%2Fetcd%0A%20%20-%20name%3A%20data-dir%0A%20%20%20%20hostPath%3A%0A%20%20%20%20%20%20path%3A%20%2Fvar%2Flib%2Fetcd + verification: {} +filesystem: root +mode: 420 +path: /etc/kubernetes/manifests/etcd-member.yaml diff --git a/pkg/controller/template/test_data/templates/openstack/master/units/etcd-member.service b/pkg/controller/template/test_data/templates/openstack/master/units/etcd-member.service deleted file mode 100644 index 253cf518c3..0000000000 --- a/pkg/controller/template/test_data/templates/openstack/master/units/etcd-member.service +++ /dev/null @@ -1,103 +0,0 @@ -contents: | - [Unit] - Description=etcd (System Application Container) - Documentation=https://github.com/coreos/etcd - After=network-online.target - Wants=network-online.target - Requires=setup-etcd-environment.service - - [Service] - Restart=on-failure - RestartSec=10s - TimeoutStartSec=0 - LimitNOFILE=40000 - - ## FIXME(abhinav): these images should be replacable by release image. - Environment="SIGNER_IMAGE=quay.io/coreos/kube-client-agent:678cc8e6841e2121ebfdb6e2db568fce290b67d6" - Environment="ETCD_IMAGE=quay.io/coreos/etcd:v3.2.14" - EnvironmentFile=/run/etcd/environment - - ExecStartPre=/bin/sh -c " \ - [ -e /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt -a \ - -e /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key ] || \ - /bin/podman \ - run \ - --rm \ - --volume /etc/ssl/etcd:/etc/ssl/etcd:rw,z \ - --network host \ - '${SIGNER_IMAGE}' \ - request \ - --orgname=system:etcd-servers \ - --cacrt=/etc/ssl/etcd/root-ca.crt \ - --assetsdir=/etc/ssl/etcd \ - --address=https://my-test-cluster-api.installer.team.coreos.systems:6443 \ - --dnsnames=localhost,etcd.kube-system.svc,etcd.kube-system.svc.cluster.local,${ETCD_DNS_NAME} \ - --commonname=system:etcd-server:${ETCD_DNS_NAME} \ - --ipaddrs=${ETCD_IPV4_ADDRESS},127.0.0.1 \ - " - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key - - ExecStartPre=/bin/sh -c " \ - [ -e /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt -a \ - -e /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key ] || \ - /bin/podman \ - run \ - --rm \ - --volume /etc/ssl/etcd:/etc/ssl/etcd:rw,z \ - --network host \ - '${SIGNER_IMAGE}' \ - request \ - --orgname=system:etcd-peers \ - --cacrt=/etc/ssl/etcd/root-ca.crt \ - --assetsdir=/etc/ssl/etcd \ - --address=https://my-test-cluster-api.installer.team.coreos.systems:6443 \ - --dnsnames=${ETCD_DNS_NAME},my-test-cluster.installer.team.coreos.systems \ - --commonname=system:etcd-peer:${ETCD_DNS_NAME} \ - --ipaddrs=${ETCD_IPV4_ADDRESS} \ - " - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key - - ExecStartPre=-/bin/podman rm etcd-member - ExecStartPre=/usr/bin/mkdir --parents /var/lib/etcd - ExecStartPre=/usr/bin/mkdir --parents /run/etcd - ExecStartPre=/usr/bin/chown etcd /var/lib/etcd - ExecStartPre=/usr/bin/chown etcd /run/etcd - - ExecStart= /usr/bin/bash -c " \ - /bin/podman \ - run \ - --rm \ - --name etcd-member \ - --volume /run/systemd/system:/run/systemd/system:ro,z \ - --volume /etc/ssl/certs:/etc/ssl/certs:ro,z \ - --volume /etc/ssl/etcd:/etc/ssl/etcd:ro,z \ - --volume /var/lib/etcd:/var/lib/etcd:rw,z \ - --volume /etc/ssl/certs:/etc/ssl/certs:ro,z \ - --env 'ETCD_NAME=%m' \ - --env ETCD_DATA_DIR=/var/lib/etcd \ - --network host \ - --user=$(id --user etcd) \ - '${ETCD_IMAGE}' \ - /usr/local/bin/etcd \ - --name ${ETCD_DNS_NAME} \ - --discovery-srv my-test-cluster.installer.team.coreos.systems \ - --initial-advertise-peer-urls=https://${ETCD_IPV4_ADDRESS}:2380 \ - --cert-file=/etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt \ - --key-file=/etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key \ - --trusted-ca-file=/etc/ssl/etcd/ca.crt \ - --client-cert-auth=true \ - --peer-cert-file=/etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt \ - --peer-key-file=/etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key \ - --peer-trusted-ca-file=/etc/ssl/etcd/ca.crt \ - --peer-client-cert-auth=true \ - --advertise-client-urls=https://${ETCD_IPV4_ADDRESS}:2379 \ - --listen-client-urls=https://0.0.0.0:2379 \ - --listen-peer-urls=https://0.0.0.0:2380 \ - " - - [Install] - WantedBy=multi-user.target -enabled: true -name: etcd-member.service diff --git a/pkg/controller/template/test_data/templates/openstack/master/units/setup-etcd-environment.service b/pkg/controller/template/test_data/templates/openstack/master/units/setup-etcd-environment.service deleted file mode 100644 index c47c4230a7..0000000000 --- a/pkg/controller/template/test_data/templates/openstack/master/units/setup-etcd-environment.service +++ /dev/null @@ -1,8 +0,0 @@ -contents: "[Unit]\nDescription=Setup Etcd Environment \nRequires=network-online.target - \ \nAfter=network-online.target\n\n[Service]\nRestart=on-failure\nRestartSec=5s\n\n## - FIXME(abhinav): switch this to official image.\nEnvironment=\"IMAGE=docker.io/abhinavdahiya/origin-setup-etcd-environment\"\n\nExecStartPre=/usr/bin/mkdir - --parents /run/etcd\nExecStart=/bin/podman \\\n run \\\n --net host \\\n --rm - \\\n --volume /run/etcd:/run/etcd:z \\\n ${IMAGE} \\\n --discovery-srv=my-test-cluster.installer.team.coreos.systems - \\\n --output-file=/run/etcd/environment \\\n --v=4 \\\n\n[Install]\nWantedBy=multi-user.target\n" -enabled: true -name: setup-etcd-environment.service diff --git a/templates/_base/master/files/etc-kubernetes-manifests-etcd-member.yaml b/templates/_base/master/files/etc-kubernetes-manifests-etcd-member.yaml new file mode 100644 index 0000000000..df4b40661c --- /dev/null +++ b/templates/_base/master/files/etc-kubernetes-manifests-etcd-member.yaml @@ -0,0 +1,129 @@ +filesystem: "root" +mode: 0644 +path: "/etc/kubernetes/manifests/etcd-member.yaml" +contents: + inline: | + apiVersion: v1 + kind: Pod + metadata: + name: etcd-member + namespace: kube-system + labels: + k8s-app: etcd + spec: + initContainers: + - name: discovery + image: "registry.svc.ci.openshift.org/openshift/origin-v4.0:setup-etcd-environment" + args: + - "run" + - "--discovery-srv={{.ClusterName}}.{{.BaseDomain}}" + - "--output-file=/run/etcd/environment" + - "--v=4" + securityContext: + priviledged: true + volumeMounts: + - name: discovery + mountPath: /run/etcd/ + - name: certs + image: "quay.io/coreos/kube-client-agent:678cc8e6841e2121ebfdb6e2db568fce290b67d6" ## FIXME(abhinav): these images should be replacable by release image. + command: + - /bin/sh + - -c + - | + #!/bin/sh + set -euo pipefail + + source /run/etcd/environment + + [ -e /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt -a \ + -e /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key ] || \ + /usr/local/bin/kube-client-agent \ + request \ + --orgname=system:etcd-servers \ + --cacrt=/etc/ssl/etcd/root-ca.crt \ + --assetsdir=/etc/ssl/etcd \ + --address={{apiServerURL .}} \ + --dnsnames={{etcdServerCertDNSNames .}} \ + --commonname=system:etcd-server:${ETCD_DNS_NAME} \ + --ipaddrs=${ETCD_IPV4_ADDRESS},127.0.0.1 \ + + [ -e /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt -a \ + -e /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key ] || \ + /usr/local/bin/kube-client-agent \ + request \ + --orgname=system:etcd-peers \ + --cacrt=/etc/ssl/etcd/root-ca.crt \ + --assetsdir=/etc/ssl/etcd \ + --address={{apiServerURL .}} \ + --dnsnames={{etcdPeerCertDNSNames .}} \ + --commonname=system:etcd-peer:${ETCD_DNS_NAME} \ + --ipaddrs=${ETCD_IPV4_ADDRESS} \ + + securityContext: + priviledged: true + volumeMounts: + - name: discovery + mountPath: /run/etcd/ + - name: certs + mountPath: /etc/ssl/etcd + containers: + - name: etcd-member + image: "quay.io/coreos/etcd:v3.2.14" ## FIXME(abhinav): these images should be replacable by release image. + command: + - /bin/sh + - -c + - | + #!/bin/sh + set -euo pipefail + + source /run/etcd/environment + + /usr/local/bin/etcd \ + --discovery-srv {{.ClusterName}}.{{.BaseDomain}} \ + --initial-advertise-peer-urls=https://${ETCD_IPV4_ADDRESS}:2380 \ + --cert-file=/etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt \ + --key-file=/etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key \ + --trusted-ca-file=/etc/ssl/etcd/ca.crt \ + --client-cert-auth=true \ + --peer-cert-file=/etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt \ + --peer-key-file=/etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key \ + --peer-trusted-ca-file=/etc/ssl/etcd/ca.crt \ + --peer-client-cert-auth=true \ + --advertise-client-urls=https://${ETCD_IPV4_ADDRESS}:2379 \ + --listen-client-urls=https://0.0.0.0:2379 \ + --listen-peer-urls=https://0.0.0.0:2380 \ + securityContext: + priviledged: true + volumeMounts: + - name: discovery + mountPath: /run/etcd/ + - name: certs + mountPath: /etc/ssl/etcd + - name: data-dir + mountPath: /var/lib/etcd + env: + - name: ETCD_DATA_DIR + value: "/var/lib/etcd" + - name: ETCD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + ports: + - name: peer + containerPort: 2380 + protocol: TCP + - name: server + containerPort: 2379 + protocol: TCP + hostNetwork: true + restartPolicy: Always + volumes: + - name: discovery + hostpath: + path: /run/etcd + - name: certs + hostPath: + path: /etc/ssl/etcd + - name: data-dir + hostPath: + path: /var/lib/etcd \ No newline at end of file diff --git a/templates/_base/master/units/etcd-member.yaml b/templates/_base/master/units/etcd-member.yaml deleted file mode 100644 index 1cd63947eb..0000000000 --- a/templates/_base/master/units/etcd-member.yaml +++ /dev/null @@ -1,103 +0,0 @@ -name: "etcd-member.service" -enabled: true -contents: | - [Unit] - Description=etcd (System Application Container) - Documentation=https://github.com/coreos/etcd - After=network-online.target - Wants=network-online.target - Requires=setup-etcd-environment.service - - [Service] - Restart=on-failure - RestartSec=10s - TimeoutStartSec=0 - LimitNOFILE=40000 - - ## FIXME(abhinav): these images should be replacable by release image. - Environment="SIGNER_IMAGE=quay.io/coreos/kube-client-agent:678cc8e6841e2121ebfdb6e2db568fce290b67d6" - Environment="ETCD_IMAGE=quay.io/coreos/etcd:v3.2.14" - EnvironmentFile=/run/etcd/environment - - ExecStartPre=/bin/sh -c " \ - [ -e /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt -a \ - -e /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key ] || \ - /bin/podman \ - run \ - --rm \ - --volume /etc/ssl/etcd:/etc/ssl/etcd:rw,z \ - --network host \ - '${SIGNER_IMAGE}' \ - request \ - --orgname=system:etcd-servers \ - --cacrt=/etc/ssl/etcd/root-ca.crt \ - --assetsdir=/etc/ssl/etcd \ - --address={{apiServerURL .}} \ - --dnsnames={{etcdServerCertDNSNames .}} \ - --commonname=system:etcd-server:${ETCD_DNS_NAME} \ - --ipaddrs=${ETCD_IPV4_ADDRESS},127.0.0.1 \ - " - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key - - ExecStartPre=/bin/sh -c " \ - [ -e /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt -a \ - -e /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key ] || \ - /bin/podman \ - run \ - --rm \ - --volume /etc/ssl/etcd:/etc/ssl/etcd:rw,z \ - --network host \ - '${SIGNER_IMAGE}' \ - request \ - --orgname=system:etcd-peers \ - --cacrt=/etc/ssl/etcd/root-ca.crt \ - --assetsdir=/etc/ssl/etcd \ - --address={{apiServerURL .}} \ - --dnsnames={{etcdPeerCertDNSNames .}} \ - --commonname=system:etcd-peer:${ETCD_DNS_NAME} \ - --ipaddrs=${ETCD_IPV4_ADDRESS} \ - " - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt - ExecStartPre=/bin/chown etcd:etcd /etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key - - ExecStartPre=-/bin/podman rm etcd-member - ExecStartPre=/usr/bin/mkdir --parents /var/lib/etcd - ExecStartPre=/usr/bin/mkdir --parents /run/etcd - ExecStartPre=/usr/bin/chown etcd /var/lib/etcd - ExecStartPre=/usr/bin/chown etcd /run/etcd - - ExecStart= /usr/bin/bash -c " \ - /bin/podman \ - run \ - --rm \ - --name etcd-member \ - --volume /run/systemd/system:/run/systemd/system:ro,z \ - --volume /etc/ssl/certs:/etc/ssl/certs:ro,z \ - --volume /etc/ssl/etcd:/etc/ssl/etcd:ro,z \ - --volume /var/lib/etcd:/var/lib/etcd:rw,z \ - --volume /etc/ssl/certs:/etc/ssl/certs:ro,z \ - --env 'ETCD_NAME=%m' \ - --env ETCD_DATA_DIR=/var/lib/etcd \ - --network host \ - --user=$(id --user etcd) \ - '${ETCD_IMAGE}' \ - /usr/local/bin/etcd \ - --name ${ETCD_DNS_NAME} \ - --discovery-srv {{.ClusterName}}.{{.BaseDomain}} \ - --initial-advertise-peer-urls=https://${ETCD_IPV4_ADDRESS}:2380 \ - --cert-file=/etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.crt \ - --key-file=/etc/ssl/etcd/system:etcd-server:${ETCD_DNS_NAME}.key \ - --trusted-ca-file=/etc/ssl/etcd/ca.crt \ - --client-cert-auth=true \ - --peer-cert-file=/etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.crt \ - --peer-key-file=/etc/ssl/etcd/system:etcd-peer:${ETCD_DNS_NAME}.key \ - --peer-trusted-ca-file=/etc/ssl/etcd/ca.crt \ - --peer-client-cert-auth=true \ - --advertise-client-urls=https://${ETCD_IPV4_ADDRESS}:2379 \ - --listen-client-urls=https://0.0.0.0:2379 \ - --listen-peer-urls=https://0.0.0.0:2380 \ - " - - [Install] - WantedBy=multi-user.target diff --git a/templates/_base/master/units/setup-etcd-environment.yaml b/templates/_base/master/units/setup-etcd-environment.yaml deleted file mode 100644 index 811a0fdf22..0000000000 --- a/templates/_base/master/units/setup-etcd-environment.yaml +++ /dev/null @@ -1,28 +0,0 @@ -name: "setup-etcd-environment.service" -enabled: true -contents: | - [Unit] - Description=Setup Etcd Environment - Requires=network-online.target - After=network-online.target - - [Service] - Restart=on-failure - RestartSec=5s - - ## FIXME(abhinav): switch this to official image. - Environment="IMAGE=docker.io/abhinavdahiya/origin-setup-etcd-environment" - - ExecStartPre=/usr/bin/mkdir --parents /run/etcd - ExecStart=/bin/podman \ - run \ - --net host \ - --rm \ - --volume /run/etcd:/run/etcd:z \ - ${IMAGE} \ - --discovery-srv={{.ClusterName}}.{{.BaseDomain}} \ - --output-file=/run/etcd/environment \ - --v=4 \ - - [Install] - WantedBy=multi-user.target