5.13. Azure Stack Hub でのネットワークおよび負荷分散コンポーネントの作成
OpenShift Container Platform クラスターで使用するネットワークおよび負荷分散を Microsoft Azure Stack Hub で設定する必要があります。これらのコンポーネントを作成する方法として、提供される Azure Resource Manager (ARM) テンプレートを変更することができます。
負荷分散には、以下の DNS レコードが必要です。
-
DNS ゾーンの API パブリックロードバランサーの
api
DNS レコード -
DNS ゾーンの API 内部ロードバランサーの
api-int
DNS レコード
提供される ARM テンプレートを使用して Azure Stack Hub インフラストラクチャーを使用しない場合、提供される情報を確認し、インフラストラクチャーを手動で作成する必要があります。クラスターが適切に初期化されない場合、インストールログを用意して Red Hat サポートに問い合わせする必要がある可能性があります。
前提条件
- Azure アカウントを設定します。
- クラスターの Ignition 設定ファイルを生成します。
- Azure Stack Hub で VNet および関連するサブネットを作成し、設定します。
手順
-
このトピックの ネットワークおよびロードばランサーの ARM テンプレート セクションからテンプレートをコピーし、これを
03_infra.json
としてクラスターのインストールディレクトリーに保存します。このテンプレートは、クラスターに必要なネットワークおよび負荷分散オブジェクトを記述しています。 az
CLI を使用してデプロイメントを作成します。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 です。
api
DNS レコードおよびapi-int
DNS レコードを作成します。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 ゾーンに
api
DNS レコードを作成します。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 ゾーンに追加する場合は、
api
DNS レコードを代わりに作成できます。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-int
DNS レコードを作成します。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-int
DNS レコードを代わりに作成できます。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.13/upi/azurestack/03_infra.json[]
link:https://raw.githubusercontent.com/openshift/installer/release-4.13/upi/azurestack/03_infra.json[]