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.

Memilih tipe penyimpanan yang sesuai

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.

Membuat dan menggunakan kelas penyimpanan untuk menentukan kebutuhan aplikasi

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.

Mengukur simpul untuk kebutuhan penyimpanan

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.

Menyediakan volume secara dinamis

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.

Diagram klaim volume persisten dalam kluster Azure Kubernetes Services (AKS).

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.

Mengamankan dan mencadangkan data Anda

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.

Langkah berikutnya

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.