在 vSphere 中配置 Kubernetes 集群
在本节中,你将学习如何使用 Rancher 在 vSphere 中安装 RKE Kubernetes 集群。
首先,在 Rancher 中设置你的 vSphere 云凭证。然后,使用云凭证创建一个节点模板,Rancher 将使用该模板在 vSphere 中配置节点。
然后,在 Rancher 中创建一个 vSphere 集群,并在配置新集群时为集群定义节点池。每个节点池都有一个 etcd、controlplane 或 worker 的 Kubernetes 角色。Rancher 会在新节点上安装 RKE Kubernetes,并为每个节点设置节点池定义的 Kubernetes 角色。
有关配置 vSphere 节点模板的详细信息,请参阅 vSphere 节点模板配置参考。
有关在 Rancher 中配置 RKE Kubernetes 集群的详细信息,请参阅集群配置参考。
vSphere 中的准备工作
本节介绍设置 vSphere 的要求,以便 Rancher 可以配置虚拟机和集群。
节点模板已使用 vSphere Web Services API 6.5 版本进行记录和测试。
在 vSphere 中创建凭证
在继续创建集群之前,确保你的 vSphere 用户拥有足够的权限。设置节点模板时,模板将需要使用这些 vSphere 凭证。
有关如何在 vSphere 中创建具有所需权限的用户的说明,请参阅此操作指南。这些步骤会产生需要向 Rancher 提供的用户名和密码,从而允许 Rancher 在 vSphere 中配置资源。
网络权限
必须确保运行 Rancher Server 的主机能够建立以下网络连接:
- 连接到 vCenter Server 上的 vSphere API(通常是端口 443/TCP)。
- 连接到用于实例化集群虚拟机的所有 ESXi 主机上的 Host API(端口 443/TCP)(仅在使用 ISO 创建模式时需要)。
- 连接到创建的 VM 上的 22/TCP 和 2376/TCP 端口。
有关在基础设施提供商上创建节点的端口要求,请参阅节点网络要求。
用于 vSphere API 访问的有效 ESXi 许可证
免费的 ESXi 许可证不支持 API 访问。vSphere Server 必须具有有效或评估的 ESXi 许可证。
具有 DRS 的集群的 VM-VM 关联规则
如果你的集群启用了 DRS,建议设置 VM-VM 关联规则。这些规则允许分配了 etcd 和 controlplane 角色的虚拟机在分配给不同节点池时,在单独的 ESXi 主机上运行。这种做法可确保单个物理机的故障不会影响这些平面的可用性。
创建 vSphere 集群
在 Rancher 中创建 vSphere 集群的操作取决于 Rancher 的版本。
1. 创建云凭证
- 点击 ☰ > 集群管理。
- 单击云凭证。
- 单击创建。
- 单击 VMware vSphere。
- 输入你的 vSphere 凭证。如需帮助,请参见节点模板配置参考中的账号访问。
- 单击创建。
结果:已创建用于在集群中配置节点的云凭证。你可以在其他节点模板或集群中复用这些凭证。
2. 使用云凭证创建节点模板
为 vSphere 创建节点模板会允许 Rancher 在 vSphere 中配置新节点。其他集群可以复用节点模板。
- 点击 ☰ > 集群管理。
- 单击 RKE1 配置 > 节点模板。
- 单击创建。
- 单击添加模板。
- 单击 vSphere。
- 填写 vSphere 的节点模板。有关填写表格的帮助,请参阅 vSphere 节点模板配置参考。
- 单击创建。
3. 使用节点模板创建具有节点池的集群
使用 Rancher 在 vSphere 中创建 Kubernetes 集群。
- 在左上角,单击 ☰ > 集群管理。
- 在集群页面上,单击创建。
- 单击 VMware vSphere。
- 输入集群名称并使用你的 vSphere 云凭证。点击继续。
- 使用成员角色为集群配置用户授权。点击添加成员添加可以访问集群的用户。使用角色下拉菜单为每个用户设置权限。
- 使用集群选项选择要安装的 Kubernetes 版本、要使用的网络提供商,以及是否启用项目网络隔离。要查看更多集群选项,请单击显示高级选项。如需获取配置集群的帮助,请参阅 RKE 集群配置参考。
- 如果你想稍后动态配置持久存储或其他基础设施,你需要修改集群 YAML 文件来启用 vSphere 云提供商。有关更多信息,请参阅树内 vSphere cloud provider 文档和树外 vSphere cloud provider 文档。
- 将一个或多个节点池添加到你的集群。每个节点池都使用节点模板来配置新节点。有关节点池的更多信息,包括为节点分配 Kubernetes 角色的最佳实践,请参阅本节。
- 检查并确认你的选项。然后单击创建。
结果:
你已创建集群,集群的状态是配置中。Rancher 已在你的集群中。
当集群状态变为 Active 后,你可访问集群。
Active 状态的集群会分配到两个项目:
Default
:包含default
命名空间System
:包含cattle-system
,ingress-nginx
,kube-public
和kube-system
命名空间。
可选的后续步骤
创建集群后,你可以通过 Rancher UI 访问集群。最佳实践建议你设置以下访问集群的备用方式:
- 通过 kubectl CLI 访问你的集群:按照这些步骤在你的工作站上使用 kubectl 访问集群。在这种情况下,你将通过 Rancher Server 的身份验证代理进行身份验证,然后 Rancher 会让你连接到下游集群。此方法允许你在没有 Rancher UI 的情况下管理集群。
- 通过 kubectl CLI 使用授权的集群端点访问你的集群:按照这些步骤直接使用 kubectl 访问集群,而无需通过 Rancher 进行身份验证。我们建议设置此替代方法来访问集群,以便在无法连接到 Rancher 时访问集群。
- 配置存储:有关如何使用 Rancher 在 vSphere 中配置存储的示例,请参阅本节。要在 vSphere 中动态配置存储,你必须启用 vSphere 云提供商。有关更多信息,请参阅树内 vSphere cloud provider 文档和树外 vSphere cloud provider 文档。