開始使用 Config Connector

本指南說明 Config Connector 資源管理的基本概念,並教導您如何完成下列工作:

事前準備

開始本頁的練習前,請先完成下列工作:

  • 完成「手動安裝 Config Connector Operator」中的所有步驟,安裝 Config Connector。

  • 設定 Config Connector 以使用預設命名空間。 您設為預設的命名空間,應與您指定資源建立位置時新增註解的命名空間相同。

  • Config Connector 會使用 Service Usage API 啟用服務 API。如要執行這些步驟,請啟用 Service Usage API。您可以使用 Google Cloud CLI 啟用這項 API:
    gcloud services enable serviceusage.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. 建立名為 enable-pubsub.yaml 的檔案,並將下列 YAML 複製到檔案中:

    apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1
    kind: Service
    metadata:
      name: pubsub.googleapis.com
    spec:
      projectRef:
        external: projects/PROJECT_ID
    

    將 PROJECT_ID 替換為您的 Google Cloud專案 ID。

  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:
    annotations:
      cnrm.cloud.google.com/project-id: PROJECT_ID
    labels:
      LABEL_KEY: LABEL_VALUE
    name: TOPIC_NAME

更改下列內容:

  • PROJECT_ID:您的 Google Cloud 專案 ID。
  • LABEL_KEY: LABEL_VALUE:標籤的鍵/值配對。 例如:environment: production。
  • TOPIC_NAME:Pub/Sub 主題名稱。

建立資源時,如果資源不存在,Config Connector 會建立資源。如果已有名稱相同的資源,Config Connector 會取得並管理該資源。 Google Cloud 如要進一步瞭解如何取得現有資源,請參閱「管理及刪除資源」。

使用 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:
        annotations:
          cnrm.cloud.google.com/project-id: PROJECT_ID
        labels:
          NEW_LABEL_VALUE
        name: TOPIC_NAME
    

    更改下列內容:

    • PROJECT_ID:您的 Google Cloud 專案 ID。
    • 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 資源。如要保留這項資源,請參閱「管理及刪除資源」的操作說明。

後續步驟