3.3.3.5.2. ヘッドレスサービスを使用したエンドポイントの検出
ヘッドレスサービスを使用する利点として、Pod の IP アドレスを直接検出できることが挙げられます。標準サービスはロードバランサーまたはプロキシーとして機能するか、またはサービス名を使用してワークロードオブジェクトへのアクセスを付与します。ヘッドレスサービスの場合には、サービスごとに分類された Pod の IP アドレスセットに、サービス名を解決します。
標準サービスの DNS A
レコードを検出する際に、サービスの loadbalanced IP を取得します。
$ dig frontend.test A +search +short
出力例
172.30.232.77
ヘッドレスサービスの場合、個別 Pod の IP の一覧を取得します。
$ dig frontend-headless.test A +search +short
出力例
172.17.0.3 172.17.0.6
ヘッドレスサービスを、StatefulSet および初期化および停止時に DNS を解決する必要のあるユースケースで使用する場合、publishNotReadyAddresses
を true
に設定します (デフォルト値は false
です)。publishNotReadyAddresses
が true
に設定されている場合、これは DNS 実装がサービスに関連付けられたエンドポイントのサブセットの notReadyAddresses
を公開する必要があることを示します。