Ketahanan berlapis untuk Storage Spaces Direct

Berlaku untuk: Azure Stack HCI, versi 22H2 dan 21H2; Windows Server 2022 dan Windows Server 2019

Peringatan sinkronisasi ulang penyimpanan merupakan kemampuan Storage Spaces Direct pada Azure Stack HCI dan Windows Server. Ketahanan berlapis memungkinkan kluster dua server untuk menahan beberapa kegagalan perangkat keras pada saat yang sama tanpa kehilangan ketersediaan penyimpanan, memungkinkan pengguna, aplikasi, serta mesin virtual untuk terus berjalan tanpa gangguan. Artikel ini menjelaskan cara kerja ketahanan berlapis, menyediakan instruksi lengkap untuk memulai, dan menjawab pertanyaan yang paling sering diajukan.

Sebelum Anda mulai

Pertimbangkan ketahanan berlapis apabila:

  • Kluster Anda menjalankan salah satu sistem operasi ini: Azure Stack HCI, versi 21H2, Azure Stack HCI, versi 20H2, Windows Server 2022, atau Windows Server 2019; dan
  • Kluster Anda memiliki persis dua simpul server.

Anda tidak bisa menggunakan ketahanan berlapis jika:

  • Kluster Anda menjalankan Windows Server 2016; atau
  • Kluster Anda hanya memiliki satu simpul server atau memiliki tiga simpul server atau lebih.

Mengapa ketahanan berlapis

Volume yang menggunakan ketahanan berlapis dapat tetap online serta dapat diakses bahkan jika beberapa kegagalan perangkat keras terjadi pada saat yang sama, tidak seperti ketahanan pencerminan dua arah klasik. Misalnya, jika dua drive gagal pada saat yang sama, atau jika server tidak berfungsi dan drive gagal, volume yang menggunakan ketahanan berlapis tetap online serta dapat diakses. Untuk infrastruktur hyper-converged, hal ini meningkatkan waktu aktif untuk aplikasi dan mesin virtual; untuk beban kerja server file, ini berarti pengguna memiliki akses tanpa gangguan ke file mereka.

Diagram yang menampilkan ketersediaan penyimpanan.

Sebagai gantinya, ketahanan berlapis memiliki efisiensi kapasitas yang lebih rendah dibandingkan pencerminan dua arah klasik, yang berarti Anda mendapatkan sedikit ruang yang dapat digunakan. Untuk memperoleh detailnya, lihat bagian Efisiensi kapasitas berikut ini.

Cara kerjanya

Bagian ini menyediakan latar belakang mengenai ketahanan berlapis untuk Storage Spaces Direct dan menjelaskan dua opsi ketahanan baru serta efisiensi kapasitasnya.

Inspirasi: RAID 5+1

RAID 5+1 merupakan bentuk ketahanan penyimpanan terdistribusi mapan, yang memberikan latar belakang yang bermanfaat untuk memahami ketahanan berlapis. Di RAID 5+1, dalam setiap server, ketahanan lokal disediakan oleh RAID-5 atau paritas tunggal, untuk melindungi hilangnya satu drive. Kemudian, ketahanan lebih lanjut disediakan oleh RAID-1, atau pencerminan dua arah antara kedua server untuk melindungi dari hilangnya satu server.

Diagram yang menampilkan RAID 5+1.

Opsi ketahanan

Storage Spaces Direct pada Azure Stack HCI dan Windows Server menawarkan dua opsi ketahanan yang diterapkan dalam perangkat lunak tanpa membutuhkan perangkat keras RAID khusus:

  • Cermin berlapis dua arah. Dalam setiap server, ketahanan lokal disediakan oleh pencerminan dua arah, kemudian ketahanan lebih lanjut disediakan oleh pencerminan dua arah antara kedua server. Hal ini pada dasarnya adalah cermin empat arah, dengan dua salinan di setiap server yang terletak di disk fisik yang berbeda. Pencerminan dua arah berlapis memberikan performa tanpa kompromi: tulisan dan pembacaan akan masuk ke semua salinan apa pun.

    Diagram yang menampilkan cermin dua arah.

  • Paritas berbasis cermin berlapis. Gabungkan pencerminan dua arah berlapis dari gambar sebelumnya dengan paritas berlapis. Di dalam setiap server, ketahanan lokal untuk sebagian besar data disediakan oleh aritmetika paritas bitwise tunggal, kecuali tulisan baru terbaru yang menggunakan pencerminan dua arah. Kemudian, ketahanan lebih lanjut untuk semua data akan disediakan oleh pencerminan dua arah antara server. Penulisan baru pada volume masuk ke bagian cermin dengan dua salinan pada disk fisik terpisah di setiap server. Saat bagian cermin volume terisi di setiap server, data terlama akan dikonversi dan disimpan ke bagian paritas di latar belakang. Akibatnya, setiap server memiliki data untuk volume baik dalam cermin dua arah ataupun dalam struktur paritas tunggal. Hal ini mirip dengan cara kerja paritas berbasis cermin —dengan perbedaan paritas yang dipercepat cermin memerlukan empat server di kluster dan kumpulan penyimpanan, serta menggunakan algoritma paritas yang berbeda.

    Diagram yang menampilkan paritas berlapis dan berbasis cermin.

