本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。

创建Azure集群

在本节中,您将学习如何通过Rancher在Azure中部署https://documentation.suse.com/cloudnative/rke2/[RKE2]或https://documentation.suse.com/cloudnative/k3s/[K3s] Kubernetes集群。

首先,您在Rancher中设置Azure云凭据。

然后,您在Rancher中创建一个Azure集群,并在配置新集群时定义机器池。每个机器池都有一个Kubernetes角色,包括etcd、controlplane或worker。Rancher在新节点上安装Kubernetes,并根据机器池定义的Kubernetes角色设置每个节点。

当Rancher RKE2/K3s集群在Azure中运行并且前面有Azure负载均衡器时,出站流量会失败。解决此问题的变通方法如下:

  • 在内部负载均衡器上终止SSL/TLS

  • 使用L7负载均衡器

有关更多信息,请参考 Azure 负载均衡器限制 的文档。

有关配置Rancher在Azure节点上安装的Kubernetes集群的更多信息,请参阅RKE2K3s集群配置参考。

有关配置Azure机器的更多信息,请参阅Azure机器配置参考

在Azure中的准备

在部署集群之前,我们必须配置我们的Azure订阅,以允许第三方(如Rancher)对其资源进行操作。

为此,我们将首先在 Azure Active Directory (AD) 中创建一个新的 Azure 服务主体(SP);在 Azure 中,服务主体指的是一个具有管理 Azure 资源权限的应用程序用户。

以下是您必须运行的创建服务主体的模板`az cli`脚本,您需要输入您的SP名称、角色和范围:

az ad sp create-for-rbac \
  --name="<Rancher ServicePrincipal name>" \
  --role="Contributor" \
  --scopes="/subscriptions/<subscription Id>"

创建此服务主体将返回应用程序ID,也称为客户端ID客户端密钥。这些信息在您创建云凭据时使用。

创建Azure集群

创建您的云凭据

如果您已经有一组云凭证可供使用,请跳过此部分。

  1. 单击 ☰ > 集群管理

  2. 点击 云凭据

  3. 单击*创建*。

  4. 单击 Azure

  5. 输入您的Azure凭据。

  6. 单击*创建*。

*结果:*您已创建用于在集群中部署节点的云凭证。

创建您的集群

使用 Rancher 在 Azure 中创建 Kubernetes 集群。

  1. 单击 ☰ > 集群管理

  2. 在*集群*页面,点击*创建*。

  3. 切换开关到*RKE2/K3s*。

  4. 单击 Azure

  5. 选择一个*云凭证*(如果存在多个)。否则,它会被预选。

  6. 输入*集群名称*。

  7. 为每个Kubernetes角色创建一个机器池。请参考最佳实践以获取角色分配和数量的建议。

    1. 为每个机器池定义机器配置。请参考Azure 机器配置参考以获取有关配置选项的信息。

  8. 使用*集群配置*选择要安装的 Kubernetes 版本、使用的网络提供程序以及是否要启用项目网络隔离。 有关配置集群的帮助,请参考RKE2K3s集群配置参考。

  9. 使用*成员角色*配置集群的用户授权。点击 添加成员 以添加可以访问集群的用户。使用*角色*下拉菜单为每个用户设置权限。

  10. 单击*创建*。

结果:

您的集群已创建并被分配为*正在配置*状态。Rancher 正在启动您的集群。

在集群状态更新为*活动*后,您可以访问您的集群。

*活动*集群被分配两个项目:

  • Default,包含`default`名称空间

  • System,包含 cattle-systemtraefikkube-publickube-system 名称空间

可选的后续步骤

创建集群后,您可以通过Rancher UI访问它。作为最佳实践,我们建议设置这些访问集群的替代方式:

  • *使用kubectl CLI访问您的集群:*按照这些步骤在您的工作站上使用kubectl访问集群。在这种情况下,您将通过Rancher服务器的身份验证代理进行身份验证,然后Rancher将连接您到下游集群。此方法允许您在没有Rancher UI的情况下管理集群。

  • *使用授权的集群端点,通过kubectl CLI访问您的集群:*按照这些步骤直接使用kubectl访问您的集群,而无需通过Rancher进行身份验证。我们建议设置这种替代方法来访问您的集群,以便在无法连接到Rancher的情况下,您仍然可以访问集群。