Bagikan melalui


Menggunakan driver Azure Managed Lustre CSI dengan Azure Kubernetes Service

Dalam artikel ini, Anda mempelajari cara merencanakan, menginstal, dan menggunakan Azure Managed Lustre di Azure Kubernetes Service (AKS) dengan Driver CSI Azure Lustre untuk Kubernetes. Driver ini didasarkan pada spesifikasi Antarmuka Dukungan Kontainer (CSI).

Anda dapat menggunakan Driver CSI Azure Lustre untuk Kubernetes untuk mengakses penyimpanan Azure Managed Lustre sebagai volume penyimpanan persisten dari kontainer Kubernetes yang disebarkan di AKS.

Versi Kubernetes yang kompatibel

Driver CSI Azure Lustre untuk Kubernetes kompatibel dengan AKS. Penginstalan Kubernetes lainnya saat ini tidak didukung.

AKS Kubernetes versi 1.21 dan yang lebih baru didukung. Dukungan ini mencakup semua versi yang saat ini tersedia saat Anda membuat kluster AKS baru.

Penting

Saat ini, Driver CSI Azure Lustre untuk Kubernetes hanya mendukung SKU OS Linux Ubuntu untuk pool node AKS.

Versi Lustre yang kompatibel

Driver Azure Lustre CSI untuk Kubernetes kompatibel dengan Azure Managed Lustre. Penginstalan Lustre lainnya saat ini tidak didukung.

Driver CSI Azure Lustre untuk Kubernetes versi 0.1.10 dan yang lebih baru didukung dengan versi layanan Azure Managed Lustre saat ini.

Prasyarat

Merencanakan penyebaran AKS Anda

Saat Anda menyebarkan Azure Kubernetes Service, beberapa opsi memengaruhi operasi antara AKS dan Azure Managed Lustre.

Menentukan jenis jaringan yang akan digunakan dengan AKS

Dua jenis jaringan kompatibel dengan SKU OS Linux Ubuntu: kubenet dan driver Azure Container Network Interface (CNI). Kedua opsi berfungsi dengan Driver CSI Azure Lustre untuk Kubernetes, tetapi memiliki persyaratan berbeda yang perlu Anda pahami saat menyiapkan jaringan virtual dan AKS. Untuk informasi selengkapnya tentang menentukan pilihan yang tepat, lihat konsep jaringan untuk aplikasi di Azure Kubernetes Service (AKS).

Menentukan arsitektur jaringan untuk interkonektivitas AKS dan Azure Managed Lustre

Azure Managed Lustre beroperasi dalam jaringan virtual privat. Instans AKS Anda harus memiliki konektivitas jaringan ke jaringan virtual Azure Managed Lustre. Ada dua cara umum untuk mengonfigurasi jaringan antara Azure Managed Lustre dan AKS:

  • Pasang AKS di jaringan virtualnya sendiri dan buat hubungan jaringan virtual dengan jaringan virtual Azure Managed Lustre.
  • Gunakan opsi "Bawa jaringan virtual Azure Anda sendiri" di AKS untuk menginstal AKS di subnet baru pada jaringan virtual Azure Managed Lustre.

Catatan

Kami tidak menyarankan Anda menginstal AKS di subnet yang sama dengan Azure Managed Lustre.

Peering AKS dan jaringan virtual Azure Managed Lustre

Pilihan untuk melakukan peering dua jaringan virtual memiliki keuntungan dalam memisahkan pengelolaan jaringan menjadi peran dengan hak istimewa yang berbeda. Peering juga dapat memberikan fleksibilitas tambahan, karena Anda dapat menerapkannya di seluruh langganan atau wilayah Azure. Peering jaringan virtual memerlukan koordinasi antara kedua jaringan untuk menghindari pemilihan ruang jaringan IP yang bertentangan.

Diagram yang memperlihatkan dua jaringan virtual, satu untuk Azure Managed Lustre dan satu untuk AKS, dengan panah peering yang menghubungkannya.

Menginstal AKS di subnet di jaringan virtual Azure Managed Lustre

Opsi untuk menginstal kluster AKS di jaringan virtual Azure Managed Lustre dengan fitur Bring your own Azure virtual network di AKS dapat menguntungkan dalam skenario di mana jaringan dikelola secara tunggal. Anda harus membuat subnet tambahan, berukuran untuk memenuhi persyaratan jaringan AKS Anda, di jaringan virtual Azure Managed Lustre.

Tidak ada pemisahan hak istimewa untuk manajemen jaringan saat Anda menyediakan AKS di jaringan virtual Azure Managed Lustre. Perwakilan layanan AKS memerlukan hak istimewa di jaringan virtual Azure Managed Lustre.

Diagram yang menunjukkan jaringan virtual Azure Managed Lustre dengan dua subnet, satu untuk sistem file Lustre dan satu untuk AKS.

Menyiapkan driver

Untuk mengaktifkan Driver CSI Azure Lustre untuk Kubernetes, lakukan langkah-langkah berikut:

  1. Membuat kluster sistem file Azure Managed Lustre.

  2. Membuat kluster AKS.

  3. Membuat sebuah peering jaringan virtual.

  4. Instal driver.

  5. Membuat dan mengonfigurasi volume persisten.

  6. Periksa penginstalan dengan menggunakan pod echo, jika diinginkan, untuk mengonfirmasi bahwa driver berfungsi.

Bagian berikut ini menjelaskan setiap tugas secara lebih rinci.

Membuat kluster sistem file Azure Managed Lustre

