次の手順に従って、vSphere 8.x 用の TKr を実行している TKG サービス クラスタに ExternalDNS をインストールします。

ExternalDNS について

ExternalDNS を使用すると、Envoy を使用する Contour などの Ingress コンポーネントを使用して、Kubernetes サービス用の DNS レコードを自動的に作成できます。ExternalDNS パッケージは、AWS Route 53、Azure DNS、および RFC2136 準拠の DNS サーバ(BIND など)の各 DNS プロバイダで検証されます。ExternalDNS パッケージのリファレンスも参照してください。

前提条件

ExternalDNS のデータ値の作成

ExternalDNS のインストールを準備するには、ExternalDNS のデータ値ファイルを作成します。
  1. リポジトリで使用可能な ExternalDNS パッケージのバージョンを一覧表示します。
    tanzu package available get external-dns.tanzu.vmware.com -n tkg-system
    または、kubectl を使用します。
    kubectl -n tkg-system get packages | grep external-dns
    注: 要件が異なる場合を除き、通常は最新バージョンを使用する必要があります。
  2. ExternalDNS パッケージのデータ値ファイルを生成します。
    tanzu package available get external-dns.tanzu.vmware.com/0.13.6+vmware.1-tkg.1 --default-values-file-output external-dns-data-values.yaml
    ここで、
    • 0.13.6+vmware.1-tkg.1 はターゲット パッケージのバージョンです
    • external-dns-data-values.yaml は、生成するデータ値ファイルの名前とパスです
  3. お使いの環境に応じて、データ値をカスタマイズします。

    データ値は、ターゲットとしているサポート対象の DNS サーバによって異なります。例については、「ExternalDNS パッケージのリファレンス」を参照してください。

  4. 必要に応じて、ExternalDNS パッケージが操作する DNS サーバを定義する configmap を作成します。

    例については、「ExternalDNS パッケージのリファレンス」を参照してください。

ExternalDNS のインストール

TKG クラスタに ExternalDNS パッケージをインストールするには、次の手順を実行します。
  1. ExternalDNS の名前空間を作成します。
    kubectl create ns tanzu-system-service-discovery
  2. Tanzu CLI を使用して ExternalDNS パッケージをインストールします。
    tanzu package install external-dns -p external-dns.tanzu.vmware.com -n tanzu-system-service-discovery -v 0.11.0+vmware.1-tkg.2 --values-file external-dns-data-values.yaml
  3. Tanzu CLI を使用してパッケージがインストールされていることを確認します。
    tanzu package installed list -n tanzu-system-service-discovery
    
    NAME          PACKAGE-NAME                   PACKAGE-VERSION        STATUS
    external-dns  external-dns.tanzu.vmware.com  0.11.0+vmware.1-tkg.2  Reconcile succeeded
    kubectl -n tanzu-system-service-discovery get all
    NAME                               READY   STATUS    RESTARTS   AGE
    pod/external-dns-77d947745-tcjz9   1/1     Running   0          63s
     
    NAME                           READY   UP-TO-DATE   AVAILABLE   AGE
    deployment.apps/external-dns   1/1     1            1           63s
     
    NAME                                     DESIRED   CURRENT   READY   AGE
    replicaset.apps/external-dns-77d947745   1         1         1       63s

リファレンス

必要に応じて、次のトピックを参照してください。