Bagikan melalui


Tutorial: Menginstal Pratinjau Azure Container Storage untuk digunakan dengan Azure Kubernetes Service

Azure Container Storage adalah layanan manajemen volume, penyebaran, dan orkestrasi berbasis cloud yang dibangun secara asli untuk kontainer. Dalam tutorial ini, Anda akan membuat kluster Azure Kubernetes Service (AKS) dan menginstal Azure Container Storage pada kluster. Jika Anda sudah memiliki kluster AKS yang disebarkan, sebaiknya instal Azure Container Storage menggunakan Mulai Cepat ini alih-alih mengikuti langkah manual dalam tutorial ini.

  • Buat grup sumber daya
  • Pilih opsi penyimpanan data dan jenis VM
  • Membuat kluster AKS
  • Menyambungkan ke kluster
  • Memberi label kumpulan simpul
  • Menetapkan peran Operator Azure Container Storage ke identitas terkelola AKS
  • Menginstal Azure Container Storage

Prasyarat

  • Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.

  • Artikel ini memerlukan versi terbaru (2.35.0 atau yang lebih baru) dari Azure CLI. Lihat Cara menginstal Azure CLI. Jika Anda menggunakan lingkungan Bash di Azure Cloud Shell, versi terbaru sudah diinstal. Jika Anda berencana untuk menjalankan perintah secara lokal alih-alih di Azure Cloud Shell, pastikan untuk menjalankannya dengan hak istimewa administratif. Untuk informasi selengkapnya, lihat Mulai menggunakan Azure Cloud Shell.

  • Anda akan memerlukan klien baris perintah Kubernetes, kubectl. Ini sudah diinstal jika Anda menggunakan Azure Cloud Shell, atau Anda dapat menginstalnya secara lokal dengan menjalankan az aks install-cli perintah .

  • Periksa apakah wilayah target Anda didukung di wilayah Azure Container Storage.

Memulai

  • Catat ID langganan Azure Anda. Jika Anda ingin menggunakan Azure Elastic SAN sebagai penyimpanan data, Anda memerlukan peran Pemilik Azure Container Storage atau peran Kontributor Azure Container Storage yang ditetapkan ke langganan Azure. Akses tingkat pemilik memungkinkan Anda menginstal ekstensi Azure Container Storage, memberikan akses ke sumber daya penyimpanannya, dan memberi Anda izin untuk mengonfigurasi sumber daya Azure Elastic SAN Anda. Akses tingkat kontributor memungkinkan Anda menginstal ekstensi dan memberikan akses ke sumber daya penyimpanannya. Jika Anda berencana menggunakan Azure Disks atau Ephemeral Disk sebagai penyimpanan data, Anda tidak memerlukan izin khusus pada langganan Anda.

  • Luncurkan Azure Cloud Shell, atau jika Anda menggunakan penginstalan lokal, masuk ke Azure CLI dengan menggunakan perintah az login .

  • Jika Anda menggunakan Azure Cloud Shell, Anda mungkin diminta untuk memasang penyimpanan. Pilih langganan Azure tempat Anda ingin membuat akun penyimpanan dan pilih Buat.

Mengatur konteks langganan

Atur az account set konteks langganan Azure Anda menggunakan perintah . Anda dapat melihat ID langganan untuk semua langganan yang dapat Anda akses dengan menjalankan az account list --output table perintah . Ingatlah untuk mengganti <subscription-id> dengan ID langganan Anda.

az account set --subscription <subscription-id>

Mendaftarkan penyedia sumber daya

Penyedia Microsoft.ContainerService sumber daya dan Microsoft.KubernetesConfiguration harus terdaftar di langganan Azure Anda. Untuk mendaftarkan penyedia ini, jalankan perintah berikut:

az provider register --namespace Microsoft.ContainerService --wait 
az provider register --namespace Microsoft.KubernetesConfiguration --wait 

Untuk memeriksa apakah penyedia ini berhasil didaftarkan, jalankan perintah berikut:

