根據預設,資料庫叢集只允許來自使用者叢集和相同專案的連線。如要允許來自 Google Distributed Cloud 氣隙式機構外部 IP 位址的連線,請按照下列步驟操作:
控制台
- 使用繫結至
project-networkpolicy-admin
角色的帳戶登入 GDC 控制台,建立防火牆規則。 - 在 GDC 控制台的主選單中,選擇「Firewall」(防火牆)。
- 在「使用者建立的規則」部分,按一下「建立」。
- 在「防火牆規則詳細資料」中,為防火牆規則建立名稱。
- 在「流量方向」對話方塊中,選擇「INGRESS」。
- 在「目標」對話方塊中,選擇「服務」,然後選取「dbs」。
- 在「來源」對話方塊中,選擇「機構外部」,然後輸入要允許外部連線的 CIDR 範圍。
- 點選「建立」。
- 等待新規則的「狀態」欄顯示「就緒」。
- 使用已連結至
project-db-admin
- 在 GDC 控制台的主選單中,選擇「Database Service」。
- 選取要啟用外部連線的資料庫叢集。
- 檢查「資料庫叢集總覽」的「連線」部分是否已勾選「允許外部連線」。
- 在「資料庫叢集總覽」的「連線」部分,按一下「編輯」。
- 勾選「允許外部連線」核取方塊。
- 按一下 [儲存]。
API
建立
ProjectNetworkPolicy
資源,允許外部連線:apiVersion: networking.gdc.goog/v1 kind: ProjectNetworkPolicy metadata: name: allow-external-dbs namespace: USER_PROJECT spec: ingress: - from: - ipBlock: cidr: CIDR_RANGE policyType: Ingress subject: managedServices: matchTypes: - dbs subjectType: ManagedService ```
更新資料庫叢集,啟用機構外部連線:
kubectl patch dbcluster.DBENGINE_NAME.dbadmin.gdc.goog DBCLUSTER_NAME -p '{"spec":{"allowExternalIncomingTraffic":true}}' --type=merge -n USER_PROJECT
更改下列內容:
USER_PROJECT
:建立資料庫叢集的使用者專案名稱。CIDR_RANGE
:您要允許外部連線的 CIDR 範圍。DBENGINE_NAME
:資料庫引擎的名稱。這是alloydbomni
、postgresql
或oracle
其中之一。DBCLUSTER_NAME
:資料庫叢集的名稱。