github.com/enmand/kubernetes@v1.2.0-alpha.0/docs/getting-started-guides/coreos/cloud-configs/node.yaml (about)

     1  #cloud-config
     2  write-files:
     3    - path: /opt/bin/wupiao
     4      permissions: '0755'
     5      content: |
     6        #!/bin/bash
     7        # [w]ait [u]ntil [p]ort [i]s [a]ctually [o]pen
     8        [ -n "$1" ] && [ -n "$2" ] && while ! curl --output /dev/null \
     9          --silent --head --fail \
    10          http://${1}:${2}; do sleep 1 && echo -n .; done;
    11        exit $?
    12  coreos:
    13    etcd2:
    14      listen-client-urls: http://0.0.0.0:2379,http://0.0.0.0:4001
    15      advertise-client-urls: http://0.0.0.0:2379,http://0.0.0.0:4001
    16      initial-cluster: master=http://<master-private-ip>:2380
    17      proxy: on
    18    fleet:
    19      metadata: "role=node"
    20    units:
    21      - name: fleet.service
    22        command: start
    23      - name: flanneld.service
    24        command: start
    25        drop-ins:
    26          - name: 50-network-config.conf
    27            content: |
    28              [Unit]
    29              Requires=etcd2.service
    30              [Service]
    31              ExecStartPre=/usr/bin/etcdctl set /coreos.com/network/config '{"Network":"10.244.0.0/16", "Backend": {"Type": "vxlan"}}'
    32      - name: docker.service
    33        command: start
    34      - name: setup-network-environment.service
    35        command: start
    36        content: |
    37          [Unit]
    38          Description=Setup Network Environment
    39          Documentation=https://github.com/kelseyhightower/setup-network-environment
    40          Requires=network-online.target
    41          After=network-online.target
    42  
    43          [Service]
    44          ExecStartPre=-/usr/bin/mkdir -p /opt/bin
    45          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
    46          ExecStartPre=/usr/bin/chmod +x /opt/bin/setup-network-environment
    47          ExecStart=/opt/bin/setup-network-environment
    48          RemainAfterExit=yes
    49          Type=oneshot
    50      - name: kube-proxy.service
    51        command: start
    52        content: |
    53          [Unit]
    54          Description=Kubernetes Proxy
    55          Documentation=https://github.com/GoogleCloudPlatform/kubernetes
    56          Requires=setup-network-environment.service
    57          After=setup-network-environment.service
    58  
    59          [Service]
    60          ExecStartPre=/usr/bin/curl -L -o /opt/bin/kube-proxy -z /opt/bin/kube-proxy https://storage.googleapis.com/kubernetes-release/release/v1.0.3/bin/linux/amd64/kube-proxy
    61          ExecStartPre=/usr/bin/chmod +x /opt/bin/kube-proxy
    62          # wait for kubernetes master to be up and ready
    63          ExecStartPre=/opt/bin/wupiao <master-private-ip> 8080
    64          ExecStart=/opt/bin/kube-proxy \
    65          --master=<master-private-ip>:8080 \
    66          --logtostderr=true
    67          Restart=always
    68          RestartSec=10
    69      - name: kube-kubelet.service
    70        command: start
    71        content: |
    72          [Unit]
    73          Description=Kubernetes Kubelet
    74          Documentation=https://github.com/GoogleCloudPlatform/kubernetes
    75          Requires=setup-network-environment.service
    76          After=setup-network-environment.service
    77  
    78          [Service]
    79          EnvironmentFile=/etc/network-environment
    80          ExecStartPre=/usr/bin/curl -L -o /opt/bin/kubelet -z /opt/bin/kubelet https://storage.googleapis.com/kubernetes-release/release/v1.0.3/bin/linux/amd64/kubelet
    81          ExecStartPre=/usr/bin/chmod +x /opt/bin/kubelet
    82          # wait for kubernetes master to be up and ready
    83          ExecStartPre=/opt/bin/wupiao <master-private-ip> 8080
    84          ExecStart=/opt/bin/kubelet \
    85          --address=0.0.0.0 \
    86          --port=10250 \
    87          --hostname-override=${DEFAULT_IPV4} \
    88          --api-servers=<master-private-ip>:8080 \
    89          --allow-privileged=true \
    90          --logtostderr=true \
    91          --cadvisor-port=4194 \
    92          --healthz-bind-address=0.0.0.0 \
    93          --healthz-port=10248
    94          Restart=always
    95          RestartSec=10
    96    update:
    97      group: alpha
    98      reboot-strategy: off