All Products
Search
Document Center

Container Service for Kubernetes:Gunakan jaringan RDMA untuk pod pada Node Lingjun

Last Updated:Nov 11, 2025

Dokumen ini menjelaskan cara mengonfigurasi dan menggunakan Remote Direct Memory Access (RDMA) pada Node Lingjun dalam ACK managed cluster Pro untuk komunikasi jaringan kontainer berkinerja tinggi. Teknologi RDMA secara signifikan mengurangi latensi jaringan dan meningkatkan throughput, sehingga cocok untuk skenario yang memerlukan kinerja jaringan tinggi, seperti komputasi kinerja tinggi (HPC), pelatihan AI, dan penyimpanan terdistribusi.

Pengenalan RDMA

Remote Direct Memory Access (RDMA) adalah teknologi komunikasi jaringan berkinerja tinggi yang dirancang untuk mengatasi latensi pemrosesan data di sisi server dalam transmisi jaringan tradisional. RDMA memungkinkan transfer data langsung dari memori satu komputer ke memori komputer lain tanpa melibatkan sistem operasi kedua pihak. Mekanisme ini mendukung komunikasi jaringan dengan throughput tinggi dan latensi rendah, sehingga sangat sesuai untuk kluster komputasi paralel berskala besar.

RDMA mentransfer data langsung ke memori komputer target melalui jaringan, melewati sistem operasi. Proses ini meminimalkan konsumsi daya pemrosesan serta mengurangi beban replikasi memori dan peralihan konteks, sehingga menghemat bandwidth memori dan siklus CPU, yang pada akhirnya meningkatkan kinerja aplikasi.

Prasyarat

Dalam Kubernetes, pod mendukung dua pola jaringan:

  • Pola IP independen: Pod memiliki alamat IP sendiri (mode non-hostNetwork).

  • Pola jaringan bersama: Pod langsung menggunakan jaringan node host (mode hostNetwork).

Untuk menggunakan fitur RDMA pada pod dalam mode non-hostNetwork, kondisi berikut harus dipenuhi:

  • Jaringan komputasi kluster bare metal Lingjun yang menampung Node Lingjun harus menggunakan IPv6.

  • Anda harus memilih mode IPv6 saat membuat kluster bare metal Lingjun.

Untuk informasi lebih lanjut tentang cara membuat kluster bare metal Lingjun dan dukungannya terhadap IPv6, hubungi tim Lingjun dengan membuat tiket.

Prosedur

  1. Instal komponen RDMA Device Plugin.

    1. Pada halaman Clusters, temukan kluster yang ingin Anda kelola dan klik namanya. Di panel navigasi kiri, klik Add-ons.

    2. Pada halaman Component Management, klik tab Network. Temukan komponen RDMA Device Plugin dan instal sesuai petunjuk.

      Item Konfigurasi

      Deskripsi

      Aktifkan RDMA untuk pod dalam mode non-hostNetwork

      Pilih apakah akan mengaktifkan RDMA untuk pod dalam mode non-hostNetwork. Nilai yang valid:

      • False (tidak dicentang): Hanya pod dalam mode hostNetwork yang dapat menggunakan jaringan RDMA.

      • True (dicentang): Memungkinkan pod dalam mode non-hostNetwork menggunakan jaringan RDMA. Sebelum mengaktifkan opsi ini, pastikan kluster bare metal Lingjun yang terkait dengan kluster ACK menggunakan IPv6. Jika tidak, konfigurasi RDMA tidak akan berlaku.

  2. Verifikasi bahwa RDMA Device Plugin berjalan dengan benar pada setiap Node Lingjun yang diaktifkan RDMA.

    kubectl get ds ack-rdma-dp-ds -n kube-system

    Keluaran yang diharapkan:

    NAME             DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
    ack-rdma-dp-ds   2         2         2       2            2           <none>          xxh
  3. Periksa apakah node memiliki sumber daya rdma/hca.

    kubectl get node e01-cn-xxxx -oyaml

    Keluaran yang diharapkan:

    ...
      allocatable:
        cpu: 189280m
        ephemeral-storage: "3401372677838"
        hugepages-1Gi: "0"
        hugepages-2Mi: "0"
        memory: 2063229768Ki
        nvidia.com/gpu: "8"
        pods: "64"
        rdma/hca: 1k
      capacity:
        cpu: "192"
        ephemeral-storage: 3690725568Ki
        hugepages-1Gi: "0"
        hugepages-2Mi: "0"
        memory: 2112881480Ki
        nvidia.com/gpu: "8"
        pods: "64"
        rdma/hca: 1k
    ...
  4. Terapkan file YAML berikut untuk meminta sumber daya rdma/hca, yang memungkinkan pod menggunakan fitur RDMA.

    • Permintaan rdma/hca: 1 sudah cukup.

    • Jika Anda tidak mengaktifkan RDMA untuk pod dalam mode non-hostNetwork di komponen RDMA Device Plugin, hanya pod dengan hostNetwork: true yang dapat menggunakan fitur RDMA.

    apiVersion: batch/v1
    kind: Job
    metadata:
      name: hps-benchmark
    spec:
      parallelism: 1
      template:
        spec:
          containers:
          - name: hps-benchmark
            image: **
            command:
            - sh
            - -c
            - |
              python /workspace/wdl_8gpu_outbrain.py
            resources:
              limits:
                nvidia.com/gpu: 8
                rdma/hca: 1
            workingDir: /root
            volumeMounts:
              - name: shm
                mountPath: /dev/shm
            securityContext:
              capabilities:
                add:
                - SYS_RESOURCE
                - IPC_LOCK
          restartPolicy: Never
          volumes:
            - name: shm
              emptyDir:
                medium: Memory
                sizeLimit: 8Gi
          hostNetwork: true
          tolerations:
            - operator: Exists