diff --git a/cluster/addons/dns/skydns-rc.yaml.base b/cluster/addons/dns/skydns-rc.yaml.base index 28cf7d7de1f..70d2247245c 100644 --- a/cluster/addons/dns/skydns-rc.yaml.base +++ b/cluster/addons/dns/skydns-rc.yaml.base @@ -73,10 +73,15 @@ spec: initialDelaySeconds: 3 timeoutSeconds: 5 args: - # command = "/kube-dns" - --domain=__PILLAR__DNS__DOMAIN__. - --dns-port=10053 + # This should be set to v=2 only after the new image (cut from 1.5) has + # been released, otherwise we will flood the logs. + - --v=0 __PILLAR__FEDERATIONS__DOMAIN__MAP__ + env: + - name: PROMETHEUS_PORT + value: "10055" ports: - containerPort: 10053 name: dns-local @@ -84,6 +89,9 @@ spec: - containerPort: 10053 name: dns-tcp-local protocol: TCP + - containerPort: 10055 + name: metrics + protocol: TCP - name: dnsmasq image: gcr.io/google_containers/kube-dnsmasq-amd64:1.4 livenessProbe: @@ -107,6 +115,32 @@ spec: - containerPort: 53 name: dns-tcp protocol: TCP + # see: https://github.com/kubernetes/kubernetes/issues/29055 for details + resources: + requests: + cpu: 150m + memory: 10Mi + - name: dnsmasq-metrics + image: gcr.io/google_containers/dnsmasq-metrics-amd64:1.0 + livenessProbe: + httpGet: + path: /metrics + port: 10054 + scheme: HTTP + initialDelaySeconds: 60 + timeoutSeconds: 5 + successThreshold: 1 + failureThreshold: 5 + args: + - --v=2 + - --logtostderr + ports: + - containerPort: 10054 + name: metrics + protocol: TCP + resources: + requests: + memory: 10Mi - name: healthz image: gcr.io/google_containers/exechealthz-amd64:1.2 resources: diff --git a/cluster/addons/dns/skydns-rc.yaml.in b/cluster/addons/dns/skydns-rc.yaml.in index 616ade17315..eb26d4f71f5 100644 --- a/cluster/addons/dns/skydns-rc.yaml.in +++ b/cluster/addons/dns/skydns-rc.yaml.in @@ -73,10 +73,15 @@ spec: initialDelaySeconds: 3 timeoutSeconds: 5 args: - # command = "/kube-dns" - --domain={{ pillar['dns_domain'] }}. - --dns-port=10053 + # This should be set to v=2 only after the new image (cut from 1.5) has + # been released, otherwise we will flood the logs. + - --v=0 {{ pillar['federations_domain_map'] }} + env: + - name: PROMETHEUS_PORT + value: "10055" ports: - containerPort: 10053 name: dns-local @@ -84,6 +89,9 @@ spec: - containerPort: 10053 name: dns-tcp-local protocol: TCP + - containerPort: 10055 + name: metrics + protocol: TCP - name: dnsmasq image: gcr.io/google_containers/kube-dnsmasq-amd64:1.4 livenessProbe: @@ -107,6 +115,32 @@ spec: - containerPort: 53 name: dns-tcp protocol: TCP + # see: https://github.com/kubernetes/kubernetes/issues/29055 for details + resources: + requests: + cpu: 150m + memory: 10Mi + - name: dnsmasq-metrics + image: gcr.io/google_containers/dnsmasq-metrics-amd64:1.0 + livenessProbe: + httpGet: + path: /metrics + port: 10054 + scheme: HTTP + initialDelaySeconds: 60 + timeoutSeconds: 5 + successThreshold: 1 + failureThreshold: 5 + args: + - --v=2 + - --logtostderr + ports: + - containerPort: 10054 + name: metrics + protocol: TCP + resources: + requests: + memory: 10Mi - name: healthz image: gcr.io/google_containers/exechealthz-amd64:1.2 resources: diff --git a/cluster/addons/dns/skydns-rc.yaml.sed b/cluster/addons/dns/skydns-rc.yaml.sed index be59bad988e..1fbe2ac529b 100644 --- a/cluster/addons/dns/skydns-rc.yaml.sed +++ b/cluster/addons/dns/skydns-rc.yaml.sed @@ -73,9 +73,14 @@ spec: initialDelaySeconds: 3 timeoutSeconds: 5 args: - # command = "/kube-dns" - --domain=$DNS_DOMAIN. - --dns-port=10053 + # This should be set to v=2 only after the new image (cut from 1.5) has + # been released, otherwise we will flood the logs. + - --v=0 + env: + - name: PROMETHEUS_PORT + value: "10055" ports: - containerPort: 10053 name: dns-local @@ -83,6 +88,9 @@ spec: - containerPort: 10053 name: dns-tcp-local protocol: TCP + - containerPort: 10055 + name: metrics + protocol: TCP - name: dnsmasq image: gcr.io/google_containers/kube-dnsmasq-amd64:1.4 livenessProbe: @@ -106,6 +114,32 @@ spec: - containerPort: 53 name: dns-tcp protocol: TCP + # see: https://github.com/kubernetes/kubernetes/issues/29055 for details + resources: + requests: + cpu: 150m + memory: 10Mi + - name: dnsmasq-metrics + image: gcr.io/google_containers/dnsmasq-metrics-amd64:1.0 + livenessProbe: + httpGet: + path: /metrics + port: 10054 + scheme: HTTP + initialDelaySeconds: 60 + timeoutSeconds: 5 + successThreshold: 1 + failureThreshold: 5 + args: + - --v=2 + - --logtostderr + ports: + - containerPort: 10054 + name: metrics + protocol: TCP + resources: + requests: + memory: 10Mi - name: healthz image: gcr.io/google_containers/exechealthz-amd64:1.2 resources: diff --git a/cluster/gce/coreos/kube-manifests/addons/dns/skydns-rc.yaml b/cluster/gce/coreos/kube-manifests/addons/dns/skydns-rc.yaml index 1fcdbedb2c3..b973b4a04f0 100644 --- a/cluster/gce/coreos/kube-manifests/addons/dns/skydns-rc.yaml +++ b/cluster/gce/coreos/kube-manifests/addons/dns/skydns-rc.yaml @@ -56,6 +56,10 @@ spec: # command = "/kube-dns" - --domain=${DNS_DOMAIN}. - --dns-port=10053 + - --v=0 + env: + - name: PROMETHEUS_PORT + value: "10055" ports: - containerPort: 10053 name: dns-local @@ -63,6 +67,9 @@ spec: - containerPort: 10053 name: dns-tcp-local protocol: TCP + - containerPort: 10055 + name: metrics + protocol: TCP - name: dnsmasq image: gcr.io/google_containers/kube-dnsmasq-amd64:1.4 livenessProbe: @@ -86,6 +93,27 @@ spec: - containerPort: 53 name: dns-tcp protocol: TCP + - name: dnsmasq-metrics + image: gcr.io/google_containers/dnsmasq-metrics-amd64:1.0 + livenessProbe: + httpGet: + path: /metrics + port: 10054 + scheme: HTTP + initialDelaySeconds: 60 + timeoutSeconds: 5 + successThreshold: 1 + failureThreshold: 5 + args: + - --v=2 + - --logtostderr + ports: + - containerPort: 10054 + name: metrics + protocol: TCP + resources: + requests: + memory: 10Mi - name: healthz image: gcr.io/google_containers/exechealthz-amd64:1.2 resources: diff --git a/cluster/juju/layers/kubernetes/templates/kubedns-rc.yaml b/cluster/juju/layers/kubernetes/templates/kubedns-rc.yaml index ff430f8c275..c522f494cdc 100644 --- a/cluster/juju/layers/kubernetes/templates/kubedns-rc.yaml +++ b/cluster/juju/layers/kubernetes/templates/kubedns-rc.yaml @@ -72,8 +72,12 @@ spec: # command = "/kube-dns" - --domain={{ pillar['dns_domain'] }}. - --dns-port=10053 + - --v=0 - --kube_master_url=http://{{ private_address }}:8080 {{ pillar['federations_domain_map'] }} + env: + - name: PROMETHEUS_PORT + value: "10055" ports: - containerPort: 10053 name: dns-local @@ -81,6 +85,9 @@ spec: - containerPort: 10053 name: dns-tcp-local protocol: TCP + - containerPort: 10055 + name: metrics + protocol: TCP - name: dnsmasq image: gcr.io/google_containers/kube-dnsmasq-{{ arch }}:1.4 livenessProbe: @@ -104,6 +111,27 @@ spec: - containerPort: 53 name: dns-tcp protocol: TCP + - name: dnsmasq-metrics + image: gcr.io/google_containers/dnsmasq-metrics-amd64:1.0 + livenessProbe: + httpGet: + path: /metrics + port: 10054 + scheme: HTTP + initialDelaySeconds: 60 + timeoutSeconds: 5 + successThreshold: 1 + failureThreshold: 5 + args: + - --v=2 + - --logtostderr + ports: + - containerPort: 10054 + name: metrics + protocol: TCP + resources: + requests: + memory: 10Mi - name: healthz image: gcr.io/google_containers/exechealthz-{{ arch }}:1.2 resources: