Updated master section in AWS Cloudformation template. Refs #3543

This commit is contained in:
Paulo Pires 2015-01-16 11:29:21 +00:00
parent 20eb0b2bf3
commit 1571dd69f2

View File

@ -113,27 +113,96 @@
"SecurityGroups": [{"Ref": "KubernetesSecurityGroup"}],
"UserData": { "Fn::Base64": {"Fn::Join" : ["", [
"#cloud-config\n\n",
---\n,
write_files:\n,
- path: /opt/bin/waiter.sh\n,
owner: root\n,
content: |\n,
#! /usr/bin/bash\n,
until curl http://127.0.0.1:4001/v2/machines; do sleep 2; done\n,
"coreos:\n",
" fleet:\n",
" etcd_servers: http://127.0.0.1:4001\n",
" metadata: role=master\n",
" etcd:\n",
" name: etcd\n",
" addr: $private_ipv4:4001\n",
" bind-addr: 0.0.0.0\n",
" peer-addr: $private_ipv4:7001\n",
" cluster-active-size: 1\n",
" etcd-http-read-timeout: 86400\n",
" snapshot: true\n",
" units:\n",
" public-ip: $public_ipv4\n",
units:\n",
- name: setup-network-environment.service\n",
command: start\n",
content: |\n",
[Unit]\n",
Description=Setup Network Environment\n",
Documentation=https://github.com/kelseyhightower/setup-network-environment\n",
Requires=network-online.target\n",
After=network-online.target\n\n,
[Service]\n,
ExecStartPre=/usr/bin/mkdir -p /opt/bin\n,
ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/k8s/setup-network-environment\n,
ExecStartPre=/usr/bin/chmod +x /opt/bin/setup-network-environment\n,
ExecStart=/opt/bin/setup-network-environment\n,
RemainAfterExit=yes\n,
Type=oneshot\n,
" - name: etcd.service\n",
" command: start\n",
content: |\n",
[Unit]\n",
Description=etcd\n",
Requires=setup-network-environment.service\n",
After=setup-network-environment.service\n\n,
[Service]
EnvironmentFile=/etc/network-environment\n",
User=etcd\n",
PermissionsStartOnly=true\n",
ExecStart=/usr/bin/etcd \\\n,
--name $public_ipv4 \\\n",
--addr $public_ipv4:4001 \\\n",
--bind-addr 0.0.0.0 \\\n",
--cluster-active-size 1 \\\n",
--data-dir /var/lib/etcd \\\n",
--http-read-timeout 86400 \\\n",
--peer-addr $public_ipv4:7001 \\\n,
--snapshot true\n",
Restart=always\n",
RestartSec=10s\n",
- name: fleet.socket\n",
command: start\n",
content: |\n",
[Socket]\n",
ListenStream=/var/run/fleet.sock\n",
" - name: fleet.service\n",
" command: start\n",
content: |\n",
[Unit]\n",
Description=fleet daemon\n",
Wants=etcd.service\n",
After=etcd.service\n",
Wants=fleet.socket\n",
After=fleet.socket\n\n,
[Service]\n,
Environment=\FLEET_ETCD_SERVERS=http://127.0.0.1:4001\\n,
Environment=\FLEET_METADATA=role=master\\n,
ExecStart=/usr/bin/fleetd\n,
Restart=always\n,
RestartSec=10s\n,
- name: etcd-waiter.service\n,
command: start\n,
content: |\n,
[Unit]\n,
Description=etcd waiter\n,
Wants=network-online.target\n,
Wants=etcd.service\n,
After=etcd.service\n,
After=network-online.target\n,
Before=flannel.service\n,
Before=setup-network-environment.service\n\n,
[Service]\n,
ExecStartPre=/usr/bin/chmod +x /opt/bin/waiter.sh\n,
ExecStart=/usr/bin/bash /opt/bin/waiter.sh\n,
RemainAfterExit=true\n,
Type=oneshot\n,
" - name: flannel.service\n",
" command: start\n",
" content: |\n",
" [Unit]\n",
" Requires=etcd-waiter.service\n",
" After=etcd-waiter.service\n",
" Requires=etcd.service\n",
" After=etcd.service\n",
" After=network-online.target\n",
@ -144,7 +213,7 @@
" ExecStartPre=-/usr/bin/mkdir -p /opt/bin\n",
" ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/k8s/flanneld\n",
" ExecStartPre=/usr/bin/chmod +x /opt/bin/flanneld\n",
" ExecStartPre=-/usr/bin/etcdctl mk /coreos.com/network/config '{\"Network\":\"10.0.0.0/16\"}'\n",
" ExecStartPre=-/usr/bin/etcdctl mk /coreos.com/network/config '{\"Network\":\"10.244.0.0/16\"}'\n",
" ExecStart=/opt/bin/flanneld\n",
" - name: kube-apiserver.service\n",
" command: start\n",
@ -155,13 +224,14 @@
" Requires=etcd.service\n",
" After=etcd.service\n\n",
" [Service]\n",
" ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/kubernetes-release/release/v0.5.4/bin/linux/amd64/kube-apiserver\n",
" ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/kubernetes-release/release/v0.8.1/bin/linux/amd64/kube-apiserver\n",
" ExecStartPre=/usr/bin/chmod +x /opt/bin/kube-apiserver\n",
" ExecStart=/opt/bin/kube-apiserver \\\n",
" --address=0.0.0.0 \\\n",
" --port=8080 \\\n",
" --portal_net 10.1.0.0/16 \\\n",
" --portal_net 10.244.0.0/16 \\\n",
" --etcd_servers=http://127.0.0.1:4001 \\\n",
--public_address_override=$private_ipv4 \\\n",
" --logtostderr=true\n",
" Restart=always\n",
" RestartSec=10\n",
@ -174,7 +244,7 @@
" Requires=kube-apiserver.service\n",
" After=kube-apiserver.service\n\n",
" [Service]\n",
" ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/kubernetes-release/release/v0.5.4/bin/linux/amd64/kube-controller-manager\n",
" ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/kubernetes-release/release/v0.8.1/bin/linux/amd64/kube-controller-manager\n",
" ExecStartPre=/usr/bin/chmod +x /opt/bin/kube-controller-manager\n",
" ExecStart=/opt/bin/kube-controller-manager \\\n",
" --master=127.0.0.1:8080 \\\n",
@ -190,27 +260,11 @@
" Requires=kube-apiserver.service\n",
" After=kube-apiserver.service\n\n",
" [Service]\n",
" ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/kubernetes-release/release/v0.5.4/bin/linux/amd64/kube-scheduler\n",
" ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/kubernetes-release/release/v0.8.1/bin/linux/amd64/kube-scheduler\n",
" ExecStartPre=/usr/bin/chmod +x /opt/bin/kube-scheduler\n",
" ExecStart=/opt/bin/kube-scheduler --master=127.0.0.1:8080\n",
" Restart=always\n",
" RestartSec=10\n",
" - name: kube-proxy.service\n",
" command: start\n",
" content: |\n",
" [Unit]\n",
" Description=Kubernetes Proxy\n",
" Documentation=https://github.com/GoogleCloudPlatform/kubernetes\n",
" Requires=etcd.service\n",
" After=etcd.service\n\n",
" [Service]\n",
" ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/kubernetes-release/release/v0.5.4/bin/linux/amd64/kube-proxy\n",
" ExecStartPre=/usr/bin/chmod +x /opt/bin/kube-proxy\n",
" ExecStart=/opt/bin/kube-proxy \\\n",
" --etcd_servers=http://127.0.0.1:4001 \\\n",
" --logtostderr=true\n",
" Restart=always\n",
" RestartSec=10\n",
" - name: kube-register.service\n",
" command: start\n",
" content: |\n",
@ -219,6 +273,8 @@
" Documentation=https://github.com/kelseyhightower/kube-register\n",
" Requires=kube-apiserver.service\n",
" After=kube-apiserver.service\n\n",
" Requires=fleet.service\n",
" After=fleet.service\n\n",
" [Service]\n",
" ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/k8s/kube-register\n",
" ExecStartPre=/usr/bin/chmod +x /opt/bin/kube-register\n",