2017-02-06 5 views
0

kubernetesでは、コントローラ・マネージャとスケジューラは、たとえば、エンドポイントを作成することにより、HAを達成: kubernetesコントローラまたはスケジューラHA

kube-scheduler Endpoint

は、私の知る限りでは、リーダー選出はちょうどサービスずにエンドポイントを作成します。ただし、エンドポイント・コントローラーでは、対応するサービスがないエンドポイントが削除され、リーダーの移行が発生します。

endpoints_controller source code

私は、私は重要な何かを欠場か、リーダー選挙はバグが存在するかどうかを知るdont't。

答えて

0

あなたはコードが間違っていることを理解しているかもしれません。ここでは、あなたが既にAPIServerのリストウォッチのメカニズムについて知識を持っていると仮定します。

NewEndpointControllerでは、これらの2種類のリソース変更(追加/更新/削除)がEndpointControllerによってキャッチされた場合にのみ、EndpointControllerがポッドとサービスリソースを気にすることがわかります。したがって、スタンドアロンのエンドポイント(このイベント)はEndpointControllerによってキャプチャされず、kube-proxyがホスト内の関連ネットワーク設定を作成するように通知するだけです。

+0

私はそうは思わない。 checkLeftoverEndpoints funcsは、コントローラの起動後、単一のゴルラインで5分間実行されます。それはイベントに通知するのではなく、すべてのエンドポイントをリストして処理します。 – Bling

+0

https://github.com/kubernetes/kubernetes/pull/45478 – Bling

関連する問題