云管理员可以在 Cloud Assembly 中添加、查看和管理已部署 Kubernetes 集群和命名空间(包括常规型和基于 Pacific)的配置。

具有云管理员特权的用户可以在基础架构 > 资源 > Kubernetes 页面上查看、添加和管理您有权访问的 Kubernetes 集群和命名空间。此页面包含“集群”、“命名空间”、“主管集群”和“主管命名空间”选项卡。可以选择其中一个选项卡查看和管理类似资源。最常见的情况是,此页面可帮助管理部署的集群和命名空间。

  • 集群:集群是分布在一个或多个物理机上的一组 Kubernetes 节点。此页面显示已配置为可在 Cloud Assembly 实例上使用的已置备但未部署的集群。您可以单击集群查看有关其当前状态的信息。部署集群时,包含指向 Kubconfig 文件的链接,此文件只能由云管理员进行访问。此文件授予对集群的完全管理员特权,包括命名空间列表。

    主管集群为 vSphere 实例所独有,并使用 ESXi 作为其 Worker 节点,而不使用 Linux。

  • 命名空间:命名空间是虚拟集群,它为管理员提供了一种分隔集群资源的方法。它们有助于在大型用户组和组织之间管理资源。作为基于角色进行访问控制的一种形式,云管理员可以让用户在请求部署时将命名空间添加到项目,然后从“Kubernetes 集群”页面管理这些命名空间。部署命名空间时,包含指向 kubeconfig 文件的链接,该文件让有效用户(如开发人员)能够查看和管理该命名空间的某些方面。

    主管集群和主管命名空间仅存在于 vSphere 实例上,并提供对 vSphere 对象的类似 Kubernetes 的访问权限。

云管理员可以更改与此页面上的 Kubernetes 命名空间或集群关联的项目,以便管理员可以从云模板和 Service Broker 置备 Kubernetes 资源,然后将其分配给特定项目以供使用。管理员可以更改集群的范围,使其成为全局集群或项目特定的集群。全局集群显示适用于所有 Kubernetes 区域的“集群”选项卡,可用于进行选择和置备。如果集群是全局集群,可以将其添加到 Kubernetes 区域,然后使用该集群从目录置备命名空间。

如果要配置新集群或现有集群,必须选择是使用主 IP 地址还是主节点主机名进行连接。

Cloud Assembly 中使用常规 Kubernetes 集群

您可以使用此页面上的选项向 Cloud Assembly 添加新集群、现有集群或外部集群。

  1. 选择基础架构 > 资源 > Kubernetes,并确认“集群”选项卡处于活动状态。

    如果当前已为您的 Cloud Assembly 实例配置任何集群,这些集群将显示在此页面上。

  2. 如果要添加新集群或现有集群,或者部署集群,请根据下表选择适当的选项。
    选项 说明 详细信息
    部署 Cloud Assembly 添加新集群 您必须指定要将此集群部署到的 TKGI 云帐户以及所需计划和节点数。
    添加现有项 配置现有集群以使用您的项目。 您必须指定 TKGI 云帐户、要使用的集群以及适用于目标开发人员的相应项目。此外,您还需要指定共享范围。如果要全局共享,必须相应地配置 Kubernetes 区域和命名空间。
    添加外部项 将可能与 TKGI 没有关联的 vanilla Kubernetes 集群添加到 Cloud Assembly 您必须指定与集群关联的项目,输入所需集群的 IP 地址,然后选择连接到此集群所需的云代理和证书信息。
  3. 单击添加以使集群可在 Cloud Assembly 中使用。

Cloud Assembly 中使用 Kubernetes 命名空间

如果您是云管理员,则命名空间可帮助您对 Kubernetes 集群资源进行分组和管理。如果您是用户,则命名空间是 Kubernetes 集群内供您进行部署的区域。管理员和用户可以使用位于基础架构 > 资源 > Kubernetes 页面上的“命名空间”选项卡访问命名空间。

