You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

100 lines
3.1 KiB

  1. apiVersion: v1
  2. kind: ReplicationController
  3. metadata:
  4. name: kubedns
  5. namespace: kube-system
  6. labels:
  7. k8s-app: kubedns
  8. version: v19
  9. kubernetes.io/cluster-service: "true"
  10. spec:
  11. replicas: 1
  12. selector:
  13. k8s-app: kubedns
  14. version: v19
  15. template:
  16. metadata:
  17. labels:
  18. k8s-app: kubedns
  19. version: v19
  20. kubernetes.io/cluster-service: "true"
  21. spec:
  22. containers:
  23. - name: kubedns
  24. image: gcr.io/google_containers/kubedns-amd64:1.7
  25. resources:
  26. # TODO: Set memory limits when we've profiled the container for large
  27. # clusters, then set request = limit to keep this container in
  28. # guaranteed class. Currently, this container falls into the
  29. # "burstable" category so the kubelet doesn't backoff from restarting it.
  30. limits:
  31. cpu: 100m
  32. memory: 170Mi
  33. requests:
  34. cpu: 100m
  35. memory: 70Mi
  36. livenessProbe:
  37. httpGet:
  38. path: /healthz
  39. port: 8080
  40. scheme: HTTP
  41. initialDelaySeconds: 60
  42. timeoutSeconds: 5
  43. successThreshold: 1
  44. failureThreshold: 5
  45. readinessProbe:
  46. httpGet:
  47. path: /readiness
  48. port: 8081
  49. scheme: HTTP
  50. # we poll on pod startup for the Kubernetes master service and
  51. # only setup the /readiness HTTP server once that's available.
  52. initialDelaySeconds: 30
  53. timeoutSeconds: 5
  54. args:
  55. # command = "/kube-dns"
  56. - --domain={{ dns_domain }}.
  57. - --dns-port=10053
  58. ports:
  59. - containerPort: 10053
  60. name: dns-local
  61. protocol: UDP
  62. - containerPort: 10053
  63. name: dns-tcp-local
  64. protocol: TCP
  65. - name: dnsmasq
  66. image: gcr.io/google_containers/kube-dnsmasq-amd64:1.3
  67. args:
  68. - --log-facility=-
  69. - --cache-size=1000
  70. - --no-resolv
  71. - --server=127.0.0.1#10053
  72. ports:
  73. - containerPort: 53
  74. name: dns
  75. protocol: UDP
  76. - containerPort: 53
  77. name: dns-tcp
  78. protocol: TCP
  79. - name: healthz
  80. image: gcr.io/google_containers/exechealthz-amd64:1.1
  81. resources:
  82. # keep request = limit to keep this container in guaranteed class
  83. limits:
  84. cpu: 10m
  85. memory: 50Mi
  86. requests:
  87. cpu: 10m
  88. # Note that this container shouldn't really need 50Mi of memory. The
  89. # limits are set higher than expected pending investigation on #29688.
  90. # The extra memory was stolen from the kubedns container to keep the
  91. # net memory requested by the pod constant.
  92. memory: 50Mi
  93. args:
  94. - -cmd=nslookup kubernetes.default.svc.{{ dns_domain }} 127.0.0.1 >/dev/null && nslookup kubernetes.default.svc.{{ dns_domain }} 127.0.0.1:10053 >/dev/null
  95. - -port=8080
  96. - -quiet
  97. ports:
  98. - containerPort: 8080
  99. protocol: TCP
  100. dnsPolicy: Default # Don't use cluster DNS.