全部产品
Search
文档中心

Container Service for Kubernetes:Tambahkan pod vSwitch

更新时间:Jul 02, 2025

Dalam skenario kluster Edge Container Service for Kubernetes (ACK) dengan plug-in Terway Edge yang telah diterapkan, jika Anda kehabisan alamat IP vSwitch atau perlu memperluas CIDR pod, Anda dapat menambahkan pod vSwitch baru untuk menyediakan sumber daya IP tambahan bagi kluster.

Prasyarat

Tambahkan vSwitch

Jika sumber daya IP dari pod vSwitch tidak mencukupi, Anda dapat menambahkan vSwitch ke kluster ACK Edge dengan langkah-langkah berikut:

  1. Buat vSwitch pada jaringan ENS.

    1. Masuk ke konsol ENS, dan pilih Network Management > vSwitches di panel navigasi sebelah kiri.

    2. Pada halaman vSwitches, klik Create vSwitch, masukkan informasi yang diperlukan, dan klik Create.

      • Node: Pilih node edge ENS.

      • Network: Pilih jaringan yang terkait dengan ENS.

      • Name: Berikan nama untuk vSwitch baru.

      • IPv4 CIDR Block: Pilih rentang jaringan yang berada dalam blok CIDR jaringan ENS.

  2. Perbarui ConfigMap Terway Edge untuk menyertakan vSwitch baru.

    kubectl edit cm privateip-config -n kube-system 

    Konfigurasikan vSwitch baru di bawah vswitches. Anda dapat menambahkan beberapa vSwitch. n-xxx menunjukkan ID jaringan di ENS, sedangkan ["vsw-xxx", "vsw-xxxx"] mewakili ID vSwitch dalam jaringan tersebut. Pastikan Anda tidak menghapus ID vSwitch yang sudah ada.

    apiVersion: v1
    kind: ConfigMap
    metadata:
      annotations:
        helm.sh/hook: pre-install
      name: privateip-config
      namespace: kube-system
    data:
      privateip_conf: |
        {
          "vswitches": {
             "n-xxx": ["vsw-xxx", "vsw-xxxx"],
             "n-xxx": ["vsw-xxx", "vsw-xxxx"]
          },
          "vswitch_selection_policy": "most"
        }
    
    Catatan

    Secara default, alamat IP pod dialokasikan dari vSwitch yang terkait dengan Antarmuka Jaringan Elastis (ENI) yang telah disiapkan. Pod vSwitch baru mungkin berada di bawah vSwitch yang berbeda dari yang menampung instance ENS dan instance ENI.

Bagaimana saya tahu apakah pod vSwitch saya memiliki cukup sumber daya IP?

Dalam skenario jaringan Terway Edge, jika pembuatan pod gagal dengan status ContainerCreating, lakukan langkah-langkah berikut untuk memverifikasi kecukupan sumber daya IP di vSwitch:

  1. Kueri node ENS yang terkait dengan pod.

    kubectl get pod -o wide 

    Output yang diharapkan:

    NAME      READY   STATUS              RESTARTS   AGE     IP             NODE    
    cube-1    0/1     ContainerCreating   0          41s     <none>         node-1 
    cube-2    0/1     ContainerCreating   0          41s     <none>         node-1  
  2. Lihat detail sumber daya dari node ENS.

    kubectl describe ensnodes node-1

    Output yang diharapkan:

    Name:         node-1
    Namespace:    
    Labels:       name=node-1
    API Version:  network.alibabacloud.com/v1beta1
    ....
    Events:
      Type     Reason         Age      From               Message
      ----     ------         ----     ----               -------
      Warning  AllocIPFailed  1m       ens-multi-ip-node  [SDKError] API: AssignPrivateIpAddresses, ErrorCode: InvalidVSwitchId.IpNotEnough, RequestId: xxxxxxx, Message: Don't have enough private IPs in this switch.
      Warning  AllocIPFailed  1m       ens-multi-ip-node  [SDKError] API: AssignPrivateIpAddresses, ErrorCode: InvalidVSwitchId.IpNotEnough, RequestId: xxxxxxx, Message: Don't have enough private IPs in this switch.

    Jika ErrorCode: InvalidVSwitchId.IpNotEnough ada di Events, maka pod vSwitch memerlukan lebih banyak sumber daya IP.

Referensi