Member-only story

Kubernetesのサービスディスカバリーの説明(後半)

gavin.zhou
11 min readMay 7, 2020

--

Kubernetesのサービスディスカバリーの説明(後半)

今回はKubernetesのサービスディスカバリーについての記事をご紹介したいと思います。長いので前半と後半に分けてお送りしています。後半の今回は、より詳しく内容を掘り下げたものになっています。主にサービスの登録についての記事となっています。

Kubernetes Service Discovery DEEP DIVE

サービスディスカバリーには関連する2つの主要なオペレーションがあります。

1.サービス登録

2.サービスディスカバリー

Service registration

サービス登録は、他のサービスがサービスを検出できるように、サービスをサービスレジストリに登録するプロセスです。

Kubernetesは、サービスレジストリにDNSを使用します。

これを可能にするために、すべてのKubernetesクラスターは、kube-systemネームスペースでポッドのセットとして実行される既知の内部DNS serviceを操作しまオペレーションします。 通常、これを「クラスターDNS」と呼びます。

すべてのKubernetes Serviceは、クラスターDNSに自動的に登録されます。

登録の手順は次の通りです。

1.新しいService設定をAPIサーバーにポストします

2.そのリクエストは認証、承認され、アドミッションポリシーの対象となります。

3.そのServiceに ClusterIP (仮想IPアドレス)が割り当てられ、クラスターストアに保持されます。

4. Serviceコンフィギュレーションがクラスター全体にばらまかれます(これについては後で詳しく説明します)

5.クラスターのDNS serviceは新しいServiceに気づき、必要なDNS Aレコードを作成します。

ステップ5は、このプロセスのsecret sauceです。 クラスターDNS serviceはCoreDNSをベースにしており、Kubernetesネイティブアプリケーションとして実行されます。 そのアプリケーションKubernetesで実行されていることを認識し、APIサーバーで新しいサービスオブジェクトに対して監視するコントローラーを実装することを意味します。…

--

--

No responses yet