Kelsey Hightowers https://github.com/kelseyhightower/kubernetes-the-hard-way/で説明されているように、GKE で kubernetes をセットアップしています。
DNS ClusterAddon https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/12-dns-addon.mdの設定を除いて、すべて正常に動作します。
そのようにkube-dnsを起動すると:
kubectl create -f https://storage.googleapis.com/kubernetes-the-hard-way/kube-dns.yaml
期待される出力が得られます:
serviceaccount "kube-dns" created
configmap "kube-dns" created
service "kube-dns"
created deployment "kube-dns" created
しかし、ポッドの状態と kube-dns コンテナーの出力を確認すると、次のエラーが表示されます。
kubectl get po -n kube-system
NAME READY STATUS RESTARTS AGE
kube-dns-6c857864fb-cpvvr 2/3 CrashLoopBackOff 63 2h
そしてコンテナログで:
I0115 13:22:35.272492 1 dns.go:173] Waiting for services and endpoints to be initialized from apiserver...
I0115 13:22:35.772476 1 dns.go:173] Waiting for services and endpoints to be initialized from apiserver...
I0115 13:22:36.272406 1 dns.go:173] Waiting for services and endpoints to be initialized from apiserver...
I0115 13:22:36.772356 1 dns.go:173] Waiting for services and endpoints to be initialized from apiserver...
I0115 13:22:37.272386 1 dns.go:173] Waiting for services and endpoints to be initialized from apiserver...
E0115 13:22:37.273178 1 reflector.go:201] k8s.io/dns/pkg/dns/dns.go:147: Failed to list *v1.Endpoints: Get https://10.32.0.1:443/api/v1/endpoints?resourceVersion=0: dial tcp 10.32.0.1:443: i/o timeout
E0115 13:22:37.273340 1 reflector.go:201] k8s.io/dns/pkg/dns/dns.go:150: Failed to list *v1.Service: Get https://10.32.0.1:443/api/v1/services?resourceVersion=0: dial tcp 10.32.0.1:443: i/o timeout
コンテナー ログの URL https://10.32.0.1:443は間違っているようですが、別の URL を指定できる場所も、この URL が構成ファイルhttps://に設定されている場所も見つかりません。 storage.googleapis.com/kubernetes-the-hard-way/kube-dns.yaml