
Need to actually start etcd2. Right now it is just being configured and using the CoreOS Openstack image, nothing else is starting etcd2.
94 lines
3.4 KiB
YAML
94 lines
3.4 KiB
YAML
#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://<master-private-ip>: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 <master-private-ip> 8080
|
|
ExecStart=/opt/bin/kube-proxy \
|
|
--master=<master-private-ip>: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 <master-private-ip> 8080
|
|
ExecStart=/opt/bin/kubelet \
|
|
--address=0.0.0.0 \
|
|
--port=10250 \
|
|
--hostname-override=${DEFAULT_IPV4} \
|
|
--api-servers=<master-private-ip>: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
|