開始使用 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
替換為專案 ID。 Google Cloud使用
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 會建立該資源。如果已存在同名的 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 主題標籤,請完成下列步驟:
修改
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 如何處理物件的宣告式設定。