az provider list --query "[?namespace=='Microsoft.ContainerService'].registrationState"
az provider list --query "[?namespace=='Microsoft.KubernetesConfiguration'].registrationState"

Buat grup sumber daya

Grup sumber daya Azure adalah grup logis yang menyimpan sumber daya Azure yang ingin Anda kelola sebagai grup. Saat membuat grup sumber daya, Anda diminta untuk menentukan lokasi. Lokasi ini adalah:

  • Lokasi penyimpanan metadata grup sumber daya Anda.
  • Di mana sumber daya Anda akan berjalan di Azure jika Anda tidak menentukan wilayah lain selama pembuatan sumber daya.

Buat grup sumber daya menggunakan az group create perintah . Ganti <resource-group-name> dengan nama grup sumber daya yang ingin Anda buat, dan ganti <location> dengan wilayah Azure seperti eastus, westus2, westus3, atau westeurope.

az group create --name <resource-group-name> --location <location>

Jika grup sumber daya berhasil dibuat, Anda akan melihat output yang mirip dengan ini:

{
  "id": "/subscriptions/<guid>/resourceGroups/myContainerStorageRG",
  "location": "eastus",
  "managedBy": null,
  "name": "myContainerStorageRG",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null
}

Pilih opsi penyimpanan data dan jenis komputer virtual

Sebelum membuat kluster, Anda harus memahami opsi penyimpanan back-end mana yang pada akhirnya akan Anda pilih untuk membuat kumpulan penyimpanan Anda. Ini karena layanan penyimpanan yang berbeda berfungsi paling baik dengan jenis komputer virtual (VM) yang berbeda sebagai node kluster, dan Anda akan menyebarkan kluster anda sebelum membuat kumpulan penyimpanan.

Opsi penyimpanan data

  • Azure Elastic SAN: Azure Elastic SAN cocok untuk database tujuan umum, layanan streaming dan olahpesan, lingkungan CD/CI, dan beban kerja tingkat 1/tingkat 2 lainnya. Penyimpanan disediakan sesuai permintaan per volume yang dibuat dan rekam jepret volume. Beberapa kluster dapat mengakses satu SAN secara bersamaan, namun volume persisten hanya dapat dilampirkan oleh satu konsumen pada satu waktu.

  • Azure Disks: Azure Disks cocok untuk database seperti MySQL, MongoDB, dan PostgreSQL. Penyimpanan disediakan per ukuran kumpulan penyimpanan kontainer target dan ukuran volume maksimum.

  • Disk Sementara: Opsi ini menggunakan drive NVMe lokal atau SSD sementara pada simpul AKS dan sangat sensitif latensi (latensi sub-ms rendah), jadi yang terbaik untuk aplikasi tanpa persyaratan durabilitas data atau dengan dukungan replikasi data bawaan seperti Cassandra. AKS menemukan penyimpanan ephemeral yang tersedia pada simpul AKS dan memperoleh drive untuk penyebaran volume.

Jenis VM

Untuk menggunakan Azure Container Storage, Anda memerlukan kumpulan simpul setidaknya tiga VM Linux. Setiap VM harus memiliki minimal empat CPU virtual (vCPU). Azure Container Storage akan menggunakan satu inti untuk pemrosesan I/O pada setiap VM tempat ekstensi disebarkan.

Jika Anda berniat menggunakan Azure Elastic SAN atau Azure Disks dengan Azure Container Storage, maka Anda harus memilih jenis VM tujuan umum seperti standard_d4s_v5 untuk node kluster.

Jika Anda ingin menggunakan Disk Sementara, pilih jenis VM yang dioptimalkan penyimpanan seperti standard_l8s_v3.

Penting

Anda harus memilih jenis VM yang mendukung penyimpanan premium Azure.

Membuat kluster AKS

Jalankan perintah berikut untuk membuat kluster AKS berbasis Linux dan aktifkan identitas terkelola yang ditetapkan sistem. Jika Anda sudah memiliki kluster AKS yang ingin Anda gunakan, Anda dapat melewati langkah ini.

