This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.6.9.14. 在 GCP 中创建 bootstrap 机器
您必须在 Google Cloud Platform (GCP) 中创建 bootstrap 机器,以便在 OpenShift Container Platform 集群初始化过程中使用。创建此机器的一种方法是修改提供的 Deployment Manager 模板。
如果不使用提供的 Deployment Manager 模板来创建 bootstrap 机器,您必须检查提供的信息并手动创建基础架构。如果集群没有正确初始化,您可能需要联系红帽支持并提供您的安装日志。
先决条件
- 配置 GCP 帐户。
- 为集群生成 Ignition 配置文件。
- 在 GCP 中创建和配置 VPC 及相关子网。
- 在 GCP 中创建和配置联网及负载均衡器。
- 创建 control plane 和计算角色。
- 确定安装了 pyOpenSSL。
流程
-
复制 bootstrap 机器的 Deployment Manager 模板一节中的模板,并将它以
04_bootstrap.py
形式保存到计算机上。此模板描述了集群所需的 bootstrap 机器。 导出安装程序所需的 Red Hat Enterprise Linux CoreOS(RHCOS)镜像的位置:
export CLUSTER_IMAGE=(`gcloud compute images describe ${INFRA_ID}-rhcos-image --format json | jq -r .selfLink`)
$ export CLUSTER_IMAGE=(`gcloud compute images describe ${INFRA_ID}-rhcos-image --format json | jq -r .selfLink`)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建存储桶并上传
bootstrap.ign
文件:gsutil mb gs://${INFRA_ID}-bootstrap-ignition gsutil cp <installation_directory>/bootstrap.ign gs://${INFRA_ID}-bootstrap-ignition/
$ gsutil mb gs://${INFRA_ID}-bootstrap-ignition $ gsutil cp <installation_directory>/bootstrap.ign gs://${INFRA_ID}-bootstrap-ignition/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为 bootstrap 实例创建一个签名的 URL,用于访问 Ignition 配置。将输出中的 URL 导出为变量:
export BOOTSTRAP_IGN=`gsutil signurl -d 1h service-account-key.json gs://${INFRA_ID}-bootstrap-ignition/bootstrap.ign | grep "^gs:" | awk '{print $5}'`
$ export BOOTSTRAP_IGN=`gsutil signurl -d 1h service-account-key.json gs://${INFRA_ID}-bootstrap-ignition/bootstrap.ign | grep "^gs:" | awk '{print $5}'`
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建
04_bootstrap.yaml
资源定义文件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
infra_id
是来自于提取步骤的INFRA_ID
基础架构名称。- 2
region
是集群要部署到的区域,如us-central1
。- 3
zone
是 Bootstrap 实例要部署到的区域,如us-central1-b
。- 4
cluster_network
是集群网络的selfLink
URL。- 5
control_subnet
是控制子网的selfLink
URL。- 6
image
是 RHCOS 镜像的selfLink
URL。- 7
machine_type
是实例的机器类型,如n1-standard-4
。- 8
root_volume_size
是 bootstrap 机器的引导磁盘大小。- 9
bootstrap_ign
是创建签名 URL 时的 URL 输出。
使用
gcloud
CLI 创建部署:gcloud deployment-manager deployments create ${INFRA_ID}-bootstrap --config 04_bootstrap.yaml
$ gcloud deployment-manager deployments create ${INFRA_ID}-bootstrap --config 04_bootstrap.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 由于 Deployment Manager 的限制,模板无法管理负载均衡器成员资格,因此您必须手动添加 bootstrap 机器:
将 bootstrap 实例添加到内部负载均衡器实例组中:
gcloud compute instance-groups unmanaged add-instances \ ${INFRA_ID}-bootstrap-instance-group --zone=${ZONE_0} --instances=${INFRA_ID}-bootstrap
$ gcloud compute instance-groups unmanaged add-instances \ ${INFRA_ID}-bootstrap-instance-group --zone=${ZONE_0} --instances=${INFRA_ID}-bootstrap
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 bootstrap 实例组添加到内部负载均衡器后端服务中:
gcloud compute backend-services add-backend \ ${INFRA_ID}-api-internal-backend-service --region=${REGION} --instance-group=${INFRA_ID}-bootstrap-instance-group --instance-group-zone=${ZONE_0}
$ gcloud compute backend-services add-backend \ ${INFRA_ID}-api-internal-backend-service --region=${REGION} --instance-group=${INFRA_ID}-bootstrap-instance-group --instance-group-zone=${ZONE_0}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.9.14.1. bootstrap 机器的 Deployment Manager 模板 复制链接链接已复制到粘贴板!
您可以使用以下 Deployment Manager 模板来部署 OpenShift Container Platform 集群所需的 bootstrap 机器:
例 6.7. 04_bootstrap.py
Deployment Manager 模板