Merge pull request #7619 from a-robinson/dns

Convert the skydns rc to use v1beta3 and add a health check to it
This commit is contained in:
Alex Robinson 2015-05-05 10:44:41 -07:00
commit 20ea35105d

View File

@ -1,63 +1,66 @@
apiVersion: v1beta3
kind: ReplicationController kind: ReplicationController
apiVersion: v1beta1 metadata:
id: kube-dns labels:
namespace: default
labels:
k8s-app: kube-dns
kubernetes.io/cluster-service: "true"
desiredState:
replicas: {{ pillar['dns_replicas'] }}
replicaSelector:
k8s-app: kube-dns k8s-app: kube-dns
podTemplate: kubernetes.io/cluster-service: "true"
labels: name: kube-dns
name: kube-dns namespace: default
k8s-app: kube-dns spec:
kubernetes.io/cluster-service: "true" replicas: {{ pillar['dns_replicas'] }}
desiredState: selector:
manifest: k8s-app: kube-dns
version: v1beta2 template:
id: kube-dns metadata:
dnsPolicy: "Default" # Don't use cluster DNS. labels:
containers: k8s-app: kube-dns
- name: etcd kubernetes.io/cluster-service: "true"
image: gcr.io/google_containers/etcd:2.0.9 name: kube-dns
command: [ spec:
"/usr/local/bin/etcd", containers:
"--addr", - name: etcd
"127.0.0.1:4001", image: gcr.io/google_containers/etcd:2.0.9
"--bind-addr", command:
"127.0.0.1:4001", - /usr/local/bin/etcd
"-initial-cluster-token=skydns-etcd", - --addr
] - 127.0.0.1:4001
- name: kube2sky - --bind-addr
image: gcr.io/google_containers/kube2sky:1.4 - 127.0.0.1:4001
volumeMounts: - -initial-cluster-token=skydns-etcd
- name: dns-token - name: kube2sky
mountPath: /etc/dns_token image: gcr.io/google_containers/kube2sky:1.4
readOnly: true args:
command: [ # entrypoint = "/kube2sky"
# entrypoint = "/kube2sky", - -domain={{ pillar['dns_domain'] }}
"-domain={{ pillar['dns_domain'] }}", - -kubecfg_file=/etc/dns_token/kubeconfig
"-kubecfg_file=/etc/dns_token/kubeconfig", volumeMounts:
] - mountPath: /etc/dns_token
- name: skydns name: dns-token
image: gcr.io/google_containers/skydns:2015-03-11-001 readOnly: true
command: [ - name: skydns
# entrypoint = "/skydns", image: gcr.io/google_containers/skydns:2015-03-11-001
"-machines=http://localhost:4001", args:
"-addr=0.0.0.0:53", # entrypoint = "/skydns"
"-domain={{ pillar['dns_domain'] }}.", - -machines=http://localhost:4001
] - -addr=0.0.0.0:53
ports: - -domain={{ pillar['dns_domain'] }}.
- name: dns ports:
containerPort: 53 - containerPort: 53
protocol: UDP name: dns
volumes: protocol: UDP
- name: dns-token livenessProbe:
source: exec:
secret: command:
target: - "/bin/sh"
kind: Secret - "-c"
namespace: default # The health check succeeds by virtue of not hanging. It'd be nice
name: token-system-dns # to also check local services are known, but if that's broken then
# etcd or kube2sky has to be restarted, not skydns.
- "nslookup foobar 127.0.0.1 &> /dev/null; echo ok"
initialDelaySeconds: 30
timeoutSeconds: 5
dnsPolicy: Default # Don't use cluster DNS.
volumes:
- name: dns-token
secret:
secretName: token-system-dns