Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Ketahanan berlapis adalah kemampuan Storage Spaces Direct di Azure Local dan Windows Server. Ini memungkinkan kluster dua server untuk menahan beberapa kegagalan perangkat keras pada saat yang sama tanpa kehilangan ketersediaan penyimpanan, sehingga pengguna, aplikasi, dan komputer virtual terus berjalan tanpa gangguan. Artikel ini menjelaskan cara kerja ketahanan berlapis, menyediakan instruksi langkah demi langkah untuk memulai, dan menjawab pertanyaan yang paling sering diajukan.
Sebelum Anda mulai
Pertimbangkan ketahanan berlapis jika:
- Kluster Anda menjalankan salah satu sistem operasi ini: Azure Local, versi 22H2 atau yang lebih baru, Windows Server 2019 atau yang lebih baru; dan
- Kluster Anda memiliki tepat dua simpul server.
Anda tidak dapat menggunakan ketahanan berlapis jika:
- Kluster Anda menjalankan Windows Server 2016; atau
- Kluster Anda hanya memiliki satu simpul server atau memiliki tiga node server atau lebih.
Mengapa ketahanan bersarang
Volume yang menggunakan ketahanan berlapis dapat tetap online dan 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 dan dapat diakses. Untuk infrastruktur hyper-converged, ini meningkatkan waktu aktif untuk aplikasi dan komputer virtual; untuk beban kerja server file, ini berarti pengguna memiliki akses tanpa gangguan ke file mereka.
Kompromi yang harus diambil adalah bahwa ketahanan yang bertingkat memiliki efisiensi kapasitas yang lebih rendah dibandingkan dengan pencerminan dua arah klasik, yang berarti Anda mendapatkan ruang yang sedikit lebih tidak dapat digunakan. Untuk detailnya, lihat bagian Efisiensi kapasitas berikut.
Cara kerjanya
Bagian ini menyediakan latar belakang tentang ketahanan berlapis untuk Storage Spaces Direct dan menjelaskan dua opsi ketahanan baru dan efisiensi kapasitasnya.
Inspirasi: RAID 5+1
RAID 5+1 adalah bentuk ketahanan penyimpanan terdistribusi yang mapan yang menyediakan 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 dari hilangnya satu drive. Kemudian, ketahanan lebih lanjut disediakan oleh RAID-1, atau pencerminan dua arah, antara kedua server untuk melindungi dari hilangnya salah satu server.
Opsi ketahanan
Ruang Penyimpanan Langsung di Azure Local dan Windows Server menawarkan dua opsi ketahanan yang diterapkan dalam perangkat lunak, tanpa perlu perangkat keras RAID khusus:
Cermin dua arah tertanam. Dalam setiap server, ketahanan lokal disediakan oleh pencerminan dua arah, dan kemudian ketahanan lebih lanjut disediakan oleh pencerminan dua arah antara kedua server. 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: penulisan dilakukan pada semua salinan dan pembacaan dapat berasal dari salinan mana pun.
Paritas yang dipercepat cermin berlapis. Gabungkan pencerminan dua arah yang berlapis dari gambar sebelumnya dengan paritas yang berlapis. Dalam setiap server, ketahanan lokal untuk sebagian besar data disediakan oleh aritmatika paritas bitwise tunggal, kecuali penulisan terbaru yang menggunakan pemantulan dua arah. Ketahanan data lebih lanjut disediakan melalui pencerminan dua arah di antara server-server. Penulisan baru ke volume dialihkan ke bagian pencerminan dengan dua salinan yang disimpan pada disk fisik terpisah di setiap server. Saat bagian cermin volume terisi di setiap server, data terlama dikonversi dan disimpan ke bagian paritas di latar belakang. Akibatnya, setiap server memiliki data untuk volume baik dalam cermin dua sisi atau dalam struktur paritas tunggal. Ini mirip dengan cara kerja paritas yang dipercepat cermin —dengan perbedaan paritas yang dipercepat cermin memerlukan empat server di kluster dan kumpulan penyimpanan, dan menggunakan algoritma paritas yang berbeda.
Efisiensi kapasitas
Efisiensi kapasitas adalah rasio ruang yang dapat digunakan untuk jejak volume. Ini menjelaskan overhead kapasitas yang disebabkan oleh daya tahan, dan tergantung pada opsi daya tahan yang Anda pilih. Sebagai contoh sederhana, menyimpan data tanpa ketahanan adalah 100% hemat kapasitas (1 TB data membutuhkan kapasitas penyimpanan fisik 1 TB), sementara pencerminan dua arah adalah 50% efisien (1 TB data membutuhkan kapasitas penyimpanan fisik 2 TB).
Nested two-way mirror membuat empat salinan dari setiap data. Ini berarti bahwa untuk menyimpan data 1 TB, Anda memerlukan kapasitas penyimpanan fisik 4 TB. Meskipun kesederhanaannya menarik, efisiensi kapasitas dari cermin dua arah berlapis pada 25% adalah yang terendah dibandingkan pilihan ketahanan lainnya dalam Storage Spaces Direct.
Paritas yang dipercepat 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 untuk konfigurasi umum:
Drive kapasitas per server 10% cermin 20% cermin 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 matematika lengkap. Misalkan kita memiliki enam drive kapasitas di masing-masing 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 memiliki efisiensi 50,0%, yang berarti 10 GB data cermin memerlukan 20 GB untuk disimpan di setiap server. Dicerminkan ke kedua server, total ukuran penyimpanannya adalah 40 GB. Paritas tunggal lokal server, dalam hal ini, adalah 5/6 = 83,3% efisien, yang berarti 90 GB data paritas membutuhkan waktu 108 GB untuk disimpan di setiap server. Dicerminkan pada kedua server, total ukurannya adalah 216 GB. Dengan demikian, total jejak penggunaan [(10 GB / 50,0%) + (90 GB / 83,3%)] × 2 = 256 GB, dengan efisiensi kapasitas keseluruhan sebesar 39,1%.
Perhatikan bahwa efisiensi kapasitas pencerminan dua arah klasik (sekitar 50%) dan paritas yang dipercepat cermin berlapis (hingga 40%) tidak terlalu berbeda. Tergantung pada kebutuhan Anda, efisiensi kapasitas yang sedikit lebih rendah mungkin sepadan dengan peningkatan ketersediaan penyimpanan yang signifikan. Anda memilih ketahanan per volume, sehingga Anda dapat mencampur volume ketahanan berlapis dan volume cermin dua arah klasik dalam kluster yang sama.
Membuat volume ketahanan berlapis
Anda dapat menggunakan cmdlet penyimpanan yang sudah dikenal di PowerShell untuk membuat volume dengan ketahanan berlapis, seperti yang dijelaskan di bagian berikut.
Langkah 1: Buat templat tingkat penyimpanan (hanya Windows Server 2019)
Windows Server 2019 mengharuskan Anda membuat templat tingkat penyimpanan baru menggunakan New-StorageTier cmdlet sebelum membuat volume. Anda hanya perlu melakukan ini sekali, lalu setiap volume baru yang Anda buat dapat mereferensikan templat ini.
Note
Jika Anda menjalankan Windows Server 2022, Azure Stack HCI, versi 21H2, atau Azure Stack HCI, versi 20H2, Anda dapat melewati langkah ini.
-MediaType Tentukan drive 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 lapisan NestedMirror:
New-StorageTier -StoragePoolFriendlyName S2D* -FriendlyName NestedMirrorOnHDD -ResiliencySettingName Mirror -MediaType HDD -NumberOfDataCopies 4
Untuk membuat lapisan 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 ke SSD sebagai gantinya, dan ubah -FriendlyName ke *OnSSD. Jangan ubah parameter lain.
Tip
Verifikasi bahwa Get-StorageTier berhasil membuat tingkatan.
Langkah 2: Membuat volume berlapis
Buat volume baru menggunakan New-Volume cmdlet.
Cermin dua arah bersusun
Untuk menggunakan cermin dua arah berlapis, referensikan
NestedMirrortemplat tingkat dan tentukan ukurannya. Contohnya:New-Volume -StoragePoolFriendlyName S2D* -FriendlyName Volume01 -StorageTierFriendlyNames NestedMirrorOnHDD -StorageTierSizes 500GBJika drive kapasitas Anda adalah solid-state drive (SSD), ubah
-StorageTierFriendlyNamesmenjadi*OnSSD.Paritas berlapis yang dipercepat oleh cermin
Untuk menggunakan paritas dipercepat cermin berlapis, referensikan kedua templat tingkat,
NestedMirrordanNestedParity, dan tentukan dua ukuran, satu untuk setiap bagian volume (cermin terlebih dahulu, paritas kedua). Misalnya, untuk membuat satu volume 500 GB yang 20% cermin dua arah berlapis dan 80% paritas berlapis, jalankan:New-Volume -StoragePoolFriendlyName S2D* -FriendlyName Volume02 -StorageTierFriendlyNames NestedMirrorOnHDD, NestedParityOnHDD -StorageTierSizes 100GB, 400GBJika drive kapasitas Anda adalah solid-state drive (SSD), ubah
-StorageTierFriendlyNamesmenjadi*OnSSD.
Langkah 3: Lanjutkan di Pusat Admin Windows
Volume yang menggunakan ketahanan berlapis muncul di Pusat Admin Windows dengan pelabelan yang jelas, seperti pada cuplikan layar berikut. Setelah dibuat, Anda dapat mengelola dan memantaunya menggunakan Pusat Admin Windows sama seperti volume lainnya di Ruang Penyimpanan Langsung.
Opsional: Tambahkan ke drive cache
Dengan pengaturan defaultnya, ketahanan berlapis melindungi dari hilangnya beberapa drive kapasitas secara bersamaan, atau satu server dan satu drive kapasitas secara bersamaan. Untuk memperluas perlindungan ini ke drive cache, ada pertimbangan lain: karena drive cache sering menyediakan cache untuk pembacaan dan penulisan bagi beberapa drive dengan kapasitas besar, satu-satunya cara untuk memastikan Anda dapat mentolerir hilangnya drive cache saat server lainnya mati adalah dengan tidak menggunakan cache untuk penulisan, tetapi itu dapat berdampak pada performa.
Untuk mengatasi skenario ini, Storage Spaces Direct menawarkan opsi untuk secara otomatis menonaktifkan penembolokan tulis ketika satu server di kluster dua server tidak berfungsi, lalu mengaktifkan kembali penembolokan tulis setelah server dicadangkan. Untuk mengizinkan restart rutin tanpa dampak performa, penyimpanan sementara penulisan tidak dinonaktifkan sampai server tidak aktif selama 30 menit. Setelah penyimpanan sementara tulis dinonaktifkan, konten cache tulis ditulis ke perangkat penyimpanan. Setelah ini, server dapat mentolerir perangkat cache yang gagal di server online, meskipun membaca dari cache mungkin tertunda atau gagal jika perangkat cache gagal.
Note
Untuk semua sistem fisik cache (media jenis tunggal), Anda tidak perlu mempertimbangkan penonaktifan otomatis cache tulis saat satu server di dalam kluster dua server tidak aktif. Anda perlu mempertimbangkan ini hanya dengan cache lapisan bus penyimpanan (SBL), yang diperlukan hanya jika Anda menggunakan HDD.
(Opsional) Untuk secara otomatis menonaktifkan penyimpanan cache tulis ketika salah satu server di kluster dua server mengalami kegagalan, luncurkan PowerShell sebagai Administrator dan jalankan:
Get-StorageSubSystem Cluster* | Set-StorageHealthSetting -Name "System.Storage.NestedResiliency.DisableWriteCacheOnNodeDown.Enabled" -Value "True"
Setelah diatur ke True, perilaku cache adalah:
| Situation | Perilaku cache | Apakah dapat mentolerir kehilangan drive cache? |
|---|---|---|
| Kedua server aktif | Cache membaca dan menulis, performa penuh | Yes |
| Server tidak berfungsi, 30 menit pertama | Cache membaca dan menulis, performa penuh | Tidak (sementara) |
| Setelah 30 menit pertama | Cache hanya membaca, performa terpengaruh | Ya (setelah cache ditulis ke drive kapasitas) |
Tanya jawab umum
Temukan jawaban atas tanya jawab umum tentang ketahanan berlapis.
Dapatkah saya mengonversi volume yang ada antara cermin dua arah dan ketahanan berlapis?
Tidak, volume tidak dapat dikonversi antara jenis ketahanan. Untuk penyebaran baru di Azure Local, Windows Server 2022, atau Windows Server 2019, putuskan sebelumnya 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, lalu menghapus volume yang lebih lama.
Dapatkah saya menggunakan ketahanan berlapis dengan beberapa jenis drive kapasitas?
Ya, cukup tentukan -MediaType dari setiap tingkat yang sesuai selama langkah 1 di atas. Misalnya, dengan NVMe, SSD, dan HDD dalam kluster yang sama, NVMe menyediakan cache sementara dua yang terakhir menyediakan kapasitas: atur NestedMirror tingkat ke -MediaType SSD dan NestedParity tingkat ke -MediaType HDD. Dalam hal ini, efisiensi kapasitas paritas hanya bergantung pada jumlah drive HDD, dan Anda memerlukan setidaknya 4 di antaranya per server.
Dapatkah saya menggunakan ketahanan berlapis dengan tiga server atau lebih?
Tidak, hanya gunakan ketahanan berlapis jika kluster Anda memiliki tepat dua server.
Berapa banyak drive yang saya perlukan untuk menggunakan redundansi berlapis?
Jumlah minimum drive yang diperlukan untuk Storage Spaces Direct adalah empat drive kapasitas per simpul server, ditambah dua drive cache per simpul server (jika ada). Ini tidak berubah dari Windows Server 2016. Tidak ada persyaratan lain untuk ketahanan berlapis, dan rekomendasi untuk kapasitas cadangan juga tidak berubah.
Apakah ketahanan berlapis mengubah cara kerja penggantian drive?
No.
Apakah ketahanan berlapis mengubah cara kerja penggantian simpul server?
No. Untuk mengganti simpul server dan drivenya, ikuti urutan ini:
- Menonaktifkan drive di server yang sedang diganti
- Tambahkan server baru, dengan drive-nya, ke kluster
- Kumpulan penyimpanan akan menyeimbangkan kembali
- Hapus server pengirim dan drive-nya
Untuk detailnya, lihat artikel Menghapus server .