Ganti <resource-group> dengan nama grup sumber daya yang Anda buat, <cluster-name> dengan nama kluster yang ingin Anda buat, dan <vm-type> dengan jenis VM yang Anda pilih di langkah sebelumnya. Dalam contoh ini, kita akan membuat kluster dengan tiga simpul. Tingkatkan --node-count jika Anda menginginkan kluster yang lebih besar.

az aks create -g <resource-group> -n <cluster-name> --node-count 3 -s <vm-type> --generate-ssh-keys

Penyebaran akan memakan waktu beberapa menit untuk diselesaikan.

Catatan

Saat Anda membuat kluster AKS, AKS secara otomatis membuat grup sumber daya kedua untuk menyimpan sumber daya AKS. Grup sumber daya kedua ini mengikuti konvensi MC_YourResourceGroup_YourAKSClusterName_Regionpenamaan . Untuk informasi selengkapnya, lihat Mengapa dua grup sumber daya dibuat dengan AKS?.

Menyambungkan ke kluster

Untuk terhubung ke kluster, gunakan klien baris perintah Kubernetes, kubectl. Ini sudah diinstal jika Anda menggunakan Azure Cloud Shell, atau Anda dapat menginstalnya secara lokal dengan menjalankan az aks install-cli perintah .

  1. Konfigurasikan kubectl untuk menyambungkan ke kluster Anda menggunakan az aks get-credentials perintah . Jalankan perintah berikut:

    • Unduh informasi masuk dan konfigurasikan Kube CLI untuk menggunakannya.
    • ~/.kube/configMenggunakan , lokasi default untuk file konfigurasi Kubernetes. Anda dapat menentukan lokasi yang berbeda untuk file konfigurasi Kubernetes menggunakan argumen --file .
    az aks get-credentials --resource-group <resource-group> --name <cluster-name>
    
  2. Verifikasi koneksi ke kluster Anda menggunakan kubectl get perintah . Perintah ini menampilkan daftar node kluster.

    kubectl get nodes
    
  3. Contoh output berikut menunjukkan simpul di kluster Anda. Pastikan status untuk semua simpul menunjukkan Siap:

    NAME                                STATUS   ROLES   AGE   VERSION
    aks-nodepool1-34832848-vmss000000   Ready    agent   80m   v1.25.6
    aks-nodepool1-34832848-vmss000001   Ready    agent   80m   v1.25.6
    aks-nodepool1-34832848-vmss000002   Ready    agent   80m   v1.25.6
    

    Catat nama kumpulan simpul Anda. Dalam contoh ini, itu akan menjadi nodepool1.

Memberi label kumpulan simpul

Selanjutnya, Anda harus memperbarui label kumpulan simpul untuk mengaitkan kumpulan simpul dengan mesin IO yang benar untuk Azure Container Storage.

Penting

Jika Anda membuat kluster AKS menggunakan portal Azure: Kluster kemungkinan akan memiliki kumpulan simpul pengguna dan kumpulan simpul sistem/agen. Sebelum dapat menginstal Azure Container Storage, Anda harus memperbarui label kumpulan simpul pengguna seperti yang dijelaskan di bagian ini. Namun, jika kluster Anda hanya terdiri dari kumpulan simpul sistem, yang merupakan kasus dengan kluster pengujian/pengembangan yang dibuat dengan portal Azure, Anda harus terlebih dahulu menambahkan kumpulan simpul pengguna baru lalu memberi labelnya. Ini karena ketika Anda membuat kluster AKS menggunakan portal Azure, taint CriticalAddOnsOnly ditambahkan ke nodepool agen/sistem, yang memblokir penginstalan Azure Container Storage pada kumpulan simpul sistem. Taint ini tidak ditambahkan saat kluster AKS dibuat menggunakan Azure CLI.

Jalankan perintah berikut untuk memperbarui label kumpulan simpul. Ingatlah untuk mengganti <resource-group> dan <cluster-name> dengan nilai Anda sendiri, dan ganti <nodepool-name> dengan nama kumpulan simpul Anda.

az aks nodepool update --resource-group <resource-group> --cluster-name <cluster-name> --name <nodepool-name> --labels acstor.azure.com/io-engine=acstor

