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 60Copy 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 60Copy 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 60Copy 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 60Copy 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.15/upi/azurestack/03_infra.json[]
link:https://raw.githubusercontent.com/openshift/installer/release-4.15/upi/azurestack/03_infra.json[]