17.6. GCP での DNS レコードの作成


External DNS Operator を使用して、Google Cloud Platform (GCP) 上に DNS レコードを作成できます。

重要

GCP Workload Identity が有効になっているクラスターで外部 DNS Operator を使用することはサポートされていません。GCP Workload Identity の詳細は、GCP Workload Identity での手動モードの使用 を参照してください。

17.6.1. GCP のパブリックマネージドゾーン上で DNS レコードを作成する

External DNS Operator を使用して、GCP のパブリックマネージドゾーンに DNS レコードを作成できます。

前提条件

  • 管理者権限を持っている。

手順

  1. 次のコマンドを実行して、encoded-gcloud.json ファイル内の gcp-credentials シークレットをコピーします。

    $ oc get secret gcp-credentials -n kube-system --template='{{$v := index .data "service_account.json"}}{{$v}}' | base64 -d - > decoded-gcloud.json
    Copy to Clipboard Toggle word wrap
  2. 次のコマンドを実行して、Google の認証情報をエクスポートします。

    $ export GOOGLE_CREDENTIALS=decoded-gcloud.json
    Copy to Clipboard Toggle word wrap
  3. 次のコマンドを使用して、アカウントをアクティブ化します。

    $ gcloud auth activate-service-account  <client_email as per decoded-gcloud.json> --key-file=decoded-gcloud.json
    Copy to Clipboard Toggle word wrap
  4. 次のコマンドを実行して、プロジェクトを設定します。

    $ gcloud config set project <project_id as per decoded-gcloud.json>
    Copy to Clipboard Toggle word wrap
  5. 次のコマンドを実行して、ルートのリストを取得します。

    $ oc get routes --all-namespaces | grep console
    Copy to Clipboard Toggle word wrap

    出力例

    openshift-console          console             console-openshift-console.apps.test.gcp.example.com                       console             https   reencrypt/Redirect     None
    openshift-console          downloads           downloads-openshift-console.apps.test.gcp.example.com                     downloads           http    edge/Redirect          None
    Copy to Clipboard Toggle word wrap

  6. 次のコマンドを実行して、マネージドゾーンのリストを取得します。

    $ gcloud dns managed-zones list | grep test.gcp.example.com
    Copy to Clipboard Toggle word wrap

    出力例

    qe-cvs4g-private-zone test.gcp.example.com
    Copy to Clipboard Toggle word wrap

  7. ExternalDNS オブジェクトを定義する YAML ファイル (例: external-dns-sample-gcp.yaml) を作成します。

    external-dns-sample-gcp.yaml ファイルの例

    apiVersion: externaldns.olm.openshift.io/v1beta1
    kind: ExternalDNS
    metadata:
      name: sample-gcp 
    1
    
    spec:
      domains:
        - filterType: Include 
    2
    
          matchType: Exact 
    3
    
          name: test.gcp.example.com 
    4
    
      provider:
        type: GCP 
    5
    
      source:
        openshiftRouteOptions: 
    6
    
          routerName: default 
    7
    
        type: OpenShiftRoute 
    8
    Copy to Clipboard Toggle word wrap

    1
    外部 DNS 名を指定します。
    2
    デフォルトでは、すべてのホストされたゾーンがターゲット候補として選択されます。ホストされたゾーンを含めることができます。
    3
    ターゲットのドメインは、name キーで定義された文字列と一致する必要があります。
    4
    更新するゾーンのドメインを正確に指定します。ルートのホスト名は、指定されたドメインのサブドメインである必要があります。
    5
    プロバイダータイプを定義します。
    6
    DNS レコードのソースのオプションを定義できます。
    7
    ソースタイプが OpenShiftRoute の場合、OpenShift Ingress Controller 名を渡すことができます。外部 DNS は、CNAME レコードの作成時に、そのルーターの正規のホスト名をターゲットとして選択します。
    8
    route リソースを GCP DNS レコードのソースとして定義します。
  8. 次のコマンドを実行して、OpenShift Container Platform ルートに対して作成された DNS レコードを確認します。

    $ gcloud dns record-sets list --zone=qe-cvs4g-private-zone | grep console
    Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat