10.11. GCP でのプライベート DNS ゾーンの作成
OpenShift Container Platform クラスターで使用するプライベート DNS ゾーンを Google Cloud Platform (GCP) で設定する必要があります。このコンポーネントを作成する方法として、提供される Deployment Manager テンプレートを変更することができます。
提供される Deployment Manager テンプレートを使用して GCP インフラストラクチャーを使用しない場合、提供される情報を確認し、インフラストラクチャーを手動で作成する必要があります。クラスターが適切に初期化されない場合、インストールログを用意して Red Hat サポートに問い合わせする必要がある可能性があります。
前提条件
- 共通変数のエクスポート と GCP でのロードバランサーの作成 のセクションで変数が定義されている。
手順
-
このトピックの プライベート DNS の Deployment Manager テンプレート セクションのテンプレートをコピーし、これを
02_dns.py
としてコンピューターに保存します。このテンプレートは、クラスターに必要なプライベート DNS オブジェクトを記述しています。 02_dns.yaml
リソース定義ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow gcloud
CLI を使用してデプロイメントを作成します。gcloud deployment-manager deployments create ${INFRA_ID}-dns --config 02_dns.yaml
$ gcloud deployment-manager deployments create ${INFRA_ID}-dns --config 02_dns.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このテンプレートは Deployment Manager の制限により DNS エントリーを作成しないので、手動で作成する必要があります。
内部 DNS エントリーを追加します。
if [ -f transaction.yaml ]; then rm transaction.yaml; fi gcloud dns record-sets transaction start --zone ${INFRA_ID}-private-zone gcloud dns record-sets transaction add ${CLUSTER_IP} --name api.${CLUSTER_NAME}.${BASE_DOMAIN}. --ttl 60 --type A --zone ${INFRA_ID}-private-zone gcloud dns record-sets transaction add ${CLUSTER_IP} --name api-int.${CLUSTER_NAME}.${BASE_DOMAIN}. --ttl 60 --type A --zone ${INFRA_ID}-private-zone gcloud dns record-sets transaction execute --zone ${INFRA_ID}-private-zone
$ if [ -f transaction.yaml ]; then rm transaction.yaml; fi $ gcloud dns record-sets transaction start --zone ${INFRA_ID}-private-zone $ gcloud dns record-sets transaction add ${CLUSTER_IP} --name api.${CLUSTER_NAME}.${BASE_DOMAIN}. --ttl 60 --type A --zone ${INFRA_ID}-private-zone $ gcloud dns record-sets transaction add ${CLUSTER_IP} --name api-int.${CLUSTER_NAME}.${BASE_DOMAIN}. --ttl 60 --type A --zone ${INFRA_ID}-private-zone $ gcloud dns record-sets transaction execute --zone ${INFRA_ID}-private-zone
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 外部クラスターの場合、外部 DNS エントリーも追加します。
if [ -f transaction.yaml ]; then rm transaction.yaml; fi gcloud dns record-sets transaction start --zone ${BASE_DOMAIN_ZONE_NAME} gcloud dns record-sets transaction add ${CLUSTER_PUBLIC_IP} --name api.${CLUSTER_NAME}.${BASE_DOMAIN}. --ttl 60 --type A --zone ${BASE_DOMAIN_ZONE_NAME} gcloud dns record-sets transaction execute --zone ${BASE_DOMAIN_ZONE_NAME}
$ if [ -f transaction.yaml ]; then rm transaction.yaml; fi $ gcloud dns record-sets transaction start --zone ${BASE_DOMAIN_ZONE_NAME} $ gcloud dns record-sets transaction add ${CLUSTER_PUBLIC_IP} --name api.${CLUSTER_NAME}.${BASE_DOMAIN}. --ttl 60 --type A --zone ${BASE_DOMAIN_ZONE_NAME} $ gcloud dns record-sets transaction execute --zone ${BASE_DOMAIN_ZONE_NAME}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.11.1. プライベート DNS の Deployment Manager テンプレート リンクのコピーリンクがクリップボードにコピーされました!
以下の Deployment Manager テンプレートを使用して、OpenShift Container Platform クラスターに必要なプライベート DNS をデプロイすることができます。
例10.29 02_dns.py
Deployment Manager テンプレート