Config Connector 使用入门


本指南通过讲解以下内容,介绍 Config Connector 资源管理的基础知识:

准备工作

如需完成本页面上的练习,请完成以下任务:

  • 完成使用 GKE 插件安装中的所有步骤,安装 Config Connector。

  • 配置 Config Connector 以使用默认项目

  • Config Connector 使用 Resource Manager API 启用服务 API。要执行这些步骤,您需要启用 Resource Manager API。您可以使用 gcloud 命令行工具启用此 API:
    gcloud services enable cloudresourcemanager.googleapis.com

发现可用的 Google Cloud 资源

要查看可以使用 Config Connector 创建的 Google Cloud 资源类型,请运行以下命令:

kubectl get crds --selector cnrm.cloud.google.com/managed-by-kcc=true

输出是您的 Config Connector 版本可以创建和管理的所有资源的列表。

例如,您可以使用 kubectl describe 查看 PubSubTopic 资源的 API 说明:

kubectl describe crd pubsubtopics.pubsub.cnrm.cloud.google.com

您还可以在 Config Connector 资源中查看可用资源的相关信息。

启用 Pub/Sub 服务

使用 Config Connector 通过向集群应用 YAML 配置来启用 Pub/Sub API:

  1. 将以下 YAML 复制到名为 enable-pubsub.yaml 的文件中。

    apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1
    kind: Service
    metadata:
      name: pubsub.googleapis.com
    
  2. 使用 kubectl apply 将配置应用到您的集群:如需启用 Pub/Sub API,请运行以下命令:

    kubectl apply -f enable-pubsub.yaml

创建 Pub/Sub 实例

创建一个名为 pubsub-topic.yaml 的文件,其中包含以下内容:

  apiVersion: pubsub.cnrm.cloud.google.com/v1beta1
  kind: PubSubTopic
  metadata:
    labels:
      LABEL_VALUE
    name: TOPIC_NAME

请替换以下内容:

  • LABEL_VALUE标签的键值对。例如 environment: production
  • TOPIC_NAME:Pub/Sub 主题名称

创建资源时,如果该资源不存在,则 Config Connector 会创建该资源。如果已存在同名的 Google Cloud 资源,则 Config Connector 将获取该资源并进行管理。如需详细了解如何获取现有资源,请参阅管理和删除资源

使用 kubectl apply 命令创建资源。如需创建 Pub/Sub 主题,请运行以下命令:

kubectl apply -f pubsub-topic.yaml 

描述资源

使用 kubectl describe 获取有关资源的详细信息。

例如,如需查看所有 Pub/Sub 主题,请运行以下命令:

kubectl describe pubsubtopics

在此列表中,您应该会看到在上一部分中创建的 Pub/Sub 主题。

验证资源是否准备就绪

创建 Pub/Sub 主题后,您可以检查其 status.condition。例如,如需检查 Pub/Sub 主题资源是否已准备就绪,请运行以下命令:

kubectl wait --for=condition=READY pubsubtopics TOPIC_NAME

TOPIC_NAME 替换为您的 Pub/Sub 主题的名称。

您应该会看到类似于以下示例的输出:

pubsubtopic.pubsub.cnrm.cloud.google.com/TOPIC_NAME condition met

更新资源

您可以通过更新 YAML 文件并使用 kubectl 重新应用该文件,来更新资源上的元数据

如需更改您在上一部分中创建的 Pub/Sub 主题上的标签,请完成以下步骤:

  1. 修改 pubsub-topic.yaml 文件的 metadata 部分以更改标签:

      apiVersion: pubsub.cnrm.cloud.google.com/v1beta1
      kind: PubSubTopic
      metadata:
        labels:
          NEW_LABEL_VALUE
        name: TOPIC_NAME
    

    请替换以下内容:

    • NEW_LABEL_VALUE:您之前添加的标签的更新后值。例如 environment: staging
    • TOPIC_NAME:Pub/Sub 主题名称
  2. 使用 kubectl apply 更新资源。运行以下命令:

    kubectl apply -f pubsub-topic.yaml
  3. 检查 Pub/Sub 实例,查看名称是否发生更改:

    kubectl describe pubsubtopics

    您的主题应带有新标签。

删除资源

使用 kubectl delete 删除资源。例如,如需删除您之前创建的 PubSubTopic,请使用 pubsub-topic.yaml 文件运行 kubectl delete

kubectl delete -f pubsub-topic.yaml

您会收到该资源已删除的确认消息:

pubsubtopic.pubsub.cnrm.cloud.google.com "TOPIC_NAME" deleted

默认情况下,Config Connector 会删除 PubSubTopic 资源。 如果您希望保留此资源,请参阅管理和删除资源中的说明。

后续步骤