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 menjalankanaz 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_Region
penamaan . 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 .
Konfigurasikan
kubectl
untuk menyambungkan ke kluster Anda menggunakanaz aks get-credentials
perintah . Jalankan perintah berikut:- Unduh informasi masuk dan konfigurasikan Kube CLI untuk menggunakannya.
~/.kube/config
Menggunakan , 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>
Verifikasi koneksi ke kluster Anda menggunakan
kubectl get
perintah . Perintah ini menampilkan daftar node kluster.kubectl get nodes
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.
- Masuk ke portal Azure, dan cari dan pilih layanan Kubernetes.
- Temukan dan pilih kluster AKS Anda. Pilih Pengaturan> Properti dari navigasi kiri.
- Di bawah Grup sumber daya infrastruktur, Anda akan melihat tautan ke grup sumber daya yang dibuat AKS saat Anda membuat kluster. Pilih.
- Pilih Kontrol akses (IAM) dari panel kiri.
- Pilih Tambahkan > Tambahkan penetapan peran.
- 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.
- Di bawah Tetapkan akses ke, pilih Identitas terkelola.
- Di bawah Anggota, klik + Pilih anggota. Menu Pilih identitas terkelola akan muncul.
- Di bagian Identitas terkelola, pilih Identitas terkelola yang ditetapkan pengguna.
- Di bawah Pilih, cari dan pilih identitas terkelola dengan nama kluster Anda dan
-agentpool
ditambahkan. - 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.