匯出並套用 Kubernetes 網路原則

您可以採用 YAML 格式匯出與 Kubernetes 物件相關的建議網路原則規則。
VMware Aria Operations for Networks
僅支援針對依命名空間分組和依服務拓撲分組匯出至 YAML 格式。
  1. 若要將建議的規則匯出至 YAML 格式,請在規劃安全性模型中選取您要為其規劃安全性的 Kubernetes 叢集,然後執行其中一個步驟。
    • 在微分割 Widget 中展開更多選項,然後選取
      以 YAML 格式匯出規則
      ,或
    • 在微分割輪狀視圖上選取一個節點,按一下建議的防火牆規則的計數,展開更多選項並選取
      以 YAML 格式匯出規則
    VMware Aria Operations for Networks
    會下載以 Kubernetes 網路原則命名的 ZIP 檔案以及與其相關聯的時間戳記。當您解壓縮檔案時,將會顯示下列五個 CSV 檔案以及多個資料夾,具體取決叢集數目。每個資料夾將包含叢集的多個 YAML 檔案。
    檔案名稱
    說明
    network-policy-others-ipaddress.csv
    包含服務或命名空間與之通訊的實體伺服器和虛擬機器的 IP 位址。
    recommended-namespace-labels-to-add.csv
    包含要附加至與命名空間相關聯的網繭的標籤。
    範例:
    • 叢集
      - pdk8s
    • 命名空間
      - sock-shop
    • 標籤
      - sock-shop-pdk8s
    recommended-service-labels-to-add.csv
    包含要附加至與服務相關聯的網繭的標籤。
    範例:
    • 叢集
      - pdk8s
    • 命名空間
      - sock-shop
    • 服務
      - front-end
    • 標籤
      - Service:front-sock-shop-pdk8s
    • 叢集
      - pdk8s
    • 命名空間
      - sock-shop
    • 服務
      - user
    • 標籤
      - Service:user-sock-shop
    recommended-network-policy.csv
    包含由
    VMware Aria Operations for Networks
    建議的所有規則。
    exported-network-policy-rule-names.csv
    列出根據建議的規則匯出的所有網路原則。
  2. 若要套用服務標籤,請執行下列步驟:
    1. 執行下列 Kubernetes CLI 命令。
      kubectl edit deployment
      service-name
      -n
      namespace-name
      kubectl edit deployment
      redis-primary
      -n
      guestbook
      服務的部署檔案隨即開啟。
    2. 在服務標籤清單中,將 CSV 檔案中建議的標籤附加到服務部署的規格部分中所述的標籤。
  3. 若要套用命名空間標籤,請執行下列步驟:
    1. 執行下列 Kubernetes CLI 命令。
      kubectl edit namespace
      namespace-name
      kubectl edit namespace
      guestbook
      命名空間的部署檔案隨即開啟。
    2. 在中繼資料中,將 CSV 檔案中建議的標籤附加到命名空間部署的
      spec
      部分中所述的標籤。
  4. 執行下列命令來確認標籤是否已套用至網繭。
    kubectl get pods -n
    namespace-name
    --show-labels
    kubectl get pods
    guestbook
    --show-labels
    查看結果視圖中的標籤。
    在命名空間上套用時,標籤不會反映在網繭上。
  5. 若要建立網路原則,請將 YAML 檔案從個別叢集資料夾複製到另一個資料夾,並執行下列任一命令:
    • kubectl apply -f <folder-name>/
      - 將所有防火牆規則一起套用。
    • kubectl apply -f <folder-name>/<firewall-rule>.yaml
      - 逐一套用防火牆規則