Efisiensi kapasitas

Efisiensi kapasitas merupakan rasio ruang yang dapat digunakan terhadap jejak volume. Hal ini menjelaskan overhead kapasitas yang dapat didistribusikan ketahanan dan tergantung pada opsi ketahanan yang dipilih. Sebagai contoh sederhana, menyimpan data tanpa ketahanan akan menghemat 100% kapasitas (1 TB data membutuhkan kapasitas penyimpanan fisik 1 TB), sementara pencerminan dua arah akan menghemat 50% kapasitas (1 TB data membutuhkan kapasitas penyimpanan fisik 2 TB).

  • Cermin berlapis dua arah menulis empat salinan segala hal. Ini berarti bahwa untuk menyimpan 1 TB data, Anda memerlukan kapasitas penyimpanan fisik sebesar 4 TB. Meskipun kesederhanaannya menarik, efisiensi kapasitas cermin dua arah berlapis sebesar 25% merupakan yang terendah dari opsi ketahanan apa pun di Storage Spaces Direct.

  • Paritas berbasis cermin berlapis mencapai efisiensi kapasitas yang lebih tinggi, sekitar 35%-40%, yang tergantung pada dua faktor: jumlah drive kapasitas di setiap server, dan campuran cermin dan paritas yang Anda tentukan untuk volume. Tabel ini menyediakan pencarian bagi konfigurasi umum:

    Drive kapasitas per server Cermin 10% Cermin 20% Cermin 30%
    4 35,7% 34,1% 32,6%
    5 37,7% 35,7% 33,9%
    6 39,1% 36,8% 34,7%
    7+ 40,0% 37,5% 35,3%

    Berikut ini adalah contoh aritmetika lengkap. Misalnya, kita memiliki enam drive kapasitas di salah satu dari dua server, dan kita ingin membuat satu volume 100 GB yang terdiri dari cermin 10 GB dan paritas 90 GB. Cermin dua arah lokal server adalah 50,0% efisien, yang berarti 10 GB data cermin membutuhkan waktu 20 GB untuk disimpan di setiap server. Saat dicerminkan ke kedua server, total jejaknya adalah 40 GB. Paritas tunggal lokal server, dalam hal ini, adalah 5/6 = 83,3% efisien, yang berarti 90 GB data paritas membutuhkan 108 GB untuk disimpan pada setiap server. Dicerminkan ke kedua server, total jejaknya adalah sebesar 216 GB. Dengan demikian, total jejak adalah [(10 GB / 50,0%) + (90 GB / 83,3%)] × 2 = 256 GB, untuk menghasilkan efisiensi kapasitas keseluruhan 39,1%.

    Perhatikan bahwa efisiensi kapasitas pencerminan dua arah klasik (sekitar 50%) serta paritas berbasis cermin berlapis (hingga 40%) tidak terlalu berbeda. Tergantung pada kebutuhan Anda, efisiensi kapasitas yang sedikit lebih rendah mungkin setara dengan peningkatan ketersediaan penyimpanan yang signifikan. Anda memilih ketahanan per volume, sehingga Anda dapat mencampur volume ketahanan berlapis serta volume cermin dua arah klasik dalam kluster yang sama.

    Diagram yang menampilkan perbandingan antara cermin dua arah dan paritas berbasis cermin berlapis.

Membuat volume ketahanan berlapis

Anda dapat menggunakan cmdlet penyimpanan yang telah dikenal di PowerShell untuk membuat volume dengan ketahanan berlapis, seperti dijelaskan pada bagian berikut.

Langkah 1: Buat template tingkat penyimpanan (hanya untuk Windows Server 2019)

