#cloud-config write-files: - path: /opt/bin/wupiao permissions: '0755' content: | #!/bin/bash # [w]ait [u]ntil [p]ort [i]s [a]ctually [o]pen [ -n "$1" ] && [ -n "$2" ] && while ! curl --output /dev/null \ --silent --head --fail \ http://${1}:${2}; do sleep 1 && echo -n .; done; exit $? coreos: etcd2: listen-client-urls: http://0.0.0.0:2379,http://0.0.0.0:4001 advertise-client-urls: http://0.0.0.0:2379,http://0.0.0.0:4001 initial-cluster: master=http://:2380 proxy: on fleet: metadata: "role=node" units: - name: etcd2.service command: start - name: fleet.service command: start - name: flanneld.service command: start - name: docker.service command: start - name: setup-network-environment.service command: start content: | [Unit] Description=Setup Network Environment Documentation=https://github.com/kelseyhightower/setup-network-environment Requires=network-online.target After=network-online.target [Service] ExecStartPre=-/usr/bin/mkdir -p /opt/bin ExecStartPre=/usr/bin/curl -L -o /opt/bin/setup-network-environment -z /opt/bin/setup-network-environment https://github.com/kelseyhightower/setup-network-environment/releases/download/v1.0.0/setup-network-environment ExecStartPre=/usr/bin/chmod +x /opt/bin/setup-network-environment ExecStart=/opt/bin/setup-network-environment RemainAfterExit=yes Type=oneshot - name: kube-proxy.service command: start content: | [Unit] Description=Kubernetes Proxy Documentation=https://github.com/kubernetes/kubernetes Requires=setup-network-environment.service After=setup-network-environment.service [Service] ExecStartPre=/usr/bin/curl -L -o /opt/bin/kube-proxy -z /opt/bin/kube-proxy https://storage.googleapis.com/kubernetes-release/release/v1.1.2/bin/linux/amd64/kube-proxy ExecStartPre=/usr/bin/chmod +x /opt/bin/kube-proxy # wait for kubernetes master to be up and ready ExecStartPre=/opt/bin/wupiao 8080 ExecStart=/opt/bin/kube-proxy \ --master=:8080 \ --logtostderr=true Restart=always RestartSec=10 - name: kube-kubelet.service command: start content: | [Unit] Description=Kubernetes Kubelet Documentation=https://github.com/kubernetes/kubernetes Requires=setup-network-environment.service After=setup-network-environment.service [Service] EnvironmentFile=/etc/network-environment ExecStartPre=/usr/bin/curl -L -o /opt/bin/kubelet -z /opt/bin/kubelet https://storage.googleapis.com/kubernetes-release/release/v1.1.2/bin/linux/amd64/kubelet ExecStartPre=/usr/bin/chmod +x /opt/bin/kubelet # wait for kubernetes master to be up and ready ExecStartPre=/opt/bin/wupiao 8080 ExecStart=/opt/bin/kubelet \ --address=0.0.0.0 \ --port=10250 \ --hostname-override=${DEFAULT_IPV4} \ --api-servers=:8080 \ --allow-privileged=true \ --logtostderr=true \ --cadvisor-port=4194 \ --healthz-bind-address=0.0.0.0 \ --healthz-port=10248 Restart=always RestartSec=10 update: group: alpha reboot-strategy: off