Anda dapat memverifikasi bahwa kumpulan simpul diberi label dengan benar dengan masuk ke portal Azure dan menavigasi ke kluster AKS Anda. Buka kumpulan simpul Pengaturan>, pilih kumpulan simpul Anda, dan di bawah Taint dan label Anda akan melihat Labels: acstor.azure.com/io-engine:acstor.

Menetapkan peran Operator Azure Container Storage ke identitas terkelola AKS

Anda hanya perlu melakukan langkah ini jika Anda berencana menggunakan Azure Elastic SAN sebagai penyimpanan cadangan. Untuk menggunakan Elastic SAN, Anda harus memberikan izin untuk mengizinkan Azure Container Storage menyediakan penyimpanan untuk kluster Anda. Secara khusus, Anda harus menetapkan peran Operator Azure Container Storage ke identitas terkelola AKS. Anda dapat melakukan ini menggunakan portal Azure atau Azure CLI. Anda memerlukan peran Pemilik Azure Container Storage atau peran Kontributor Azure Container Storage untuk langganan Azure Anda untuk melakukan ini. Jika Anda tidak memiliki izin yang memadai, minta admin Anda untuk melakukan langkah-langkah ini.

  1. Masuk ke portal Azure, dan cari dan pilih layanan Kubernetes.
  2. Temukan dan pilih kluster AKS Anda. Pilih Pengaturan> Properti dari navigasi kiri.
  3. Di bawah Grup sumber daya infrastruktur, Anda akan melihat tautan ke grup sumber daya yang dibuat AKS saat Anda membuat kluster. Pilih.
  4. Pilih Kontrol akses (IAM) dari panel kiri.
  5. Pilih Tambahkan > Tambahkan penetapan peran.
  6. Di bawah tab Peran fungsi pekerjaan, pilih atau cari Operator Azure Container Storage, lalu pilih Berikutnya. Jika Anda tidak memiliki peran Pemilik Azure Container Storage atau Kontributor Azure Container Storage pada langganan, Anda tidak akan dapat menambahkan peran Operator Azure Container Storage.
  7. Di bawah Tetapkan akses ke, pilih Identitas terkelola.
  8. Di bawah Anggota, klik + Pilih anggota. Menu Pilih identitas terkelola akan muncul.
  9. Di bagian Identitas terkelola, pilih Identitas terkelola yang ditetapkan pengguna.
  10. Di bawah Pilih, cari dan pilih identitas terkelola dengan nama kluster Anda dan -agentpool ditambahkan.
  11. Klik Pilih, lalu Tinjau + tetapkan.

Menginstal Azure Container Storage

Penginstalan awal menggunakan perintah Azure Arc CLI untuk mengunduh ekstensi baru. Ganti <cluster-name> dan <resource-group> dengan nilai Anda sendiri. Nilainya <extension-name> bisa apa pun yang Anda inginkan; ini hanya label untuk ekstensi yang Anda instal.

Selama penginstalan, Anda mungkin diminta untuk menginstal k8s-extension. Pilih Y.

az k8s-extension create --cluster-type managedClusters --cluster-name <cluster-name> --resource-group <resource-group> --name <extension-name> --extension-type microsoft.azurecontainerstorage --scope cluster --release-train stable --release-namespace acstor

Penginstalan membutuhkan waktu 10-15 menit untuk diselesaikan. Anda dapat memeriksa apakah penginstalan selesai dengan benar dengan menjalankan perintah berikut dan memastikan bahwa provisioningState bertuliskan Berhasil:

az k8s-extension list --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type managedClusters

Selamat, Anda telah berhasil menginstal Azure Container Storage. Kini Anda memiliki kelas penyimpanan baru yang dapat digunakan untuk beban kerja Kubernetes.

Langkah selanjutnya

Sekarang Anda dapat membuat kumpulan penyimpanan dan klaim volume persisten, lalu menyebarkan pod dan melampirkan volume persisten. Ikuti langkah-langkah dalam artikel cara yang sesuai.