開始使用 Config Connector
本指南說明 Config Connector 資源管理的基本概念,並教導您如何完成下列工作:
- 啟用 Google Cloud API。
- 建立及管理 Pub/Sub 主題。
事前準備
開始本頁的練習前,請先完成下列工作:
完成「手動安裝 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:
建立名為
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。使用
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 主題標籤,請完成下列步驟:
修改
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 主題名稱
使用
kubectl apply更新資源。執行下列指令:kubectl apply -f pubsub-topic.yaml
檢查 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 資源。如要保留這項資源,請參閱「管理及刪除資源」的操作說明。
後續步驟
- 瞭解 Config Connector 如何使用 Kubernetes 建構建立 Google Cloud 資源模型。
- 查看 Config Connector 可管理的 Google Cloud 資源。
- 使用 Config Connector 管理現有 Google Cloud 資源。
- 如需 Config Connector 的其他使用範例,請參閱 GitHub 存放區。
- 瞭解 Kubernetes 如何處理物件的宣告式設定。