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