5.13. 在 Azure Stack Hub 中创建网络和负载均衡组件
您必须在 Microsoft Azure Stack Hub 中配置网络和负载均衡,供您的 OpenShift Container Platform 集群使用。创建这些组件的一种方法是修改提供的 Azure Resource Manager(ARM)模板。
负载平衡需要以下 DNS 记录:
-
DNS 区域中的 API 公共负载均衡器的
api
DNS 记录。 -
DNS 区域中 API 内部负载均衡器的
api-int
DNS 记录。
如果不使用提供的 ARM 模板来创建 Azure Stack Hub 基础架构,您必须检查提供的信息并手动创建基础架构。如果集群没有正确初始化,您可能需要联系红帽支持并提供您的安装日志。
先决条件
- 配置 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 template
link:https://raw.githubusercontent.com/openshift/installer/release-4.14/upi/azurestack/03_infra.json[]
link:https://raw.githubusercontent.com/openshift/installer/release-4.14/upi/azurestack/03_infra.json[]