0

Kubernetes クラスター内のサービスに到達できません。確認したところ、サービスでエンドポイントを利用できません。さらに確認すると、エンドポイントが値と null の間で変化し続けることがわかりました。他の投稿で提案されているように、ラベルセレクターをチェックしました。ポッドが立ち上がっています。コンテナーは、サービスのターゲット ポートでリッスンしています。ここで他に何が起こっているのですか。

root@ak-host:/root# kubectl get endpoints
NAME     ENDPOINTS           AGE
Service1                     2m
Service2 172.17.83.57:8006   2m
Service3 172.17.83.46:8082   2m
Service4                     2m
Service5                     2m
Service6                     2m

さらに更新。kube-controller-manager ログに以下のエラーが表示されます。E0810 20:02:21.887677 10451 nodecontroller.go:771] ノードの更新中にエラーが発生しました: クライアント: 応答が無効な json です。エンドポイントは、有効な etcd クラスター エンドポイントではない可能性があります。

4

1 に答える 1

1

どうやら、私のマシンの kube-apiserver は引数「--etcd-servers= http://xxxx:14001」を使用していたようです。私のセットアップでは、ha プロキシは 14001 でリッスンし、次に etcd がリッスンする 4001 に転送します。ポート 4001 を使用するように kube-apiserver の初期化ファイルを変更すると、私の場合は問題が直接解決されました。haproxy がどのように通信を妨げていたのかはまだわかりませんが、今では期待どおりに機能しています。

于 2016-08-30T11:09:57.443 に答える