Punya masalah di sini pada Windows Server Failover Cluster (WSFC) 2016 hosting SQL Failover Cluster Instance (FCI) menggunakan Storage Spaces Direct (S2D). Pada setiap server, setelah penciptaan awal yang sukses, S2D secara otomatis menambahkan volume RAID yang tidak digunakan ke kolam penyimpanan (meskipun S2D tidak dapat dibuat pada volume RAID dan benar-benar bersikeras pada disk yang tidak diarahkan). Sekarang sudah rusak, karena - sejauh yang saya tahu - persis seperti itu. Sebagai konsekuensinya, disk virtual sedang offline, membawa seluruh cluster turun bersamanya. Itu tidak akan kembali online, karena sumber daya jaringan cluster hilang. Disk yang dimaksud dapat dipensiunkan tetapi tidak dihapus. Perbaikan disk virtual tidak berjalan, uji kompatibilitas cluster mengklaim konfigurasi tidak valid.
Ini adalah pengaturan baru. Jadi saya bisa menghapus disk virtual, cluster atau bahkan server dan memulai kembali. Tetapi sebelum kita menjadi produktif, saya harus memastikan, ini tidak pernah terjadi lagi. Sistem yang menembak dirinya sendiri di lutut virtual terhenti hanya dengan menambahkan disk yang tidak didukung dengan tidak tepat dan tidak ada platform yang dapat kita gunakan. Jadi terutama saya perlu cara untuk mencegah hal ini terjadi, daripada memperbaikinya sekarang. Dugaan saya adalah bahwa mencegah pengaturan S2D dari mengambil lebih banyak disk daripada yang dibuat akan melakukan trik. Biaya interaksi manual yang berpotensi lebih banyak selama penggantian disk nyata dapat diabaikan oleh clusterf ... yang kita miliki di sini. Namun, sejauh saya menjelajahi dokumentasi, saya tidak dapat menemukan cara untuk mengendalikannya. Kecuali saya kehilangan sesuatu, Set-StoragePool,
Bantuan atau petunjuk apa pun akan sangat dihargai.
Berikut ini hanya rincian lebih lanjut tentang hal di atas: Kami memiliki 2 mesin server HPE DL380 Gen9 yang saling terhubung satu sama lain melalui RDMA yang mampu 10GB Ethernet dan melalui 1GB ke jaringan klien. Setiap fitur pengendali RAID HP ??? dan pengontrol HBA sederhana HP ??? (karena S2D benar-benar membutuhkan dan bekerja hanya pada disk yang terpasang langsung dan tidak diarahkan). Konfigurasi penyimpanan terdiri dari OS-RAID pada pengontrol-RAID, File-RAID pada pengontrol RAID, dan sekumpulan disk yang terpasang langsung pada HBA yang ditujukan untuk S2D.
Saya mengatur 2 edisi Windows Server 2016 datacenter pada OS-RAID, menginstal fitur WSFC, menjalankan dan lulus uji kompatibilitas cluster termasuk opsi S2D, membuat cluster tanpa penyimpanan, menambahkan saksi berbagi file (pada mesin terpisah), mengaktifkan S2D pada kumpulan penyimpanan, yang secara otomatis terdiri dari semua disk yang tidak diarahkan, dan di atas kumpulan tersebut menciptakan disk virtual dari jenis cermin dan menggunakan NTFS sebagai sistem file, karena ini dianggap sebagai FS pilihan untuk SQL FCI instalasi.
Saya kemudian menginstal edisi standar SQL 2016 sebagai FCI pada cluster itu, mengimpor database dan menguji semuanya. Semuanya baik-baik saja. Database ada di sana dan lebih cepat dari sebelumnya. Dipaksa serta kegagalan otomatis sangat mudah. Semuanya terlihat bagus.
Hari berikutnya kami mencoba memanfaatkan Files-RAID yang tersisa. Hal pertama adalah mengubah level RAID karena kami tidak suka pra-konfigurasi. Segera setelah menghapus volume RAID yang telah dikonfigurasi sebelumnya dan membangun yang baru (di setiap server), kami mendeteksi bahwa gugus sedang down. Dari apa yang saya tahu sejauh ini, volume Files-RAID yang telah dikonfigurasi sebelumnya telah secara otomatis ditambahkan ke pool, dan ketika kami baru saja menghapusnya, sekarang sudah hilang dari pool. Ketika saya mengecek, saya menemukan Files-RAID baru, sementara masih dibuat, sudah ditampilkan sebagai drive fisik dari pool juga. Jadi kumpulan sekarang termasuk 2 volume RAID pada setiap server, salah satunya bahkan tidak ada. Volume ini (tetapi bukan disk mereka) didaftar oleh Get-PhysicalDisk bersama dengan disk sebenarnya fisik pada HBA, tidak yakin apakah itu biasa.
Saya dapat menghentikan disk fisik tersebut (yaitu yang sebenarnya merupakan volume RAID), dan sekarang ditandai sebagai sudah tidak digunakan lagi. Tetapi mereka masih di kolam renang dan saya tidak dapat menghapusnya sekarang, mencoba melakukannya gagal. Perbaikan-VirtualDisk harus membangun kembali disk virtual ke kondisi yang tepat hanya pada disk yang tersisa (saya pergi dengan ini: https://social.technet.microsoft.com/Forums/windows/en-US/dbbf317b-80d2-4992- b5a9-20b83526a9c2 / storage-space-remove-physical-disk? forum = winserver8gen ), tetapi pekerjaan ini segera berakhir, "berhasil" tentu saja, tanpa efek apa pun.
Mencoba mengalihkan disk virtual kembali online gagal, menyatakan bahwa sumber daya gugus jaringan tidak tersedia. Sejauh yang saya mengerti, ini hanya bisa merujuk ke kumpulan penyimpanan (tersedia), karena disk yang hilang bukan cluster ressources. Kolam tidak menunjukkan kesalahan untuk diperbaiki. Menjalankan uji kompatibilitas cluster mengklaim konfigurasi tidak cocok untuk sebuah cluster.
Saya tidak dapat menemukan bagian yang tersisa yang akan bergerak satu inci lagi, semuanya tampak menemui jalan buntu untuk selamanya. Adakah ide tentang cara mencegah WSFC yang sedang berjalan agar tidak naik sendiri?
Saya tidak menemukan pesan kesalahan yang saya temukan sangat mencerahkan, dan saya tidak ingin mengebom halaman lebih banyak lagi dengan memposting semuanya. Jika ada yang ingin memiliki detail spesifik, beri tahu saya.
Terima kasih banyak atas waktu Anda, kawan!
Karsten
sumber
Get-PhysicalDisk -CanPool $true | Sort Model | ft FriendlyName, BusType, CanPool, OperationalStatus, HealthStatus, Usage, Size
Juga, apakah ada kemungkinan Anda melakukan kesalahan ketika mengkonfigurasi ulang File-RAID yang menetapkan drive S2D ke RAID baru?Jawaban:
Ya, Anda dapat menonaktifkan perilaku auto-pooling. Pengalamannya tidak bagus, tetapi tentu saja bisa dilakukan dan didukung. Nama pengaturan, dan contoh sintaks cmdlet, ada di bagian Pengaturan pada dokumen publik ini:
https://technet.microsoft.com/en-us/windows-server-docs/failover-clustering/health-service-overview
Intinya, jalankan ini sebagai Administrator:
Get-StorageSubSystem Cluster * | Set-StorageHealthSetting -Name "System.Storage.PhysicalDisk.AutoPool.Enabled" -Nilai Palsu
Semoga ini membantu! - Cosmos (@cosmosdarwin), Microsoft PM
sumber
Solusi yang saya temukan untuk masalah ini adalah mengubah Jenis Bus dari volume atau disk RAID dengan mengubahnya dari salah satu jenis yang didukung ke yang tidak didukung.
Anda harus mengidentifikasi driver pengontrol dari Device Manager dan setelah masuk registri dan menemukan nama driver di lokasi di bawah ini.
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ SmartPqi \ Parameters
Dalam kasus saya, saya telah mengubah kunci registri yang sesuai dengan SAS menjadi RAID
«BusType» = 0x00000008 (RAID) (bukan 0x0000000a) (SAS)
reboot mesin
Setelah perubahan ini, Anda dapat memiliki kumpulan penyimpanan di subsistem Penyimpanan Windows alih-alih Ruang Penyimpanan Clustered
Harap berhati-hati jika Anda ingin menerapkan solusi seperti ini karena ini bukan solusi yang divalidasi dan dapat membuat lingkungan produksi Anda berisiko tinggi.
sumber