[Unit]
Description=Kubernetes API Server
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
Requires=etcd2.service fleet.service docker.service flanneld.service
After=etcd2.service fleet.service docker.service flanneld.service
[Service]
EnvironmentFile=/etc/environment
ExecStartPre=-/bin/sh -c "etcdctl get /deis/scheduler/k8s/master >/dev/null 2>&1 || etcdctl mk /deis/scheduler/k8s/master"
ExecStartPre=/bin/sh -c "etcdctl set /deis/scheduler/k8s/master $COREOS_PRIVATE_IPV4"
ExecStartPre=/bin/bash -c "/opt/bin/download-k8s-binary kube-apiserver"
ExecStartPre=/opt/bin/kube-serviceaccount
ExecStart=/bin/bash -c "/opt/bin/kube-apiserver \
  --service_account_key_file=/opt/bin/kube-serviceaccount.key \
  --service_account_lookup=false \
  --admission_control=NamespaceLifecycle,NamespaceAutoProvision,LimitRanger,SecurityContextDeny,ServiceAccount,ResourceQuota \
  --allow_privileged=true \
  --insecure_bind_address=0.0.0.0 \
  --insecure_port=8080 \
  --kubelet_https=true \
  --secure_port=6443 \
  --service-cluster-ip-range=10.100.0.0/16 \
  --etcd_servers=http://$(curl -s 127.0.0.1:4001/v2/machines | sed 's/ //g') \
  --public_address_override=${COREOS_PRIVATE_IPV4} \
  --logtostderr=true \
  --runtime_config=api/v1"
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