Jika Anda belum membuat kluster sistem file Azure Managed Lustre, buat kluster sekarang. Untuk petunjuknya, lihat Membuat sistem file Azure Managed Lustre dengan menggunakan portal Microsoft Azure. Saat ini, driver hanya dapat digunakan dengan sistem file Azure Managed Lustre yang ada.

Membuat kluster AKS

Jika Anda belum membuat kluster AKS, buat penyebaran kluster. Lihat Menyebarkan kluster Azure Kubernetes Service (AKS) dengan menggunakan portal Microsoft Azure.

Membuat peering jaringan virtual

Catatan

Lewati langkah peering jaringan ini jika Anda menginstal AKS di subnet di jaringan virtual Azure Managed Lustre.

Jaringan virtual AKS dibuat dalam grup sumber daya terpisah dari grup sumber daya kluster AKS. Anda dapat menemukan nama grup sumber daya ini dengan masuk ke kluster AKS Anda di portal Microsoft Azure, masuk ke Properti, dan menemukan grup sumber daya Infrastruktur . Grup sumber daya ini berisi jaringan virtual yang perlu dipasangkan dengan jaringan virtual Azure Managed Lustre. Ini cocok dengan pola >.

Untuk melakukan peering jaringan virtual AKS dengan jaringan virtual Azure Managed Lustre Anda, rujuk peering jaringan virtual.

Tip

Karena penamaan grup sumber daya MC_ dan jaringan virtual, nama jaringan dapat serupa atau sama di beberapa penyebaran AKS. Saat Anda menyiapkan peering, berhati-hatilah dalam memilih jaringan AKS yang diinginkan.

Menyambungkan ke kluster AKS

  1. Buka sesi terminal dengan akses ke alat Azure CLI dan masuk ke akun Azure Anda:

    az login
    
  2. Masuk ke portal Azure.

  3. Temukan kluster AKS Anda. Pada panel Gambaran Umum, pilih tombol Sambungkan, lalu salin perintah untuk Mengunduh kredensial kluster.

  4. Di sesi terminal Anda, tempelkan perintah untuk mengunduh kredensial. Perintah ini mirip dengan:

    az aks get-credentials --subscription <AKS_subscription_id> --resource_group <AKS_resource_group_name> --name <name_of_AKS>
    
  5. Instal kubectl jika tidak ada di lingkungan Anda:

    az aks install-cli
    
  6. Verifikasi bahwa konteks saat ini adalah kluster AKS tempat Anda baru saja menginstal kredensial dan Anda dapat menyambungkannya:

    kubectl config current-context
    kubectl get deployments --all-namespaces=true
    

Pasang driver

Untuk menginstal Driver CSI Azure Lustre untuk Kubernetes, jalankan perintah berikut:

curl -skSL https://raw.githubusercontent.com/kubernetes-sigs/azurelustre-csi-driver/main/deploy/install-driver.sh | bash

Untuk mendapatkan contoh perintah untuk penginstalan lokal, lihat Menginstal driver Azure Lustre CSI pada kluster Kubernetes.

Membuat dan mengonfigurasi volume persisten

Untuk membuat volume persisten untuk sistem file Azure Managed Lustre yang ada:

  1. Salin file konfigurasi berikut dari folder /docs/examples/ di repositori azurelustre-csi-driver . Jika Anda mengkloning repositori saat menginstal driver, Anda sudah memiliki salinan lokal yang tersedia.

    • storageclass_existing_lustre.yaml
    • pvc_storageclass.yaml

    Jika Anda tidak ingin mengkloning seluruh repositori, Anda dapat mengunduh setiap file satu per satu. Buka masing-masing tautan berikut, salin konten file, lalu tempelkan konten ke dalam file lokal dengan nama file yang sama.

  2. Dalam file storageclass_existing_lustre.yaml, perbaruilah nama internal kluster Lustre dan alamat IP dari layanan manajemen Lustre (MGS).

    Cuplikan layar file storageclass_existing_lustre.yaml dengan nilai untuk diganti disorot.

    Kedua pengaturan ditampilkan di portal Microsoft Azure, pada panel koneksi Klien untuk sistem file Azure Managed Lustre Anda.

    Cuplikan layar panel untuk koneksi klien di portal Microsoft Azure. Alamat IP MGS dan nama

    Buat pembaruan ini:

    • Ganti EXISTING_LUSTRE_FS_NAME dengan nama internal kluster Lustre yang ditetapkan sistem di sistem file Azure Managed Lustre Anda. Nama internal biasanya lustrefs. Nama internal bukan nama yang Anda berikan pada sistem file saat membuatnya.

      Perintah yang disarankan mount menyertakan nama yang disorot dalam string alamat berikut.

      Cuplikan layar contoh string alamat di panel untuk koneksi klien. Nama internal cluster Lustre disorot.

    • Ganti EXISTING_LUSTRE_IP_ADDRESS dengan alamat IP MGS.

  3. Untuk membuat kelas penyimpanan dan klaim volume persisten, jalankan perintah berikut kubectl :

    kubectl create -f storageclass_existing_lustre.yaml
    kubectl create -f pvc_storageclass.yaml
    

Periksa penginstalan

Jika Anda ingin memeriksa penginstalan, Anda dapat secara opsional menggunakan pod echo untuk mengonfirmasi bahwa driver berfungsi.

Untuk melihat stempel waktu di konsol selama penulisan, jalankan perintah berikut:

  1. Tambahkan kode berikut ke pod echo:

    while true; do echo $(date) >> /mnt/lustre/outfile; tail -1 /mnt/lustre/outfile; sleep 1; done
    
  2. Untuk melihat stempel waktu di konsol selama penulisan, jalankan perintah kubectl berikut:

    `kubectl logs -f lustre-echo-date`