2015-12-11 18:52:20 +08:00
|
|
|
apiVersion: v1
|
|
|
|
kind: Pod
|
|
|
|
metadata:
|
|
|
|
name: kube-controller-manager
|
2016-12-13 18:43:06 +08:00
|
|
|
namespace: {{system_namespace}}
|
2016-11-09 21:15:27 +08:00
|
|
|
labels:
|
|
|
|
k8s-app: kube-controller
|
2015-12-11 18:52:20 +08:00
|
|
|
spec:
|
|
|
|
hostNetwork: true
|
|
|
|
containers:
|
|
|
|
- name: kube-controller-manager
|
2015-12-14 16:54:58 +08:00
|
|
|
image: {{ hyperkube_image_repo }}:{{ hyperkube_image_tag }}
|
2016-11-22 23:16:04 +08:00
|
|
|
imagePullPolicy: {{ k8s_image_pull_policy }}
|
2015-12-11 18:52:20 +08:00
|
|
|
command:
|
|
|
|
- /hyperkube
|
|
|
|
- controller-manager
|
2016-07-13 23:13:47 +08:00
|
|
|
- --master={{ kube_apiserver_endpoint }}
|
2016-03-22 05:25:09 +08:00
|
|
|
- --leader-elect=true
|
2015-12-11 18:52:20 +08:00
|
|
|
- --service-account-private-key-file={{ kube_cert_dir }}/apiserver-key.pem
|
|
|
|
- --root-ca-file={{ kube_cert_dir }}/ca.pem
|
2016-12-07 17:09:04 +08:00
|
|
|
- --cluster-signing-cert-file={{ kube_cert_dir }}/ca.pem
|
|
|
|
- --cluster-signing-key-file={{ kube_cert_dir }}/ca-key.pem
|
2016-07-08 22:45:34 +08:00
|
|
|
- --enable-hostpath-provisioner={{ kube_hostpath_dynamic_provisioner }}
|
2016-11-25 18:33:39 +08:00
|
|
|
- --v={{ kube_log_level }}
|
2016-11-29 17:20:28 +08:00
|
|
|
{% if cloud_provider is defined and cloud_provider in ["openstack", "azure"] %}
|
2016-08-24 00:42:22 +08:00
|
|
|
- --cloud-provider={{cloud_provider}}
|
2016-03-31 20:38:08 +08:00
|
|
|
- --cloud-config={{ kube_config_dir }}/cloud_config
|
2016-08-24 21:48:32 +08:00
|
|
|
{% elif cloud_provider is defined and cloud_provider == "aws" %}
|
2016-08-24 00:42:22 +08:00
|
|
|
- --cloud-provider={{cloud_provider}}
|
2016-12-08 00:41:53 +08:00
|
|
|
{% endif %}
|
|
|
|
{% if kube_network_plugin is defined and kube_network_plugin == 'cloud' %}
|
|
|
|
- --allocate-node-cidrs=true
|
|
|
|
- --configure-cloud-routes=true
|
|
|
|
- --cluster-cidr={{ kube_pods_subnet }}
|
2016-03-31 20:38:08 +08:00
|
|
|
{% endif %}
|
2015-12-11 18:52:20 +08:00
|
|
|
livenessProbe:
|
|
|
|
httpGet:
|
|
|
|
host: 127.0.0.1
|
|
|
|
path: /healthz
|
|
|
|
port: 10252
|
2016-02-01 20:41:49 +08:00
|
|
|
initialDelaySeconds: 30
|
|
|
|
timeoutSeconds: 10
|
2015-12-11 18:52:20 +08:00
|
|
|
volumeMounts:
|
|
|
|
- mountPath: {{ kube_cert_dir }}
|
|
|
|
name: ssl-certs-kubernetes
|
|
|
|
readOnly: true
|
2016-11-29 17:20:28 +08:00
|
|
|
{% if cloud_provider is defined and cloud_provider in ["openstack", "azure"] %}
|
2016-03-31 20:38:08 +08:00
|
|
|
- mountPath: {{ kube_config_dir }}/cloud_config
|
|
|
|
name: cloudconfig
|
|
|
|
readOnly: true
|
|
|
|
{% endif %}
|
2015-12-11 18:52:20 +08:00
|
|
|
volumes:
|
|
|
|
- hostPath:
|
|
|
|
path: {{ kube_cert_dir }}
|
|
|
|
name: ssl-certs-kubernetes
|
2016-11-29 17:20:28 +08:00
|
|
|
{% if cloud_provider is defined and cloud_provider in ["openstack", "azure"] %}
|
2016-03-31 20:38:08 +08:00
|
|
|
- hostPath:
|
|
|
|
path: {{ kube_config_dir }}/cloud_config
|
|
|
|
name: cloudconfig
|
|
|
|
{% endif %}
|