Opsi penyimpanan untuk kluster Kubernetes
Artikel ini membandingkan kemampuan penyimpanan Amazon Elastic Kubernetes Service (Amazon EKS) dan Azure Kubernetes Service (AKS) dan menjelaskan opsi untuk menyimpan data beban kerja di AKS.
Catatan
Artikel ini adalah bagian dari serangkaian artikel yang membantu para profesional yang terbiasa dengan Amazon EKS untuk memahami AKS.
Opsi penyimpanan Amazon EKS
Di Amazon EKS, setelah Kubernetes versi 1.11, kluster memiliki StorageClass default yang disebut gp2
untuk klaim volume persisten. Administrator dapat menambahkan driver untuk menentukan lebih banyak kelas penyimpanan, seperti:
- Driver Amazon EBS CSI sebagai add-on Amazon EKS
- Add-on yang dikelola sendiri Amazon EBS CSI
- Driver Amazon EFS CSI
- Driver Amazon FSx for Lustre CSI
- Driver Amazon FSx for NetApp ONTAP CSI
Dengan menambahkan driver dan kelas penyimpanan, Anda dapat menggunakan layanan penyimpanan seperti:
Amazon Elastic Block Store (Amazon EBS), solusi penyimpanan tingkat blok yang digunakan dengan instans Amazon Elastic Compute Cloud (EC2) untuk menyimpan data persisten. Layanan ini mirip dengan Azure Disk Storage, yang memiliki beberapa SKU seperti SSD Standar, SSD Premium, atau Ultra Disk, tergantung pada performa yang diperlukan.
Amazon Elastic File System (Amazon EFS) , yang menyediakan akses sistem file jaringan ke sistem file eksternal yang dapat dibagikan di seluruh instans. Solusi Azure yang setara adalah Azure Files dan Azure Files Premium dengan akses Server Message Block (SMB) 3.0 dan NFS.
Lustre, sistem file sumber terbuka yang umumnya digunakan dalam komputasi performa tinggi (HPC). Di Azure, Anda dapat menggunakan Ultra Disk atau Azure HPC Cache untuk beban kerja di mana kecepatan penting, seperti pembelajaran mesin dan HPC.
NetApp ONTAP, penyimpanan bersama ONTAP yang dikelola sepenuhnya di Amazon Web Services (AWS). Azure NetApp Files adalah layanan penyimpanan file Azure serupa yang dibangun di atas teknologi NetApp.
Opsi penyimpanan AKS
Setiap kluster AKS mencakup kelas penyimpanan yang telah dibuat sebelumnya berikut secara default:
- Kelas penyimpanan default,
managed-csi
, menggunakan SSD Standar Penyimpanan Disk. SSD standar adalah opsi penyimpanan hemat biaya yang dioptimalkan untuk beban kerja yang membutuhkan performa konsisten pada operasi output input yang lebih rendah per detik (IOPS). - Kelas ini
managed-csi-premium
menggunakan disk terkelola Disk Storage Premium SSD. - Kelas ini
azurefile-csi
menggunakan Azure Files untuk menyediakan akses bersama bersama ke volume penyimpanan yang sama, menggunakan SMB atau NFS. - Kelas ini
azurefile-csi-premium
menggunakan Azure Files Premium untuk berbagi file dengan beban kerja intensif IOPS. Azure Files Premium menyediakan latensi rendah dan throughput tinggi yang didukung oleh penyimpanan SSD.
Anda dapat memperluas opsi ini dengan menambahkan kelas penyimpanan lain dan mengintegrasikan dengan solusi penyimpanan lain yang tersedia, seperti:
- Penyimpanan Disk Ultra
- Azure NetApp Files
- HPC Cache
- Server NFS
- Solusi penyimpanan pihak ketiga
Azure Disk Storage
Secara default, kluster AKS dilengkapi dengan kelas yang telah dibuat managed-csi
sebelumnya dan managed-csi-premium
penyimpanan yang menggunakan Penyimpanan Disk. Mirip dengan Amazon EBS, kelas-kelas ini membuat disk terkelola atau memblokir perangkat yang terpasang pada simpul untuk akses pod.
Kelas penyimpanan Penyimpanan Disk memungkinkan provisi volume statis dan dinamis . Kebijakan klaim ulang memastikan bahwa disk dihapus dengan volume persisten. Anda dapat memperluas disk dengan mengedit klaim volume persisten.
Kelas penyimpanan ini menggunakan disk terkelola Azure dengan penyimpanan redundan lokal (LRS). LRS berarti bahwa data memiliki tiga salinan sinkron dalam satu lokasi fisik di wilayah utama Azure. LRS adalah opsi replikasi paling murah, tetapi tidak menawarkan perlindungan terhadap kegagalan pusat data. Untuk mengurangi risiko ini, ambil cadangan reguler atau rekam jepret data Penyimpanan Disk dengan menggunakan solusi seperti Velero atau Azure Backup yang dapat menggunakan teknologi rekam jepret bawaan.
Kedua kelas penyimpanan didukung oleh disk terkelola, dan keduanya menggunakan drive solid-state disk (SSD). Penting untuk memahami perbedaan antara disk Standar dan Premium:
- Disk standar dihargai berdasarkan ukuran dan transaksi penyimpanan.
- Disk premium hanya dikenakan biaya berdasarkan ukuran, yang dapat membuatnya lebih murah untuk beban kerja yang membutuhkan jumlah transaksi yang tinggi.
- SSD premium menyediakan throughput maks dan IOPS yang lebih tinggi, seperti yang ditunjukkan dalam perbandingan ini.
- Penyimpanan premium direkomendasikan untuk sebagian besar beban kerja produksi dan pengembangan.
Jika Anda menggunakan disk terkelola Azure sebagai kelas penyimpanan utama, pertimbangkan SKU komputer virtual (VM) yang Anda pilih untuk kluster Kubernetes. Azure VM membatasi jumlah disk yang dapat Anda lampirkan padanya, dan batasnya bervariasi menurut ukuran VM. Selain itu, karena disk Azure dipasang sebagai ReadWriteOnce
, disk hanya tersedia untuk satu pod.
Penyimpanan Disk Ultra
Ultra Disk Storage adalah tingkat disk terkelola Azure yang menawarkan throughput tinggi, IOPS tinggi, dan penyimpanan disk latensi rendah yang konsisten untuk Azure VM. Penyimpanan Disk Ultra ditujukan untuk beban kerja yang data dan transaksinya berat. Seperti SKU Penyimpanan Disk lainnya, dan Amazon EBS, Ultra Disk Storage memasang satu pod sekaligus dan tidak menyediakan akses bersamaan.
Gunakan bendera --enable-ultra-ssd
untuk mengaktifkan Penyimpanan Disk Ultra pada kluster AKS Anda.
Jika Anda memilih Ultra Disk Storage, ketahui batasannya, dan pastikan untuk memilih ukuran VM yang kompatibel. Penyimpanan Disk Ultra tersedia dengan replikasi penyimpanan redundan lokal (LRS).
Azure Files
Penyimpanan Disk tidak dapat menyediakan akses bersamaan ke volume, tetapi Anda dapat menggunakan Azure Files untuk menyambungkan dengan menggunakan protokol SMB, lalu memasang volume bersama yang didukung oleh Azure Storage. Proses ini menyediakan penyimpanan terpasang jaringan yang mirip dengan Amazon EFS. Seperti halnya Penyimpanan Disk, ada dua opsi:
- Penyimpanan Azure Files Standard didukung oleh hard disk drive reguler (HDD).
- Penyimpanan Azure Files Premium mendukung berbagi file dengan drive SSD berkinerja tinggi. Ukuran berbagi file minimum untuk Premium adalah 100 GB.
Azure Files memiliki opsi replikasi akun penyimpanan berikut untuk melindungi data Anda jika terjadi kegagalan:
- Standard_LRS dengan LRS
- Standard_GRS dengan penyimpanan geo-redundan (GRS)
- Standard_ZRS dengan penyimpanan zona redundan (ZRS)
- Standard_RAGRS dengan penyimpanan geo-redundan akses baca (RA-GRS)
- Premium_LRS premium LRS
- Premium_ZRS premium ZRS
Untuk mengoptimalkan biaya untuk Azure Files, beli reservasi kapasitas Azure Files.
Azure NetApp Files
Seperti AWS NetApp ONTAP, Azure NetApp Files adalah layanan penyimpanan file terukur kelas perusahaan, berkinerja tinggi. Azure NetApp Files dikelola sepenuhnya di Azure menggunakan solusi NetApp. Seperti Azure Files, Azure NetApp Files memungkinkan beberapa pod memasang volume. Anda dapat menggunakan Astra Trident, orkestrator penyimpanan dinamis sumber terbuka untuk Kubernetes, untuk mengonfigurasi kluster AKS Anda untuk menggunakan Azure NetApp Files.
Ketahui batas Sumber Daya untuk Azure NetApp Files. Ukuran minimum kumpulan kapasitas untuk Azure NetApp Files adalah 4 TiB. Biaya Azure NetApp Files berdasarkan ukuran yang disediakan daripada kapasitas yang digunakan.
Azure HPC Cache
Azure HPC Cache mempercepat akses ke data Anda untuk tugas HPC, dengan semua skalabilitas solusi cloud. Jika Anda memilih solusi penyimpanan ini, pastikan untuk menyebarkan kluster AKS Anda di wilayah yang mendukung cache Azure HPC.
Server NFS
Opsi terbaik untuk akses NFS bersama adalah menggunakan Azure Files atau Azure NetApp Files. Anda juga dapat membuat Server NFS pada Azure VM yang mengekspor volume.
Ketahuilah bahwa opsi ini hanya mendukung provisi statis. Anda harus menyediakan berbagi NFS secara manual di server, dan tidak dapat melakukannya dari AKS secara otomatis.
Solusi ini didasarkan pada infrastruktur sebagai layanan (IaaS) daripada platform as a service (PaaS). Anda bertanggung jawab untuk mengelola server NFS, termasuk pembaruan OS, ketersediaan tinggi, cadangan, pemulihan bencana, dan skalabilitas.
Gunakan solusi pihak ketiga
Seperti Amazon EKS, AKS adalah implementasi Kubernetes, dan Anda dapat mengintegrasikan solusi penyimpanan Kubernetes pihak ketiga. Berikut adalah beberapa contoh solusi penyimpanan pihak ketiga untuk Kubernetes:
- Rook mengubah sistem penyimpanan terdistribusi menjadi layanan penyimpanan yang mengelola sendiri dengan mengotomatiskan tugas administrator penyimpanan. Rook memberikan layanannya melalui operator Kubernetes untuk setiap penyedia penyimpanan.
- GlusterFS adalah sistem file jaringan bebas dan sumber terbuka yang dapat diskalakan yang menggunakan perangkat keras off-the-shelf umum untuk membuat solusi penyimpanan besar dan terdistribusi untuk tugas data-berat dan intensif bandwidth.
- Ceph menyediakan layanan penyimpanan terpadu yang andal dan dapat diskalakan dengan antarmuka objek, blok, dan file dari satu kluster yang dibangun dari komponen perangkat keras komoditas.
- Penyimpanan objek multicloud MinIO memungkinkan perusahaan membangun infrastruktur data yang kompatibel dengan AWS S3 di cloud apa pun, menyediakan antarmuka portabel yang konsisten untuk data dan aplikasi Anda.
- Portworx adalah solusi penyimpanan dan manajemen data end-to-end untuk proyek Kubernetes dan inisiatif berbasis kontainer. Portworx menawarkan penyimpanan terperinci kontainer, pemulihan bencana, keamanan data, dan migrasi multicloud.
- Quobyte menyediakan penyimpanan file dan objek berkinerja tinggi yang dapat Anda sebarkan di server atau cloud apa pun untuk menskalakan performa, mengelola data dalam jumlah besar, dan menyederhanakan administrasi.
- Ondat memberikan lapisan penyimpanan yang konsisten di seluruh platform apa pun. Anda dapat menjalankan database atau beban kerja persisten apa pun di lingkungan Kubernetes tanpa harus mengelola lapisan penyimpanan.
Pertimbangan penyimpanan Kubernetes
Pertimbangkan faktor-faktor berikut saat Anda memilih solusi penyimpanan untuk Amazon EKS atau AKS.
Mode akses kelas penyimpanan
Di Kubernetes versi 1.21 dan yang lebih baru, kelas penyimpanan AKS dan Amazon EKS hanya menggunakan driver Container Storage Interface (CSI) dan secara default.
Layanan yang berbeda mendukung kelas penyimpanan yang memiliki mode akses yang berbeda.
Layanan | ReadWriteOnce | ReadOnlyMany | ReadWriteMany |
---|---|---|---|
Azure Disks | X | ||
Azure Files | X | X | X |
Azure NetApp Files | X | X | X |
Server NFS | X | X | X |
Azure HPC Cache | X | X | X |
Provisi dinamis vs statis
Memprovisikan volume secara dinamis untuk mengurangi overhead manajemen pembuatan volume persisten secara statis. Atur kebijakan klaim ulang yang benar untuk menghindari disk yang tidak digunakan saat Anda menghapus pod.
Cadangan
Pilih alat untuk mencadangkan data persisten. Alat ini harus cocok dengan jenis penyimpanan Anda, seperti rekam jepret, Azure Backup, Velero , atau Kasten.
Pengoptimalan biaya
Untuk mengoptimalkan biaya Azure Storage, gunakan Reservasi Azure. Pastikan untuk memeriksa layanan mana yang mendukung Reservasi Azure. Lihat juga Cost management untuk kluster Kubernetes.
Kontributor
Artikel ini dikelola oleh Microsoft. Ini awalnya ditulis oleh kontributor berikut.
Penulis utama:
- Laura Nicolas | Insinyur Perangkat Lunak Senior
- Paolo Salvatori | Insinyur Sistem Utama
Kontributor lain:
- Chad Kittel | Insinyur Perangkat Lunak Utama
- Harga Ed | Manajer Program Konten Senior
- Theano Petersen | Penulis Teknis
Untuk melihat profil LinkedIn non-publik, masuk ke LinkedIn.
Langkah berikutnya
- AKS untuk profesional Amazon EKS
- Manajemen identitas dan akses Kubernetes
- Pemantauan dan pengelogan Kubernetes
- Mengamankan akses jaringan ke Kubernetes
- Manajemen biaya untuk Kubernetes
- Node Kubernetes dan manajemen kumpulan simpul
- Tata kelola kluster
Sumber daya terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk