問題タブ [kube-dns]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes - kube-dns が api-server を見つけることができません
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
期待される出力が得られます:
しかし、ポッドの状態と kube-dns コンテナーの出力を確認すると、次のエラーが表示されます。
そしてコンテナログで:
コンテナー ログの URL https://10.32.0.1:443は間違っているようですが、別の URL を指定できる場所も、この URL が構成ファイルhttps://に設定されている場所も見つかりません。 storage.googleapis.com/kubernetes-the-hard-way/kube-dns.yaml
dns - Kubernetes サービスの検出で minikube のサービス ホストが解決されない
minikube インストールで実行されている k8s で 2 つのサービスを実行しようとしています。Foo
サービスとがあるのでBar
、サービスにアクセスするときは、データを取得するためにFoo
サービスをトリガーする必要Bar
があります。
Foo
サービス
の展開構成は次のfoo-deployment.yaml
とおりです。
foo-svc.yaml
:
evnBAR_SERVICE_URL
変数は 内で使用されるFoo
ため、サービスは へのホストを認識しますBar
。Bar
service のサービス
構成は次のbar-svc.yaml
とおりです。
bar-deployment.yaml
:
Foo
minikube IP と公開されたサービス ポートを使用してサービスにアクセスすると、ポッド ログに次のエラーが表示されます。
ただし、bar-server/endpoint
このように minikube IP と公開ポートを使用してアクセスできますhttp://192.168.99.100:31168/endpoint
。
そのため、クラスターの外部からFoo
およびサービスにアクセスできるようです。Bar
しかし、Foo
サービスはサービス ホストを解決できず、Bar
サービス ホストにアクセスできません。
UPD : トラブルシューティングの詳細を含むいくつかの更新があります。
- アドオンで有効になっ
minikube
ています。kube-dns
Foo
Pod 側からサービス エンドポイントwget
への接続を試行しています。Bar
の IP アドレス経由ではできますが、bar-server
ではできませんbar-server:8081/endpoint
。試してみる
nslookup kubernetes.default.svc.cluster.local localhost
と良さそうです。出力は次のとおりです。サーバー: 127.0.0.1 アドレス 1: 127.0.0.1 ローカルホスト
また
dns
、ポッドが起動して実行されています。ここに出力がありますkubectl get pods -n=kube-system | grep -i dns
kube-dns-6777479f6b-vxd7m 3/3 実行中 9 1d