可通过多种方式将 Kubernetes 命名空间添加到 Cloud Assembly 中的资源。以下过程概述了一种典型方法。
  1. 选择基础架构 > 资源 > Kubernetes,然后单击“命名空间”选项卡。
  2. 要添加新命名空间,请单击新建命名空间。要添加现有命名空间,请单击添加命名空间
  3. 输入命名空间的名称描述

    此时,您已添加一个可用于 Kubernetes 资源的命名空间,但此命名空间尚未与任何特定内容相关联。

  4. 指定要与此命名空间关联的集群
  5. 单击创建将此命名空间添加到 Cloud Assembly

可以通过多种不同的方法在 Kubernetes 命名空间上添加自定义属性以支持可扩展性。通过创建 Cloud Assembly 云模板置备命名空间时,添加自定义属性。在云模板中指定 Kubernetes 命名空间时,可以将属性添加到命名空间。首先,可以右键单击模板中的属性,以访问作为云模板结构定义一部分的默认属性。第二种方法是,可以在云模板中命名空间的属性部分添加用户定义的属性。

部署后,这些自定义属性将显示在适用部署的 Cloud Assembly 中的“部署”页面上。

最后,还可以使用在 Cloud Assembly 中的可扩展性 > 操作页面上配置的操作将自定义属性添加到命名空间。

使用主管集群和主管命名空间

云管理员可以在 Cloud Assembly 中的“Kubernetes”页面上查看和更改主管集群和命名空间的配置。

  1. Cloud Assembly 中选择基础架构 > 资源 > Kubernetes
  2. 选择添加主管集群
  3. 指定目标 vSphere 云帐户的帐户详细信息。
  4. 单击“主管集群”文本框中的“搜索”图标,以查看所有主管集群或按名称搜索集群。
  5. 选择所需的集群,然后单击添加
  6. 选择“主管命名空间”选项卡,然后单击新建主管命名空间按钮以添加新的命名空间。
  7. 选择“主管命名空间”选项卡,然后单击新建主管命名空间按钮以添加新的命名空间。
    1. 如果要创建新命名空间,请添加名称描述
    2. 选择要与此命名空间关联的适当云帐户
    3. 选择要与此命名空间关联的主管集群
    4. 选择要与此命名空间关联的项目
    5. 使用可用存储策略选项添加用于命名空间的存储策略。

      可以添加所有可用存储策略或选择特定策略以用于主管命名空间。此外,还可以选择对每个可用存储策略的可用存储大小设置限制。

    6. 单击创建
  8. 查看新命名空间的相关详细信息。如果需要,可以更改存储策略配置。
    将在“用户”选项卡中列出当前有权访问 vSphere 中命名空间的用户和组。如果将新用户或组添加到项目中,请单击此选项卡上的 更新用户按钮以更新列表。列表不会自动更新,因此必须使用按钮进行更新。
    注: 仅当 Cloud Assembly 和 vCenter 配置了一个通用 Active Directory/LDAP 服务时,同步用户才有意义。

配置集群或命名空间后,Cloud Assembly 中的基础架构 > 资源 > Kubernetes 页面将显示可供用户使用的集群和命名空间。可以单击单个命名空间或集群以打开一个页面,其中包含许多显示资源的统计信息和其他信息的选项卡,并允许配置各种选项。

管理员可以通过 Kubernetes 页面上的集群“摘要”选项卡查看和(在某些情况下)更新集群的配置,包括更改范围。通过“共享”单选按钮,可以选择“全局”(可通过 Kubernetes 区域共享)或“项目”(访问仅限于单个项目)。如果选择“项目”,还必须在下面的“项目”选择中指定适用的项目。
注: 更改共享配置可能会影响集群上可用的命名空间。

用户可以单击“摘要”选项卡上的“地址”链接,打开 vSphere Kubernetes CLI 工具以管理命名空间。用户必须是云管理员或指定项目的命名空间的成员才能访问主管命名空间详细信息的链接。此外,用户还可以下载自定义 Kubectl 以使用主管命名空间。用户可以登录到主管命名空间,并像使用任何其他命名空间一样使用该命名空间,然后创建云模板并部署应用程序。