Networking API 總覽

Networking API 使用 Kubernetes 自訂資源,並依賴 Kubernetes 資源模型 (KRM)。

透過 Networking API 使用 kubectl CLI,在 Google Distributed Cloud (GDC) 氣隙環境中建立及管理網路。

服務端點

視區域部署或全域部署而定,網路 API 分別提供在兩個套件中。

區域和全域網路 API 的 API 端點分別如下:

  • https://MANAGEMENT_API_SERVER_ENDPOINT/apis/networking.gdc.goog/v1
  • https://MANAGEMENT_API_SERVER_ENDPOINT/apis/networking.global.gdc.goog/v1

MANAGEMENT_API_SERVER_ENDPOINT 替換成 Management API 伺服器的端點。

探索文件

使用 kubectl proxy --port=8001 指令在本機開啟 API 伺服器的 Proxy。然後透過下列網址存取探索文件:

  • http://127.0.0.1:8001/apis/networking.gdc.goog/v1
  • http://127.0.0.1:8001/apis/networking.global.gdc.goog/v1

專案間流量的 Ingress 政策範例

以下是 ProjectNetworkPolicy 物件的範例,可讓 project-1 專案中的工作負載允許來自 project-2 專案中工作負載的連線,以及相同流程的回傳流量:

apiVersion: networking.gdc.goog/v1
kind: ProjectNetworkPolicy
metadata:
  namespace: project-1
  name: allow-ingress-traffic-from-project-2
spec:
  policyType: Ingress
  subject:
    subjectType: UserWorkload
  ingress:
  - from:
    - projects:
        matchNames:
        - project-2