Praktik terbaik untuk penyimpanan dan pencadangan di Azure Kubernetes Service (AKS)
Saat Anda membuat dan mengelola klaster di Azure Kubernetes Service (AKS), aplikasi Anda sering kali membutuhkan penyimpanan. Pastikan Anda memahami kebutuhan performa Pod dan metode akses agar Anda dapat memilih penyimpanan terbaik untuk aplikasi Anda. Ukuran simpul AKS dapat memengaruhi pilihan penyimpanan Anda. Rencanakan cara untuk mencadangkan dan menguji proses pemulihan untuk penyimpanan terpasang.
Artikel praktik terbaik ini berfokus pada pertimbangan penyimpanan untuk operator klaster. Dalam artikel ini, Anda belajar tentang:
- Jenis penyimpanan yang tersedia.
- Cara membuat simpul AKS dengan benar untuk performa penyimpanan.
- Perbedaan antara penyediaan volume yang dinamis dan statis.
- Cara untuk mencadangkan dan mengamankan volume data Anda.
Panduan praktik terbaik
Pahami kebutuhan aplikasi Anda untuk memilih penyimpanan yang tepat. Gunakan penyimpanan berkinerja tinggi yang didukung SSD untuk beban kerja produksi. Rencanakan untuk penyimpanan berbasis jaringan saat Anda membutuhkan beberapa koneksi bersamaan.
Aplikasi sering membutuhkan berbagai jenis dan kecepatan penyimpanan. Tentukan jenis penyimpanan yang paling tepat dengan mengajukan pertanyaan berikut.
- Apakah aplikasi Anda memerlukan penyimpanan yang terhubung ke masing-masing Pod?
- Apakah aplikasi Anda memerlukan penyimpanan yang dibagikan di beberapa Pod?
- Apakah penyimpanan untuk akses baca-saja ke data?
- Apakah penyimpanan akan digunakan untuk menulis sejumlah besar data terstruktur?
Tabel berikut ini menguraikan tipe penyimpanan yang tersedia dan kapabilitasnya:
Gunakan huruf besar | Plugin volume | Baca/tulis sekali | Baca-saja banyak | Baca/tulis banyak | Dukungan kontainer Windows Server |
---|---|---|---|---|---|
Konfigurasi bersama | Azure Files | Ya | Ya | Ya | Ya |
Data aplikasi terstruktur | Azure Disks | Ya | No | No | Ya |
Data yang tidak terstruktur, operasi sistem berkas | BlobFuse | Ya | Ya | Ya | Tidak |
AKS menyediakan dua jenis penyimpanan aman utama untuk volume yang didukung oleh Azure Disks atau Azure Files. Keduanya menggunakan Enkripsi Layanan Penyimpanan Azure (SSE) default yang mengenkripsi data saat tidak digunakan. Disk saat ini tidak dapat dienkripsi menggunakan Azure Disk Encryption pada tingkat simpul AKS. Dengan berbagi Azure Files, tidak ada batasan berapa banyak yang dapat dipasang pada node.
File Azure dan Disk Azure tersedia dalam tingkat kinerja Standar dan Premium:
- Disk premium
- Didukung oleh solid-state disk (SSD) berkinerja tinggi.
- Direkomendasikan untuk semua beban kerja produksi.
- Disk standar
- Didukung oleh disk pemintalan reguler (HDD).
- Baik untuk arsip atau data yang jarang diakses.
Meskipun tingkat penyimpanan default untuk driver Azure Disk CSI adalah SSD Premium, StorageClass kustom Anda dapat menggunakan SSD Premium, SSD Standar, atau HDD Standar.
Pahami kebutuhan performa aplikasi dan pola akses untuk memilih tingkat penyimpanan yang sesuai. Untuk informasi selengkapnya tentang ukuran dan tingkat performa Disk Terkelola, lihat Gambaran umum Azure Managed Disks.
Tentukan jenis penyimpanan yang diinginkan menggunakan kelas penyimpanan Kubernetes. Kelas penyimpanan kemudian direferensikan dalam spesifikasi Pod atau penyebaran. Definisi kelas penyimpanan bekerja sama untuk membuat penyimpanan yang sesuai dan menghubungkannya ke Pod.
Untuk informasi selengkapnya, lihat Kelas penyimpanan di AKS.
Panduan praktik terbaik
Setiap ukuran simpul mendukung jumlah maksimum disk. Ukuran simpul yang berbeda juga menyediakan jumlah penyimpanan lokal dan bandwidth jaringan yang berbeda. Rencanakan dengan tepat kebutuhan aplikasi Anda untuk menyebarkan ukuran simpul yang tepat.
Simpul AKS berjalan dengan berbagai jenis dan ukuran Azure VM. Setiap ukuran VM menyediakan:
- Sejumlah sumber daya inti yang berbeda seperti CPU dan memori.
- Jumlah maksimum disk yang dapat dipasang.
Performa penyimpanan juga bervariasi antara ukuran VM untuk IOPS disk lokal dan terpasang maksimum (operasi input/output per detik).
Jika aplikasi Anda memerlukan Azure Disk sebagai solusi penyimpanannya, susun ukuran VM simpul yang sesuai. Kemampuan penyimpanan dan jumlah CPU dan memori memegang peran penting saat memutuskan ukuran VM.
Misalnya, meskipun ukuran Standard_B2ms dan Standard_DS2_v2 VM mencakup jumlah sumber daya CPU dan memori yang sama, potensi performa penyimpanan keduanya berbeda:
Tipe dan ukuran simpul | vCPU | Memori (GiB) | Disk data maksimal | IOPS disk maksimal yang tidak di-cache | Throughput maksimal yang tidak di-cache (MBps) |
---|---|---|---|---|---|
Standard_B2ms | 2 | 8 | 4 | 1.920 | 22,5 |
Standard_DS2_v2 | 2 | 7 | 8 | 6.400 | 96 |
Dalam contoh ini, Standard_DS2_v2 menawarkan dua kali lebih banyak disk yang terpasang, dan tiga hingga empat kali jumlah IOPS dan throughput disk. Jika Anda hanya membandingkan sumber daya komputasi inti dan membandingkan biaya, Anda mungkin telah memilih VM Standard_B2ms dengan performa dan batasan penyimpanan yang buruk.
Bekerjalah dengan tim pengembangan aplikasi Anda untuk memahami kapasitas penyimpanan dan kebutuhan performa mereka. Pilih ukuran VM yang sesuai untuk simpul AKS guna memenuhi atau melampaui kebutuhan kinerjanya. Secara teratur mendasarkan aplikasi untuk menyesuaikan ukuran VM berdasarkan kebutuhan.
Catatan
Secara default, ukuran dan performa disk untuk disk terkelola ditetapkan sesuai dengan jumlah SKU Mesin Virtual dan vCPU yang dipilih. Ukuran disk OS default hanya digunakan pada kluster atau kumpulan node baru ketika disk OS Ephemeral tidak didukung dan ukuran disk OS default tidak ditentukan. Untuk mengetahui informasi selengkapnya, lihat Ukuran disk OS default.
Untuk informasi tentang ukuran VM yang tersedia, lihat Ukuran komputer virtual Linux di Azure.
Panduan praktik terbaik
Untuk mengurangi overhead manajemen dan mengaktifkan penskalaan, hindari membuat dan menetapkan volume persisten secara statis. Gunakan penyediaan dinamis. Di kelas penyimpanan, tentukan kebijakan klaim kembali yang sesuai untuk meminimalkan biaya penyimpanan yang tidak diperlukan setelah Pod dihapus.
Untuk memasang penyimpanan pada Pod, gunakan volume persisten. Volume persisten dapat dibuat secara manual atau dinamis. Membuat volume persisten secara manual menambah overhead manajemen dan membatasi kemampuan Anda untuk menskalakan. Sebaliknya, sediakan volume persisten secara dinamis untuk menyederhanakan manajemen penyimpanan dan memungkinkan aplikasi Anda untuk tumbuh dan menskalakan sesuai kebutuhan.
Klaim volume persisten (PVC) memungkinkan Anda membuat penyimpanan secara dinamis sesuai kebutuhan. Disk Azure yang mendasari dibuat saat Pod memintanya. Dalam definisi Pod, mintalah agar sebuah volume dibuat dan dipasang ke jalur pemasangan yang ditentukan.
Untuk konsep tentang cara membuat dan menggunakan volume secara dinamis, lihat Klaim Volume Persisten.
Untuk melihat volume ini dalam tindakan, lihat cara membuat dan menggunakan volume persisten secara dinamis dengan Disk Azure atau Azure Files.
Sebagai bagian dari definisi kelas penyimpanan Anda, tetapkan reclaimPolicy yang sesuai. ReclaimPolicy ini mengontrol perilaku sumber daya penyimpanan Azure yang mendasarinya saat Pod dihapus. Sumber daya penyimpanan yang mendasarinya dapat dihapus atau dipertahankan untuk penggunaan Pod di masa mendatang. Atur reclaimPolicy untuk mempertahankan atau menghapus.
Pahami kebutuhan aplikasi Anda, dan lakukan pemeriksaan rutin untuk penyimpanan yang dipertahankan guna meminimalkan jumlah penyimpanan yang tidak digunakan dan ditagih.
Untuk informasi selengkapnya tentang opsi kelas penyimpanan, lihat kebijakan reklamasi penyimpanan.
Panduan praktik terbaik
Cadangkan data Anda menggunakan alat yang sesuai untuk jenis penyimpanan Anda, seperti Velero atau Azure Backup. Verifikasi integritas dan keamanan dari cadangan tersebut.
Ketika aplikasi Anda menyimpan dan mengkonsumsi data yang disimpan di disk atau dalam file, Anda perlu mengambil cadangan atau snapshot data tersebut secara berkala. Azure Disks dapat menggunakan teknologi snapshot bawaan. Aplikasi Anda mungkin perlu menyiram tulis-ke-disk sebelum Anda melakukan operasi snapshot. Velero dapat mencadangkan volume persisten bersama dengan sumber daya dan konfigurasi klaster tambahan. Jika Anda tidak dapat menghapus status dari aplikasi Anda,cadangkan data dari volume persisten dan uji operasi pemulihan secara teratur untuk memverifikasi integritas data dan proses yang diperlukan.
Pahami keterbatasan pendekatan yang berbeda untuk pencadangan data dan jika Anda perlu mendiamkan data Anda sebelum snapshot. Pencadangan data tidak selalu memungkinkan Anda memulihkan lingkungan aplikasi penerapan klaster. Untuk informasi selengkapnya tentang skenario tersebut, lihat Praktik terbaik untuk kelangsungan bisnis dan pemulihan bencana di AKS.
Artikel ini berfokus pada praktik terbaik penyimpanan di AKS. Untuk informasi lebih lanjut tentang dasar-dasar penyimpanan di Kubernetes, lihat Konsep penyimpanan untuk aplikasi di AKS.
Umpan balik Azure Kubernetes Service
Azure Kubernetes Service adalah proyek sumber terbuka. Pilih tautan untuk memberikan umpan balik: