-
Notifications
You must be signed in to change notification settings - Fork 112
Expand file tree
/
Copy pathdeis-kube-apiserver.service
More file actions
33 lines (31 loc) · 1.76 KB
/
deis-kube-apiserver.service
File metadata and controls
33 lines (31 loc) · 1.76 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
[Unit]
Description=Kubernetes API Server
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
Requires=fleet.service docker.service flanneld.service
After=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=/bin/bash -c "if etcdctl get /kube-serviceaccount >/dev/null 2>&1; then etcdctl get /kube-serviceaccount > /opt/bin/kube-serviceaccount.key; else /bin/openssl genrsa -out /opt/bin/kube-serviceaccount.key 2048 2>/dev/null; etcdctl set /kube-serviceaccount < /opt/bin/kube-serviceaccount.key; fi"
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=$(curl -s 127.0.0.1:4001/v2/machines | sed 's/ //g') \
--public_address_override=${COREOS_PRIVATE_IPV4} \
--logtostderr=true \
--runtime_config=api/v1"
ExecStartPost=/bin/bash -c "fleetctl stop deis-kube-scheduler deis-kube-controller-manager deis-kube-kubelet deis-kube-proxy; sleep 2; fleetctl start deis-kube-scheduler deis-kube-controller-manager deis-kube-kubelet deis-kube-proxy"
Restart=always
RestartSec=10
SuccessExitStatus=2
[Install]
WantedBy=multi-user.target