Created
June 11, 2015 18:50
-
-
Save lgfausak/eff8931655f9e21b2c53 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #cloud-config | |
| hostname: ad1.tacodata.net | |
| ssh_authorized_keys: | |
| - ssh-rsa yourkey | |
| write_files: | |
| - path: /etc/systemd/system/mk-docker-dns-opts.service | |
| permissions: 0644 | |
| owner: core:core | |
| encoding: gzip+base64 | |
| content: | | |
| H4sIAMZrbFUAA2VQzW7CMAy+5ymsCgmY1OY6acoktnaXsTJROAGK0tSlEcXpkoBA2sOvlO00+WBb | |
| tr8fb9Zkwo6l6LUzXTCWxIc6IKR5AcrtobYOUqsP6KBSeLQEbFYHdKJuFRG2VeLRnY1GtsSvk3Ho | |
| /0/YprhXO7a6digsoW9s6C+OytAAl11MEFf0LLugLoJyQfDSEC+VbyDWMEbdWBhN9g47eJvP8jyb | |
| y2L9kmcr4O5E/JeU+1NJGBKkM3yDxwoiz5MHwdPF63u2lIvPleytie12G8VxRR74k5f9hoR7+5gM | |
| ce9ij8rpBgz1Ekm1f458Eo0mWgXgZ+V4a7VqubZUm32fHFrPK3uzNo1uPDKawvMgshoeKXtkabtB | |
| 5Jj9ADQfQ/2BAQAA | |
| # [Unit] | |
| # Description=Make DNS arg for Docker daemon | |
| # After=flanneld.service | |
| # Requires=flanneld.service | |
| # | |
| # [Service] | |
| # Type=oneshot | |
| # RemainAfterExit=yes | |
| # ExecStart=/bin/bash -c 'echo $(grep FLANNEL_SUBNET /run/flannel/subnet.env | sed "s/.*=/DOCKER_OPT_DNS=\\\"--dns /;s_/.*_ --dns 8.8.8.8 --dns-search internal.services."$(cat /var/local/config/coreos/domain)"\\\"_") >/run/docker_dns_opt.env' | |
| write_files: | |
| - path: /home/core/prs/k.tar.gz | |
| permissions: 0644 | |
| owner: core:core | |
| encoding: gzip+base64 | |
| content: | | |
| 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 | |
| write_files: | |
| - path: /var/local/config/k8s/master | |
| owner: core:core | |
| content: | | |
| 1 | |
| write_files: | |
| - path: /var/local/config/k8s/minion | |
| owner: core:core | |
| content: | | |
| 1 | |
| write_files: | |
| - path: /var/local/config/coreos/domain | |
| owner: core:core | |
| content: | | |
| tacodata.net | |
| write_files: | |
| - path: /var/local/config/coreos/external_ip | |
| owner: core:core | |
| content: | | |
| $public_ipv4 | |
| write_files: | |
| - path: /var/local/config/coreos/internal_ip | |
| owner: core:core | |
| content: | | |
| $private_ipv4 | |
| write_files: | |
| - path: /home/core/.inputrc | |
| permissions: 0644 | |
| owner: core:core | |
| content: | | |
| set editing-mode vi | |
| write_files: | |
| - path: /opt/bin/waiter.sh | |
| permissions: 0755 | |
| owner: root | |
| content: | | |
| #! /usr/bin/bash | |
| until curl http://127.0.0.1:4001/v2/machines; do sleep 2; done | |
| write_files: | |
| - path: /opt/bin/waitformaster.sh | |
| permissions: 0755 | |
| owner: root | |
| content: | | |
| #! /usr/bin/bash | |
| #not running a local etcd, so, can't get the ip address | |
| # wait for the etcd daemon to present itself. | |
| until mydata=$(wget -T 2 -qO - https://discovery.etcd.io/9b724d3890f46399eafd3fe6c300fb26 | grep http); do sleep 2; done | |
| #mymaster=$(echo $mydata | sed -e 's_.*http://__' -e 's_:7001.*__') | |
| mymaster=$(echo $mydata | sed -e 's_.*http://__' -e 's_[^[0-9\.].*__') | |
| #can do it this way if we have a daemon running | |
| #until mymaster=$(etcdctl get /private/master); do sleep 2; done | |
| echo $mymaster master_private_ip >> /etc/hosts | |
| write_files: | |
| - path: /opt/bin/master_up.sh | |
| permissions: 0755 | |
| owner: root | |
| content: | | |
| #! /usr/bin/bash | |
| # having issues with etcd timeouts. | |
| until etcdctl mkdir /private; do sleep 2; done | |
| until etcdctl set /private/master $(cat /var/local/config/coreos/internal_ip); do sleep 2; done | |
| echo $(cat /var/local/config/coreos/internal_ip) master_private_ip >> /etc/hosts | |
| (cd /home/core/prs; tar xzvf k.tar.gz) | |
| chown -R core:core /home/core/prs | |
| coreos: | |
| fleet: | |
| etcd-servers: http://localhost:4001 | |
| metadata: "role=master" | |
| flannel: | |
| interface: eth1 | |
| units: | |
| - 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/wget -N -P /opt/bin 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: etcd2.service | |
| command: start | |
| content: | | |
| [Unit] | |
| Description=etcd2 | |
| Requires=setup-network-environment.service | |
| After=setup-network-environment.service | |
| [Service] | |
| EnvironmentFile=/etc/network-environment | |
| User=etcd | |
| PermissionsStartOnly=true | |
| ExecStart=/usr/bin/etcd2 --name $private_ipv4 --advertise-client-urls http://$private_ipv4:2379 --discovery https://discovery.etcd.io/9b724d3890f46399eafd3fe6c300fb26 --data-dir /var/lib/etcd --initial-advertise-peer-urls http://$private_ipv4:2380 --listen-client-urls http://0.0.0.0:2379,http://0.0.0.0:4001 --listen-peer-urls http://$private_ipv4:2380,http://$private_ipv4:7001 | |
| Restart=always | |
| RestartSec=10s | |
| - name: fleet.service | |
| command: start | |
| - name: etcd-waiter.service | |
| command: start | |
| content: | | |
| [Unit] | |
| Description=etcd waiter | |
| Wants=network-online.target | |
| Wants=etcd2.service | |
| After=etcd2.service | |
| After=network-online.target | |
| Before=flanneld.service | |
| [Service] | |
| ExecStart=/usr/bin/bash /opt/bin/waiter.sh | |
| RemainAfterExit=true | |
| Type=oneshot | |
| - name: flanneld.service | |
| command: start | |
| drop-ins: | |
| - name: 50-network-config.conf | |
| content: | | |
| [Unit] | |
| Requires=etcd2.service | |
| [Service] | |
| ExecStartPre=/usr/bin/etcdctl set /coreos.com/network/config '{"Network":"10.1.0.0/16", "Backend": {"Type": "vxlan"}}' | |
| - name: docker-cache.service | |
| command: start | |
| content: | | |
| [Unit] | |
| Description=Docker cache proxy | |
| Requires=early-docker.service | |
| After=early-docker.service | |
| Before=early-docker.target | |
| [Service] | |
| Restart=always | |
| TimeoutStartSec=0 | |
| RestartSec=5 | |
| Environment="TMPDIR=/var/tmp/" | |
| Environment="DOCKER_HOST=unix:///var/run/early-docker.sock" | |
| ExecStartPre=-/usr/bin/docker kill docker-registry | |
| ExecStartPre=-/usr/bin/docker rm docker-registry | |
| ExecStartPre=/usr/bin/docker pull quay.io/devops/docker-registry:latest | |
| # GUNICORN_OPTS is an workaround for | |
| # https://github.com/docker/docker-registry/issues/892 | |
| ExecStart=/usr/bin/docker run --rm --net host --name docker-registry -e STANDALONE=false -e GUNICORN_OPTS=[--preload] -e MIRROR_SOURCE=https://registry-1.docker.io -e MIRROR_SOURCE_INDEX=https://index.docker.io -e MIRROR_TAGS_CACHE_TTL=1800 quay.io/devops/docker-registry:latest | |
| - name: docker.service | |
| drop-ins: | |
| - name: 51-docker-mirror.conf | |
| content: | | |
| [Unit] | |
| # making sure that docker-cache is up and that flanneld finished | |
| # startup, otherwise containers won't land in flannel's network... | |
| Requires=docker-cache.service flanneld.service | |
| After=docker-cache.service flanneld.service | |
| [Service] | |
| Environment=DOCKER_OPTS='--registry-mirror=http://$private_ipv4:5000' | |
| - name: kube-apiserver.service | |
| command: start | |
| content: | | |
| [Unit] | |
| Description=Kubernetes API Server | |
| Documentation=https://github.com/GoogleCloudPlatform/kubernetes | |
| Requires=etcd2.service | |
| After=etcd2.service | |
| [Service] | |
| ExecStartPre=-/usr/bin/mkdir -p /opt/bin | |
| ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/kubernetes-release/release/v0.18.2/bin/linux/amd64/kube-apiserver | |
| ExecStartPre=/usr/bin/chmod +x /opt/bin/kube-apiserver | |
| ExecStart=/opt/bin/kube-apiserver --address=0.0.0.0 --port=8080 --portal_net=10.100.0.0/16 --etcd_servers=http://127.0.0.1:4001 --public_address_override=$public_ipv4 --logtostderr=true | |
| Restart=always | |
| RestartSec=10 | |
| - name: kube-controller-manager.service | |
| command: start | |
| content: | | |
| [Unit] | |
| Description=Kubernetes Controller Manager | |
| Documentation=https://github.com/GoogleCloudPlatform/kubernetes | |
| Requires=kube-apiserver.service | |
| After=kube-apiserver.service | |
| [Service] | |
| ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/kubernetes-release/release/v0.18.2/bin/linux/amd64/kube-controller-manager | |
| ExecStartPre=/usr/bin/chmod +x /opt/bin/kube-controller-manager | |
| ExecStart=/opt/bin/kube-controller-manager --master=127.0.0.1:8080 --logtostderr=true | |
| Restart=always | |
| RestartSec=10 | |
| - name: kube-scheduler.service | |
| command: start | |
| content: | | |
| [Unit] | |
| Description=Kubernetes Scheduler | |
| Documentation=https://github.com/GoogleCloudPlatform/kubernetes | |
| Requires=kube-apiserver.service | |
| After=kube-apiserver.service | |
| [Service] | |
| ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/kubernetes-release/release/v0.18.2/bin/linux/amd64/kube-scheduler | |
| ExecStartPre=/usr/bin/chmod +x /opt/bin/kube-scheduler | |
| ExecStart=/opt/bin/kube-scheduler --master=127.0.0.1:8080 | |
| Restart=always | |
| RestartSec=10 | |
| - name: kube-register.service | |
| command: start | |
| content: | | |
| [Unit] | |
| Description=Kubernetes Registration Service | |
| Documentation=https://github.com/kelseyhightower/kube-register | |
| Requires=kube-apiserver.service | |
| After=kube-apiserver.service | |
| Requires=fleet.service | |
| After=fleet.service | |
| [Service] | |
| ExecStartPre=/usr/bin/wget -N -O /opt/bin/kube-register https://github.com/kelseyhightower/kube-register/releases/download/v0.0.3/kube-register-0.0.3-linux-amd64 | |
| ExecStartPre=/usr/bin/chmod +x /opt/bin/kube-register | |
| ExecStart=/opt/bin/kube-register --metadata=role=node --fleet-endpoint=unix:///var/run/fleet.sock --api-endpoint=http://127.0.0.1:8080 | |
| Restart=always | |
| RestartSec=10 | |
| - name: master-done.service | |
| command: start | |
| content: | | |
| [Unit] | |
| Description=master done with setup | |
| Wants=network-online.target | |
| Wants=kube-register.service | |
| After=kube-register.service | |
| After=network-online.target | |
| [Service] | |
| ExecStartPre=/usr/bin/wget -N -P /opt/bin https://storage.googleapis.com/kubernetes-release/release/v0.18.2/bin/linux/amd64/kubectl | |
| ExecStartPre=/usr/bin/chmod +x /opt/bin/kubectl | |
| ExecStartPre=/usr/bin/bash /opt/bin/master_up.sh | |
| ExecStart=/opt/bin/kubectl create -f /home/core/prs/sky.app | |
| RemainAfterExit=true | |
| Type=oneshot | |
| update: | |
| group: alpha | |
| reboot-strategy: off |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment