要在 vCloud Usage Meter 中计量 Tanzu Kubernetes Grid 的产品使用情况数据,必须添加 Tanzu Kubernetes Grid 管理集群以进行计量。

前提条件

  • 确认与 Tanzu Kubernetes Grid 管理集群关联的 vCenter Server 实例列在 vCenter Server 实例的 vCloud Usage Meter 列表中。
  • 通过使用 Tanzu Kubernetes Grid 设置服务帐户计量用户来获取持有者令牌。有关信息,请参见获取 Tanzu Kubernetes Grid 管理集群的持有者令牌

过程

  1. vCloud Usage Meter Web 界面的主菜单栏中,单击产品
  2. 在左侧窗格中,导航到 > Tanzu Kubernetes Grid 多云
  3. 单击添加
    此时将打开 添加 Tanzu Kubernetes Grid 多云 (TKGm) 向导。
  4. vCenter 端点下拉菜单中,选择与 Tanzu Kubernetes Grid 管理集群关联的 vCenter Server 实例的 IP 地址。
  5. 端点文本框中,输入属于管理集群一部分的控制平面虚拟机的主机名或 IP 地址。
    注: 请考虑以下因素:
    • 负载均衡器 IP 根据目标节点轮换证书。如果输入负载均衡器 IP,则每次 vCloud Usage Meter 收集产品使用情况数据时都必须接受产品证书。
    • 确保在缩减集群期间不会删除控制平面虚拟机。
  6. 持有者令牌文本框中,输入从 Tanzu Kubernetes Grid 管理集群获取的持有者令牌。
  7. 版本下拉菜单中,选择 Tanzu Kubernetes Grid 版本。
    • 基本
    • Standard
    • Advanced
  8. 衡量指标下拉菜单中,选择 vCloud Usage Meter 是必须基于 vRAM 还是 CPU 内核计量。

结果

Tanzu Kubernetes Grid 现已是 vCloud Usage Meter 计量的管理集群的一部分。如果发生错误, Tanzu Kubernetes Grid 管理集群列表的 状态列中将显示错误消息。

获取 Tanzu Kubernetes Grid 管理集群的持有者令牌

要添加 Tanzu Kubernetes Grid 管理集群以进行计量,您必须获取持有者令牌。

要获取 Tanzu Kubernetes Grid 管理集群的持有者令牌,必须设置具有集群角色的服务计量用户。您必须为用户和集群角色创建两个单独的 YAML 文件。

前提条件

获取 Tanzu Kubernetes Grid 管理集群的凭据。有关信息,请参见 VMware Tanzu Kubernetes Grid 1.5 文档中的检索 Tanzu Kubernetes 集群 kubeconfig

过程

  1. 创建 YAML 文件并输入用户元数据。
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: user
      namespace: tkg-system
  2. 要使用创建的用户更新 Tanzu Kubernetes Grid 管理集群的资源,请运行相应命令。
    kubectl apply -f user-filename.yaml
  3. 要向用户授予集群角色,请创建 YAML 文件。
    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRoleBinding
    metadata:
      name: user
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: ClusterRole
      name: cluster-admin
    subjects:
      - kind: ServiceAccount
        name: user
        namespace: tkg-system
  4. 要使用向用户授予的集群角色更新 Tanzu Kubernetes Grid 管理集群的资源,请运行相应命令。
    kubectl apply -f user-role-filename.yaml
  5. 列出 tkg-system 命名空间中的所有密钥。
    kubectl get secret -n tkg-system
    可以查看 tkg-system 命名空间中所有密钥的列表。创建的持有者令牌具有 user-token-Kubernetes-generated-string 名称模式和 kubernetes.io/service-account-token 类型,其中 user 是为用户输入的名称, Kubernetes-generated-string 是 Kubernetes 系统生成的字符串,用于唯一地标识持有者令牌。
  6. 要获取持有者令牌,请运行 命令。
    kubectl get secret user-token-Kubernetes-generated-string -o yaml -n tkg-system
  7. 对持有者令牌进行解码。
    echo bearer-token | base64 --decode