Windows Server 2019 mengharuskan Anda membuat template tingkat penyimpanan baru menggunakan cmdlet New-StorageTier sebelum membuat volume. Anda hanya perlu melakukan ini sekali, kemudian setiap volume baru yang Anda buat dapat merujuk pada template ini.

Catatan

Jika Anda menjalankan Windows Server 2022, Azure Stack HCI 21H2, atau Azure Stack HCI 20H2, Anda dapat melewati langkah ini.

Tentukan -MediaTypedrive kapasitas Anda dan, secara opsional, -FriendlyName pilihan Anda. Jangan ubah parameter lain.

Misalnya, jika drive kapasitas Anda adalah hard disk drive (HDD), luncurkan PowerShell sebagai Administrator dan jalankan cmdlet berikut.

Untuk membuat tingkat NestedMirror:

New-StorageTier -StoragePoolFriendlyName S2D* -FriendlyName NestedMirrorOnHDD -ResiliencySettingName Mirror -MediaType HDD -NumberOfDataCopies 4

Untuk membuat tingkat NestedParity:

New-StorageTier -StoragePoolFriendlyName S2D* -FriendlyName NestedParityOnHDD -ResiliencySettingName Parity -MediaType HDD -NumberOfDataCopies 2 -PhysicalDiskRedundancy 1 -NumberOfGroups 1 -FaultDomainAwareness StorageScaleUnit -ColumnIsolation PhysicalDisk

Jika drive kapasitas Anda adalah solid-state drive (SSD), atur -MediaType menjadi SSD sebagai gantinya, dan ubah -FriendlyName menjadi *OnSSD. Jangan ubah parameter lain.

Tip

Pastikan bahwa Get-StorageTier berhasil membuat tingkatan.

Langkah 2: Membuat volume berlapis

Membuat volume baru menggunakan cmdlet New-Volume.

  • Cermin dua arah berlapis

    Untuk menggunakan cermin dua arah berlapis, referensikan template tingkat NestedMirror dan tentukan ukurannya. Contohnya:

    New-Volume -StoragePoolFriendlyName S2D* -FriendlyName Volume01 -StorageTierFriendlyNames NestedMirrorOnHDD -StorageTierSizes 500GB
    

    Jika drive kapasitas Anda adalah drive solid-state (SSD), ubah -StorageTierFriendlyNames ke *OnSSD.

  • Paritas yang didukung cermin berlapis

    Untuk menggunakan paritas yang didukung cermin berlapis, referensikan template tingkat NestedMirror dan NestedParity serta tentukan dua ukuran, satu untuk setiap bagian volume (cermin dahulu, kemudian paritas). Misalnya, untuk membuat satu volume 500 GB yaitu cermin dua arah berlapis 20% dan paritas berlapis 80%, jalankan:

    New-Volume -StoragePoolFriendlyName S2D* -FriendlyName Volume02 -StorageTierFriendlyNames NestedMirrorOnHDD, NestedParityOnHDD -StorageTierSizes 100GB, 400GB
    

    Jika drive kapasitas Anda adalah drive solid-state (SSD), ubah -StorageTierFriendlyNames ke *OnSSD.

Langkah 3: Melanjutkan di Pusat Admin Windows

Volume yang menggunakan ketahanan berlapis muncul di Windows Admin Center dengan pelabelan yang jelas, seperti pada cuplikan layar berikut. Setelah dibuat, Anda dapat mengelola dan memantaunya menggunakan Windows Admin Center, sama seperti volume lainnya di Storage Spaces Direct.

Manajemen volume di Windows Admin Center.

Opsional: Perluas ke drive tembolokan

Dengan pengaturan defaultnya, ketahanan berlapis akan melindungi Anda dari hilangnya beberapa drive kapasitas secara bersamaan, atau satu server serta satu drive kapasitas pada saat yang sama. Untuk memperluas perlindungan ini ke drive cache, ada pertimbangan lain: karena drive cache sering menyediakan penembolokan baca dan tulis untuk beberapa drive kapasitas, satu-satunya cara untuk memastikan Anda dapat mentolerir hilangnya drive cache ketika server lain tidak berfungsi adalah dengan tidak menulis cache, tetapi itu berdampak pada performa.

