5.13. Azure Stack Hub でのネットワークおよび負荷分散コンポーネントの作成
OpenShift Container Platform クラスターで使用するネットワークおよび負荷分散を Microsoft Azure Stack Hub で設定する必要があります。これらのコンポーネントを作成する方法として、提供される Azure Resource Manager (ARM) テンプレートを変更することができます。
負荷分散には、以下の DNS レコードが必要です。
- 
						DNS ゾーンの API パブリックロードバランサーの apiDNS レコード
- 
						DNS ゾーンの API 内部ロードバランサーの api-intDNS レコード
提供される ARM テンプレートを使用して Azure Stack Hub インフラストラクチャーを使用しない場合、提供される情報を確認し、インフラストラクチャーを手動で作成する必要があります。クラスターが適切に初期化されない場合、インストールログを用意して Red Hat サポートに問い合わせする必要がある可能性があります。
前提条件
- Azure アカウントを設定します。
- クラスターの Ignition 設定ファイルを生成します。
- Azure Stack Hub で VNet および関連するサブネットを作成し、設定します。
手順
- 
						このトピックの ネットワークおよびロードばランサーの ARM テンプレート セクションからテンプレートをコピーし、これを 03_infra.jsonとしてクラスターのインストールディレクトリーに保存します。このテンプレートは、クラスターに必要なネットワークおよび負荷分散オブジェクトを記述しています。
- azCLI を使用してデプロイメントを作成します。- az deployment group create -g ${RESOURCE_GROUP} \ --template-file "<installation_directory>/03_infra.json" \ --parameters baseName="${INFRA_ID}"- $ az deployment group create -g ${RESOURCE_GROUP} \ --template-file "<installation_directory>/03_infra.json" \ --parameters baseName="${INFRA_ID}"- 1 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- リソース名で使用されるベース名。これは通常クラスターのインフラストラクチャー ID です。
 
- apiDNS レコードおよび- api-intDNS レコードを作成します。API DNS レコードの作成時に、- ${BASE_DOMAIN_RESOURCE_GROUP}変数は DNS ゾーンが存在するリソースグループを参照する必要があります。- 以下の変数をエクスポートします。 - export PUBLIC_IP=`az network public-ip list -g ${RESOURCE_GROUP} --query "[?name=='${INFRA_ID}-master-pip'] | [0].ipAddress" -o tsv`- $ export PUBLIC_IP=`az network public-ip list -g ${RESOURCE_GROUP} --query "[?name=='${INFRA_ID}-master-pip'] | [0].ipAddress" -o tsv`- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 以下の変数をエクスポートします。 - export PRIVATE_IP=`az network lb frontend-ip show -g "$RESOURCE_GROUP" --lb-name "${INFRA_ID}-internal" -n internal-lb-ip --query "privateIpAddress" -o tsv`- $ export PRIVATE_IP=`az network lb frontend-ip show -g "$RESOURCE_GROUP" --lb-name "${INFRA_ID}-internal" -n internal-lb-ip --query "privateIpAddress" -o tsv`- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 新しい DNS ゾーンに - apiDNS レコードを作成します。- az network dns record-set a add-record -g ${BASE_DOMAIN_RESOURCE_GROUP} -z ${CLUSTER_NAME}.${BASE_DOMAIN} -n api -a ${PUBLIC_IP} --ttl 60- $ az network dns record-set a add-record -g ${BASE_DOMAIN_RESOURCE_GROUP} -z ${CLUSTER_NAME}.${BASE_DOMAIN} -n api -a ${PUBLIC_IP} --ttl 60- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - クラスターを既存の DNS ゾーンに追加する場合は、 - apiDNS レコードを代わりに作成できます。- az network dns record-set a add-record -g ${BASE_DOMAIN_RESOURCE_GROUP} -z ${BASE_DOMAIN} -n api.${CLUSTER_NAME} -a ${PUBLIC_IP} --ttl 60- $ az network dns record-set a add-record -g ${BASE_DOMAIN_RESOURCE_GROUP} -z ${BASE_DOMAIN} -n api.${CLUSTER_NAME} -a ${PUBLIC_IP} --ttl 60- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 新しい DNS ゾーンに - api-intDNS レコードを作成します。- az network dns record-set a add-record -g ${BASE_DOMAIN_RESOURCE_GROUP} -z "${CLUSTER_NAME}.${BASE_DOMAIN}" -n api-int -a ${PRIVATE_IP} --ttl 60- $ az network dns record-set a add-record -g ${BASE_DOMAIN_RESOURCE_GROUP} -z "${CLUSTER_NAME}.${BASE_DOMAIN}" -n api-int -a ${PRIVATE_IP} --ttl 60- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - クラスターを既存の DNS ゾーンに追加する場合は、 - api-intDNS レコードを代わりに作成できます。- az network dns record-set a add-record -g ${BASE_DOMAIN_RESOURCE_GROUP} -z ${BASE_DOMAIN} -n api-int.${CLUSTER_NAME} -a ${PRIVATE_IP} --ttl 60- $ az network dns record-set a add-record -g ${BASE_DOMAIN_RESOURCE_GROUP} -z ${BASE_DOMAIN} -n api-int.${CLUSTER_NAME} -a ${PRIVATE_IP} --ttl 60- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
 
5.13.1. ネットワークおよびロードバランサーの ARM テンプレート
以下の Azure Resource Manager (ARM) テンプレートを使用して、OpenShift Container Platform クラスターに必要なネットワークオブジェクトおよびロードバランサーをデプロイすることができます。
例5.3 03_infra.json ARM テンプレート
link:https://raw.githubusercontent.com/openshift/installer/release-4.12/upi/azurestack/03_infra.json[]
link:https://raw.githubusercontent.com/openshift/installer/release-4.12/upi/azurestack/03_infra.json[]