第 14 章 可选:在 vSphere 上安装
如果在 vSphere 上安装 OpenShift Container Platform,辅助安装程序可以将 OpenShift Container Platform 集群与 vSphere 平台集成,这会将 Machine API 公开给 vSphere 并启用自动扩展。
14.1. 在 vSphere 中添加主机 复制链接链接已复制到粘贴板!
您可以使用在线 vSphere 客户端或 govc
vSphere CLI 工具将主机添加到 Assisted Installer 集群。以下流程演示了使用 govc
CLI 工具添加主机。要使用在线 vSphere 客户端,请参阅 vSphere 的文档。
要使用 vSphere govc
CLI 在 vSphere 中添加主机,请从 Assisted Installer 生成发现镜像 ISO。最小发现镜像 ISO 是默认设置。此镜像仅包含使用网络引导主机所需的内容。在引导时会下载大多数内容。ISO 镜像大小为 100MB。
完成后,您必须为 vSphere 平台创建镜像并创建 vSphere 虚拟机。
先决条件
- 您使用 vSphere 7.0.2 或更高版本。
-
已安装并配置了 vSphere
govc
CLI 工具。 -
在 vSphere 中,已将
clusterSet disk.enableUUID
设置为 true。 - 您已在 Assisted Installer UI 中创建了一个集群,或者
您有:
- 使用 API 创建辅助安装程序集群配置集和基础架构环境。
-
在 shell 中导出您的基础架构环境 ID 作为
$INFRA_ENV_ID
。 - 完成配置。
流程
- 如果要使用 ignition 文件引导,请配置发现镜像。
- 在集群详情中,从 与外部合作伙伴平台 下拉列表中选择 vSphere。Include 自定义清单 复选框是可选的。
- 在 主机发现 中,单击 添加主机 按钮并选择调配类型。
添加 SSH 公钥,以便您可以以
core
用户身份连接到 vSphere 虚拟机。通过登录到集群主机,您可以在安装过程中为您提供调试信息。- 如果您在本地计算机上没有现有的 SSH 密钥对,请按照 为集群节点 SSH 访问生成密钥对 的步骤进行操作。
-
在 SSH 公钥 字段中,单击 Browse 以上传包含 SSH 公钥的
id_rsa.pub
文件。或者,将文件拖放到文件管理器的字段中。要查看文件管理器中的文件,请在菜单中选择 Show hidden files。
选择所需的发现镜像 ISO。
注意最小镜像文件:使用虚拟介质进行置备 会下载一个较小的镜像,该镜像将获取引导所需的数据。
在 Networking 中,选择 Cluster-managed networking or User-managed networking:
- 可选: 如果集群主机位于需要使用代理的防火墙后面,请选择 Configure cluster-wide proxy settings。输入代理服务器的 HTTP 和 HTTPS URL 的用户名、密码、IP 地址和端口。
- 可选: 如果集群主机位于带有重新加密 man-in-the-middle (MITM) 代理的网络中,或者集群需要信任证书用于容器镜像 registry,请选择 Configure cluster-wide trusted certificate 并添加额外的证书。
- 可选:如果要使用 ignition 文件引导它,请配置发现镜像。如需了解更多详细信息,请参阅配置发现镜像。
- 点 Generate Discovery ISO。
- 复制 发现 ISO URL。
下载发现 ISO:
wget - O vsphere-discovery-image.iso <discovery_url>
$ wget - O vsphere-discovery-image.iso <discovery_url>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<discovery_url
> 替换为上一步中的 Discovery ISO URL。在命令行中,关闭并销毁任何预先存在的虚拟机:
for VM in $(/usr/local/bin/govc ls /<datacenter>/vm/<folder_name>) do /usr/local/bin/govc vm.power -off $VM /usr/local/bin/govc vm.destroy $VM done
$ for VM in $(/usr/local/bin/govc ls /<datacenter>/vm/<folder_name>) do /usr/local/bin/govc vm.power -off $VM /usr/local/bin/govc vm.destroy $VM done
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<datacenter>
替换为数据中心的名称。将<folder_name>
替换为虚拟机清单文件夹的名称。从数据存储中删除预先存在的 ISO 镜像(如果存在):
govc datastore.rm -ds <iso_datastore> <image>
$ govc datastore.rm -ds <iso_datastore> <image>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<iso_datastore>
替换为数据存储的名称。使用 ISO 镜像的名称替换image
。上传辅助安装程序发现 ISO:
govc datastore.upload -ds <iso_datastore> vsphere-discovery-image.iso
$ govc datastore.upload -ds <iso_datastore> vsphere-discovery-image.iso
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<iso_datastore>
替换为数据存储的名称。注意集群中的所有节点都必须从发现镜像引导。
引导三个 control plane (master) 节点:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 详情请参阅 vm.create。
注意示例中演示了 control plane 节点所需的最小所需资源。
至少引导两个 worker 节点:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 详情请参阅 vm.create。
注意示例中演示了 worker 节点所需的最小所需资源。
确保虚拟机正在运行:
govc ls /<datacenter>/vm/<folder_name>
$ govc ls /<datacenter>/vm/<folder_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<datacenter>
替换为数据中心的名称。将<folder_name>
替换为虚拟机清单文件夹的名称。2 分钟后,关闭虚拟机:
for VM in $(govc ls /<datacenter>/vm/<folder_name>) do govc vm.power -s=true $VM done
$ for VM in $(govc ls /<datacenter>/vm/<folder_name>) do govc vm.power -s=true $VM done
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<datacenter>
替换为数据中心的名称。将<folder_name>
替换为虚拟机清单文件夹的名称。将
disk.enableUUID
设置为TRUE
:for VM in $(govc ls /<datacenter>/vm/<folder_name>) do govc vm.change -vm $VM -e disk.enableUUID=TRUE done
$ for VM in $(govc ls /<datacenter>/vm/<folder_name>) do govc vm.change -vm $VM -e disk.enableUUID=TRUE done
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<datacenter>
替换为数据中心的名称。将<folder_name>
替换为虚拟机清单文件夹的名称。注意您必须在所有节点上将
disk.enableUUID
设置为TRUE
,才能使用 vSphere 启用自动扩展。重启虚拟机:
for VM in $(govc ls /<datacenter>/vm/<folder_name>) do govc vm.power -on=true $VM done
$ for VM in $(govc ls /<datacenter>/vm/<folder_name>) do govc vm.power -on=true $VM done
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<datacenter>
替换为数据中心的名称。将<folder_name>
替换为虚拟机清单文件夹的名称。-
返回到 Assisted Installer 用户界面,并等待 Assisted Installer 发现主机,每个都处于
Ready
状态。 - 如果需要,选择角色。
- 在 Networking 中,取消选中 Allocate IPs via DHCP server。
- 设置 API VIP 地址。
- 设置 Ingress VIP 地址。
- 继续安装过程。