Untuk mengatasi skenario ini, Storage Spaces Direct menawarkan opsi untuk menonaktifkan penembolokan tulis secara otomatis ketika satu server di kluster yang berisi dua server tidak berfungsi, lalu mengaktifkan kembali penembolokan tulis setelah server dicadangkan. Untuk memungkinkan penghidupan ulang rutin tanpa dampak performa, penembolokan tulis tidak akan dinonaktifkan sampai server tidak berfungsi selama 30 menit. Setelah penembolokan tulis dinonaktifkan, konten tembolokan tulis akan ditulis ke perangkat kapasitas. Setelah ini, server dapat menolerir perangkat tembolokan yang gagal di server online, meskipun pembacaan dari tembolokan mungkin tertunda atau gagal jika perangkat tembolokan gagal.

Catatan

Untuk semua sistem fisik tembolokan (jenis media tunggal), Anda tidak perlu mempertimbangkan penonaktifan otomatis penembolokan tulis ketika satu server di kluster berisi dua server tidak berfungsi. Anda perlu mempertimbangkan ini hanya dengan tembolokan lapisan bus penyimpanan (SBL), yang diperlukan hanya jika Anda menggunakan HDD.

(Opsional) Untuk menonaktifkan penembolokan tulis secara otomatis saat satu server di kluster berisi dua server tidak berfungsi, luncurkan PowerShell sebagai Administrator dan jalankan:

Get-StorageSubSystem Cluster* | Set-StorageHealthSetting -Name "System.Storage.NestedResiliency.DisableWriteCacheOnNodeDown.Enabled" -Value "True"

Setelah diatur ke True, perilaku tembolokan adalah:

Situasi Perilaku cache Dapat menolerir kehilangan drive tembolokan?
Kedua server aktif Tembolokan membaca dan menulis, performa penuh Ya
Server tidak berfungsi pada 30 menit pertama Tembolokan membaca dan menulis, performa penuh Tidak (sementara)
Setelah 30 menit pertama Tembolokan hanya membaca, performa terpengaruh Ya (setelah cache ditulis ke drive kapasitas)

Tanya jawab umum

Temukan jawaban atas tanya jawab umum mengenai ketahanan berlapis.

Dapatkah saya mengonversi volume yang telah ada antara cermin dua arah dan ketahanan berlapis?

Tidak, volume tidak bisa dikonversi antar jenis ketahanan. Untuk penyebaran baru di Azure Stack HCI, Windows Server 2022, atau Windows Server 2019, putuskan jenis ketahanan mana yang paling sesuai dengan kebutuhan Anda. Jika Anda memutakhirkan dari Windows Server 2016, Anda dapat membuat volume baru dengan ketahanan berlapis, memigrasikan data Anda, kemudian menghapus volume yang lebih lama.

Bisakah saya menggunakan ketahanan berlapis dengan beberapa jenis drive kapasitas?

Ya, cukup tentukan -MediaType dari setiap tingkatan yang sesuai, selama langkah 1 di atas. Misalnya, dengan NVMe, SSD, serta HDD dalam kluster yang sama, NVMe menyediakan tembolokan sementara SSD dan HDD menyediakan kapasitas: atur tingkat NestedMirror ke -MediaType SSD dan tingkat NestedParity ke -MediaType HDD. Dalam hal ini, efisiensi kapasitas paritas hanya bergantung pada jumlah drive HDD, lalu Anda memerlukan setidaknya 4 di antaranya per server.

Bisakah saya menggunakan ketahanan berlapis dengan tiga server atau lebih?

Tidak, gunakan ketahanan berlapis hanya jika kluster Anda memiliki persis dua server.

Seberapa banyak drive yang saya perlukan untuk menggunakan ketahanan berlapis?

Jumlah minimum drive yang diperlukan untuk Storage Spaces Direct adalah empat drive kapasitas per simpul server, ditambah dua drive tembolokan per simpul server (jika ada). Persyaratan ini tidak berubah dari Windows Server 2016. Tidak terdapat persyaratan lain untuk ketahanan berlapis, dan rekomendasi untuk kapasitas cadangan juga tidak berubah.

Apakah ketahanan berlapis telah mengubah cara kerja penggantian drive?

Nomor.

Apakah ketahanan berlapis telah mengubah cara kerja penggantian simpul server?

Nomor. Untuk mengganti simpul server serta drivenya, ikuti urutan ini:

  1. Menghentikan drive pada server keluar
  2. Tambahkan server baru dengan drive-nya ke kluster
  3. Kumpulan penyimpanan akan menjadi kembali seimbang
  4. Menghapus server keluar serta drive-nya

Untuk detailnya, harap lihat artikel Menghapus server.

Langkah berikutnya