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.
Artikel ini menyediakan informasi tentang cara menyebarkan kumpulan kluster untuk Kluster Failover Windows Server menggunakan PowerShell. Kumpulan kluster adalah sekelompok beberapa kluster failover yang diklusterkan bersama-sama. Dengan menggunakan set kluster, Anda dapat meningkatkan jumlah simpul server dalam satu cloud Software Defined Data Center (SDDC) berdasarkan urutan besarnya.
Set kluster telah diuji dan didukung hingga 64 total node kluster. Namun, kelompok kluster dapat berkembang ke batas yang jauh lebih besar dan tidak ditentukan secara tetap untuk batas.
Benefits
Set kluster menawarkan manfaat berikut:
Secara signifikan meningkatkan skala dukungan cloud SDDC untuk menjalankan mesin virtual (VM) dengan ketersediaan tinggi dengan menggabungkan beberapa kluster yang lebih kecil menjadi satu fabric besar, sambil tetap mempertahankan batas kesalahan perangkat lunak pada satu kluster. Anda dapat dengan mudah memigrasikan VM di seluruh set kluster.
Peningkatan ketahanan. Memiliki empat kluster 4-node dalam satu set kluster memberikan keandalan yang lebih baik daripada satu kluster 16-node, karena beberapa simpul komputasi dapat mengalami gangguan tanpa mengganggu produksi.
Manajemen siklus hidup kluster failover, termasuk penerapan dan penghentian kluster, tanpa memengaruhi ketersediaan VM bagi penyewa.
Fleksibilitas VM di seluruh kluster individual dan menyajikan namespace penyimpanan terpadu.
Ubah rasio beban kerja komputasi ke penyimpanan dengan mudah di lingkungan hyper-converged Anda.
Manfaatkan Domain Kesalahan dan Set Ketersediaan seperti Azure di seluruh kluster individual dalam penempatan VM awal dan migrasi berikutnya.
Dapat menggunakan meskipun perangkat keras komputasi dan penyimpanan antara node kluster tidak identik.
Migrasi langsung VM antar kluster.
Set ketersediaan dan domain kesalahan seperti Azure di beberapa kluster.
Pemindahan komputer virtual SQL Server antar kluster.
Persyaratan dan batasan
Ada beberapa persyaratan dan batasan untuk menggunakan set kluster:
Semua kluster anggota dalam kumpulan kluster harus berada di forest Active Directory (AD) yang sama.
Server anggota dalam set harus menjalankan versi sistem operasi yang sama. Komputer virtual tidak dapat dimigrasikan secara langsung antara sistem operasi yang berbeda. Anda dapat memiliki kluster yang terdiri dari salah satu, tetapi tidak beberapa, dari opsi berikut:
- Kluster Failover Windows Server 2019 dan Kluster Failover Windows Server 2019
- Kluster Failover Windows Server 2019 dan Ruang Penyimpanan Windows Server 2019 Langsung
- Windows Server 2019 Storage Spaces Direct dan Windows Server 2019 Storage Spaces Direct
Perangkat keras prosesor identik diperlukan untuk semua server anggota agar migrasi langsung antar kluster anggota terjadi; jika tidak, Anda harus memilih Kompatibilitas Prosesor CPU dalam pengaturan komputer virtual.
VM dalam set kluster harus dimigrasikan secara manual antar kluster - mereka tidak dapat secara otomatis melakukan failover.
Replika Penyimpanan harus digunakan di antara kluster anggota untuk mewujudkan ketahanan penyimpanan menghadapi kegagalan kluster. Saat menggunakan Replika Penyimpanan, ingatlah bahwa jalur UNC penyimpanan namespace tidak akan berubah secara otomatis pada failover Replika Penyimpanan ke kluster target replika.
Storage Spaces Direct tidak berfungsi di seluruh kluster anggota dalam kumpulan kluster. Sebaliknya, Storage Spaces Direct berlaku untuk satu kluster, dengan setiap kluster memiliki kumpulan penyimpanannya sendiri.
Architecture
Diagram berikut mengilustrasikan kumpulan kluster pada tingkat tinggi:
Berikut ini menyediakan ringkasan dari setiap elemen yang diperlihatkan:
Kluster manajemen
Kluster manajemen menghosting bidang manajemen yang sangat tersedia dan server file peluasan skala rujukan namespace (SOFS) untuk kumpulan kluster. Kluster manajemen secara logis dipisahkan dari kluster anggota individual yang menjalankan beban kerja VM. Ini membuat sarana manajemen set kluster tahan terhadap kegagalan di seluruh kluster yang dilokalkan, seperti hilangnya daya kluster anggota.
SOFS rujukan kumpulan nama kluster
Sebuah namespace untuk set kluster disediakan dengan peran server SOFS yang beroperasi pada kluster manajemen. Ini mirip dengan Namespace Sistem File Terdistribusi (DFSN). Namun tidak seperti DFSN, metadata rujukan namespace kumpulan kluster diisi secara otomatis pada semua node kluster tanpa intervensi apa pun, sehingga hampir tidak ada overhead performa di jalur akses penyimpanan. Mekanisme rujukan ringan ini tidak berpartisipasi dalam jalur I/O.
Setiap rujukan berbagi Blok Pesan Server (SMB) pada namespace kluster rujukan SOFS berjenis SimpleReferral. Rujukan ini memungkinkan klien SMB mengakses berbagi SMB target yang dihosting di kluster anggota SOFS. Rujukan di-cache terus-terusan pada setiap simpul klien dan namespace kumpulan kluster secara dinamis memperbarui rujukan sesuai kebutuhan secara otomatis. Informasi rujukan terus-menerus di-cache di setiap node set kluster, bahkan selama reboot.
Pengaturan utama kluster
Komunikasi antar kluster anggota digabungkan secara longgar dan dikoordinasikan oleh sumber daya master set kluster (CS-Master). Seperti sumber daya kumpulan kluster lainnya, CS-Master sangat tersedia dan tahan terhadap kegagalan kluster anggota individu atau kegagalan node kluster manajemen. Melalui penyedia WMI set kluster, CS-Master menyediakan titik akhir manajemen untuk semua tindakan manajemen kumpulan kluster.
Kluster anggota
Kluster anggota menjalankan beban kerja VM dan Storage Spaces Direct. Beberapa kluster anggota berpartisipasi dalam penyebaran kumpulan kluster, membentuk jaringan cloud SDDC yang lebih besar. Kluster anggota berbeda dari kluster pengelolaan dalam dua aspek utama: kluster anggota berpartisipasi dalam konstruksi domain kesalahan dan set ketersediaan, serta kluster anggota diatur ukurannya untuk mendukung beban kerja VM dan Storage Spaces Direct. VM yang berpindah di seluruh kluster anggota tidak dihosting pada kluster manajemen karena alasan ini.
Pengolah Set Kluster
CS-Master berinteraksi dengan sumber daya kluster pada kluster anggota yang disebut pengelola set kluster (CS-Worker). CS-Worker menanggapi permintaan oleh CS-Master, termasuk penempatan VM dan inventori sumber daya. Ada satu instance CS-Worker untuk setiap kluster anggota.
Domain kesalahan
Domain kesalahan adalah sekelompok perangkat keras dan perangkat lunak yang dapat gagal bersamaan. Meskipun Anda dapat menunjuk satu atau beberapa kluster bersama-sama sebagai domain kesalahan, setiap simpul dapat berpartisipasi dalam domain kesalahan dalam set ketersediaan. Batas domain kesalahan didasarkan pada topologi pusat data, arsitektur jaringan, dan pertimbangan lainnya.
Set ketersediaan
Set ketersediaan digunakan untuk mengonfigurasi redundansi beban kerja berkluster yang diinginkan di seluruh domain kesalahan dengan mengelompokkan dan menyebarkan beban kerja. Untuk aplikasi dua tingkat, Anda harus mengonfigurasi setidaknya dua VM dalam set ketersediaan untuk setiap tingkatan, yang memastikan bahwa ketika domain kesalahan dari set ketersediaan tidak berfungsi, aplikasi Anda akan memiliki setidaknya satu VM di setiap tingkatan yang dihosting di domain kesalahan yang berbeda.
Membuat kumpulan kluster
Gunakan PowerShell dalam contoh alur kerja berikut untuk membuat kumpulan kluster menggunakan dua kluster. Nama kluster yang ditetapkan di sini adalah CSMASTER.
| Nama kluster | Nama Infrastruktur SOFS |
|---|---|
| SET-CLUSTER | SOFS-CLUSTERSET |
| CLUSTER1 | SOFS-CLUSTER1 |
| CLUSTER2 | SOFS-CLUSTER2 |
Gunakan komputer klien manajemen yang menjalankan Windows Server 2022 atau Windows Server 2019.
Instal alat Failover Cluster di server manajemen kluster.
Buat dua anggota kluster dan dengan setidaknya dua Volume Bersama Kluster (CSV) di setiap kluster.
Buat kluster manajemen (fisik atau virtual) yang mencakup kluster anggota. Ini memastikan bahwa lapisan manajemen set kluster terus tersedia meskipun terjadi kegagalan pada kluster anggota.
Untuk membuat kumpulan kluster:
New-ClusterSet -Name CSMASTER -NamespaceRoot SOFS-CLUSTERSET -CimSession SET-CLUSTERNote
Jika Anda menggunakan alamat IP statis, Anda harus menyertakan -StaticAddress x.x.x.x pada perintah New-ClusterSet .
Untuk menambahkan anggota kluster ke set kluster:
Add-ClusterSetMember -ClusterName CLUSTER1 -CimSession CSMASTER -InfraSOFSName SOFS-CLUSTER1 Add-ClusterSetMember -ClusterName CLUSTER2 -CimSession CSMASTER -InfraSOFSName SOFS-CLUSTER2Untuk menghitung semua kluster anggota dalam kumpulan kluster:
Get-ClusterSetMember -CimSession CSMASTERUntuk menghitung semua kluster anggota dalam kumpulan kluster termasuk node kluster manajemen:
Get-ClusterSet -CimSession CSMASTER | Get-Cluster | Get-ClusterNodeUntuk mencantumkan semua simpul server dari semua kluster anggota:
Get-ClusterSetNode -CimSession CSMASTERUntuk mencantumkan semua grup sumber daya di seluruh kumpulan kluster:
Get-ClusterSet -CimSession CSMASTER | Get-Cluster | Get-ClusterGroupUntuk memverifikasi kumpulan kluster yang memiliki satu share SMB (
ScopeNamemenjadi nama Server File Infra) di SOFS infrastruktur untuk setiap volume CSV anggota kluster.Get-SmbShare -CimSession CSMASTERTinjau file log debug set kluster untuk kumpulan kluster, kluster manajemen, dan setiap anggota kluster:
Get-ClusterSetLog -ClusterSetCimSession CSMASTER -IncludeClusterLog -IncludeManagementClusterLog -DestinationFolderPath <path>Konfigurasikan Kerberos dengan delegasi yang dibatasi antara semua anggota set kluster.
Konfigurasikan jenis autentikasi migrasi langsung VM lintas kluster ke Kerberos pada setiap simpul dalam set kluster:
foreach($h in $hosts){ Set-VMHost -VirtualMachineMigrationAuthenticationType Kerberos -ComputerName $h }Tambahkan kluster manajemen ke grup administrator lokal pada setiap node server anggota kluster dalam kumpulan kluster:
foreach($h in $hosts){ Invoke-Command -ComputerName $h -ScriptBlock {Net localgroup administrators /add <management_cluster_name>$} }
Membuat set kluster VM
Setelah membuat set kluster, langkah selanjutnya adalah membuat VM. Anda harus melakukan pemeriksaan berikut sebelumnya:
- Periksa memori yang tersedia pada setiap node server kluster
- Periksa ruang disk yang tersedia pada setiap node server kluster
- Periksa persyaratan penyimpanan VM tertentu dalam hal kecepatan dan performa
Get-ClusterSetOptimalNodeForVM Perintah mengidentifikasi kluster dan node optimal dalam kumpulan kluster lalu menyebarkan VM di atasnya. Dalam contoh berikut, VM baru dibuat dengan:
- Tersedia 4 GB
- Satu prosesor virtual
- Minimum CPU yang tersedia 10%
# Identify the optimal node to create a new virtual machine
$memoryinMB=4096
$vpcount = 1
$targetnode = Get-ClusterSetOptimalNodeForVM -CimSession CSMASTER -VMMemory $memoryinMB -VMVirtualCoreCount $vpcount -VMCpuReservation 10
$secure_string_pwd = convertto-securestring "<password>" -asplaintext -force
$cred = new-object -typename System.Management.Automation.PSCredential ("<domain\account>",$secure_string_pwd)
# Deploy the virtual machine on the optimal node
Invoke-Command -ComputerName $targetnode.name -scriptblock { param([String]$storagepath); New-VM CSVM1 -MemoryStartupBytes 3072MB -path $storagepath -NewVHDPath CSVM.vhdx -NewVHDSizeBytes 4194304 } -ArgumentList @("\\SOFS-CLUSTER1\VOLUME1") -Credential $cred | Out-Null
Start-VM CSVM1 -ComputerName $targetnode.name | Out-Null
Get-VM CSVM1 -ComputerName $targetnode.name | fl State, ComputerName
Anda akan diperlihatkan pada simpul kluster mana VM disebarkan setelah proses selesai. Untuk contoh di atas, ini akan ditampilkan sebagai:
State : Running
ComputerName : 1-S2D2
Jika tidak ada cukup memori, kapasitas CPU, atau ruang disk yang tersedia untuk menambahkan VM, Anda akan menerima kesalahan berikut:
Get-ClusterSetOptimalNodeForVM : A cluster node isn't available for this operation.
Setelah VM dibuat, VM ditampilkan di manajer Hyper-V pada simpul tertentu yang ditentukan. Untuk menambahkannya sebagai set kluster VM dan menambahkannya ke kluster, gunakan perintah ini:
Register-ClusterSetVM -CimSession CSMASTER -MemberName $targetnode.Member -VMName CSVM1
Setelah selesai, outputnya adalah:
Id VMName State MemberName PSComputerName
-- ------ ----- ---------- --------------
1 CSVM1 On CLUSTER1 CSMASTER
Jika Anda telah membuat kluster menggunakan VM yang ada, VM harus didaftarkan dengan kumpulan kluster. Untuk mendaftarkan semua VM sekaligus, gunakan:
Get-ClusterSetMember -Name CLUSTER3 -CimSession CSMASTER | Register-ClusterSetVM -RegisterAll -CimSession CSMASTER
Selanjutnya, tambahkan jalur VM ke namespace kumpulan kluster.
Sebagai contoh, misalkan kluster yang ada ditambahkan ke set kluster dengan VM yang telah dikonfigurasi sebelumnya yang berada di Cluster Shared Volume (CSV) lokal. Jalur untuk VHDX akan menjadi seperti C:\ClusterStorage\Volume1\MYVM\Virtual Hard Disks\MYVM.vhdx1.
Migrasi penyimpanan diperlukan, karena jalur CSV dirancang lokal ke satu kluster anggota dan oleh karena itu tidak dapat diakses oleh VM setelah mereka dimigrasikan secara langsung di seluruh kluster anggota.
Dalam contoh ini, CLUSTER3 ditambahkan ke himpunan kluster menggunakan Add-ClusterSetMember dengan server berkas scale-out SOFS-CLUSTER3. Untuk memindahkan konfigurasi dan penyimpanan VM, perintahnya adalah:
Move-VMStorage -DestinationStoragePath \\SOFS-CLUSTER3\Volume1 -Name MyVM
Setelah selesai, Anda mungkin menerima peringatan:
WARNING: There were issues updating the virtual machine configuration that may prevent the virtual machine from running. For more information view the report file below.
WARNING: Report file location: C:\Windows\Cluster\Reports\Update-ClusterVirtualMachineConfiguration '' on date at time.htm.
Peringatan ini dapat diabaikan karena tidak ada perubahan fisik dalam konfigurasi penyimpanan peran komputer virtual. Lokasi fisik aktual tidak berubah; hanya jalur konfigurasi yang melakukannya.
Untuk informasi selengkapnya tentang Move-VMStorage, lihat Move-VMStorage.
Migrasi langsung VM dalam kumpulan kluster melibatkan hal berikut:
Set-VMHost -UseAnyNetworkForMigration $true
Kemudian, untuk memindahkan VM set kluster dari CLUSTER1 ke NODE2-CL3 pada CLUSTER3 misalnya, perintahnya adalah:
Move-ClusterSetVM -CimSession CSMASTER -VMName CSVM1 -Node NODE2-CL3
Perintah ini tidak memindahkan penyimpanan VM atau file konfigurasi dan tidak diperlukan karena jalur ke VM tetap sebagai \\SOFS-CLUSTER1\VOLUME1. Setelah VM didaftarkan ke jalur berbagi server file infrastruktur, drive dan VM tidak perlu berada di node yang sama dengan VM.
Membuat server file peluasan skala infrastruktur
Ada satu peran cluster SOFS infrastruktur di dalam kluster. Peran SOFS Infrastruktur dibuat dengan menentukan parameter pengalihan -Infrastructure ke Add-ClusterScaleOutFileServerRole cmdlet. Contohnya:
Add-ClusterScaleoutFileServerRole -Name "my_infra_sofs_name" -Infrastructure
Setiap volume CSV yang dibuat secara otomatis memicu pembuatan berbagi SMB dengan nama yang dihasilkan secara otomatis berdasarkan nama volume CSV. Anda tidak dapat membuat atau memodifikasi share SMB secara langsung di dalam peran SOFS, kecuali dengan menggunakan operasi pembuatan dan modifikasi volume CSV.
Dalam konfigurasi hyperconverged, INFRASTRUCTURE SOFS memungkinkan klien SMB (Hyper-V host) untuk berkomunikasi dengan ketersediaan berkelanjutan (CA) ke server Infrastructure SOFS SMB. Loopback SMB hyper-converged ini dicapai ketika VM mengakses file disk virtual (VHDX) mereka, di mana identitas pemilik VM diteruskan antara klien dan server. Penerusan identitas ini memungkinkan penggunaan ACL untuk file VHDx sebagaimana dalam konfigurasi klaster hyperconverged standar seperti sebelumnya.
Setelah set kluster dibuat, ruang nama set kluster mengandalkan Infrastruktur SOFS pada setiap kluster anggota, dan juga Infrastruktur SOFS di kluster manajemen.
Pada saat kluster anggota ditambahkan ke kumpulan kluster, Anda dapat menentukan nama SOFS Infrastruktur pada kluster tersebut jika sudah ada. Jika SOFS Infrastruktur tidak ada, maka peran SOFS Infrastruktur baru akan dibuat pada kluster anggota yang baru. Jika peran SOFS Infrastruktur sudah ada di kluster anggota, operasi Tambahkan secara implisit mengganti namanya menjadi nama yang ditentukan sesuai kebutuhan. Setiap server SMB yang ada, atau peran SOFS non-infrastruktur pada kluster anggota, tidak digunakan oleh kumpulan kluster.
Saat kumpulan kluster dibuat, Anda memiliki opsi untuk menggunakan objek komputer AD yang ada sebagai akar namespace pada kluster manajemen. Pembuatan kumpulan kluster membuat peran kluster Infrastruktur SOFS pada kluster manajemen atau mengganti nama peran Infrastruktur SOFS yang ada. SOFS Infrastruktur pada kluster manajemen digunakan sebagai SOFS rujukan namespace layanan kluster.
Membuat domain kesalahan dan set ketersediaan
Domain kesalahan seperti Azure dan set ketersediaan dapat dikonfigurasi dalam kumpulan kluster. Ini bermanfaat untuk penempatan VM awal dan migrasi antar kluster.
Contoh di bawah ini memiliki empat kluster pada satu set kluster. Dalam himpunan, domain kesalahan pertama dibentuk dengan dua kluster dan domain kesalahan kedua dibentuk dengan dua kluster lainnya. Dua domain kesalahan ini merupakan grup ketersediaan.
Dalam contoh di bawah ini, CLUSTER1 dan CLUSTER2 berada di domain kesalahan FD1 dan CLUSTER3 dan CLUSTER4 berada di domain kesalahan FD2. Set ketersediaan adalah CSMASTER-AS.
Untuk membuat domain kesalahan, perintahnya adalah:
New-ClusterSetFaultDomain -Name FD1 -FdType Logical -CimSession CSMASTER -MemberCluster CLUSTER1,CLUSTER2 -Description "First fault domain"
New-ClusterSetFaultDomain -Name FD2 -FdType Logical -CimSession CSMASTER -MemberCluster CLUSTER3,CLUSTER4 -Description "Second fault domain"
Untuk memastikan berhasil dibuat, Get-ClusterSetFaultDomain dapat dijalankan dan outputnya ditampilkan untuk FD1.
PS C:\> Get-ClusterSetFaultDomain -CimSession CSMASTER -FdName FD1 | fl *
PSShowComputerName : True
FaultDomainType : Logical
ClusterName : {CLUSTER1, CLUSTER2}
Description : First fault domain
FDName : FD1
Id : 1
PSComputerName : CSMASTER
Sekarang setelah domain kesalahan dibuat, set ketersediaan dibuat:
New-ClusterSetAvailabilitySet -Name CSMASTER-AS -FdType Logical -CimSession CSMASTER -ParticipantName FD1,FD2
Untuk memvalidasi bahwa telah dibuat, gunakan:
Get-ClusterSetAvailabilitySet -AvailabilitySetName CSMASTER-AS -CimSession CSMASTER
Saat membuat VM baru, gunakan -AvailabilitySet parameter untuk menentukan simpul optimal untuk penempatan. Berikut adalah sebuah contoh:
# Identify the optimal node to create a new VM
$memoryinMB=4096
$vpcount = 1
$av = Get-ClusterSetAvailabilitySet -Name CSMASTER-AS -CimSession CSMASTER
$targetnode = Get-ClusterSetOptimalNodeForVM -CimSession CSMASTER -VMMemory $memoryinMB -VMVirtualCoreCount $vpcount -VMCpuReservation 10 -AvailabilitySet $av
$secure_string_pwd = convertto-securestring "<password>" -asplaintext -force
$cred = new-object -typename System.Management.Automation.PSCredential ("<domain\account>",$secure_string_pwd)
Menghapus kluster dari satu set
Ada kalanya kluster perlu dihapus dari kumpulan kluster. Sebagai praktik terbaik, semua VM set kluster harus dipindahkan dari kluster terlebih dahulu. Ini dapat dilakukan menggunakan Move-ClusterSetVM perintah dan Move-VMStorage .
Jika VM tidak dipindahkan dari kluster terlebih dahulu, semua VM set kluster yang tersisa yang dihosting pada kluster yang dihapus akan menjadi VM yang sangat tersedia yang terikat ke kluster tersebut, dengan asumsi mereka memiliki akses ke penyimpanan mereka. Set kluster juga secara otomatis memperbarui inventaris mereka dengan tidak lagi melacak kesehatan kluster yang dihapus serta VM yang berjalan di atasnya, dan dengan menghapus namespace serta semua referensi ke berbagi yang dihosting pada kluster yang dihapus.
Misalnya, perintah untuk menghapus kluster CLUSTER1 dari kumpulan kluster adalah:
Remove-ClusterSetMember -ClusterName CLUSTER1 -CimSession CSMASTER
Pencadangan keadaan sistem
Pencadangan status sistem akan mencadangkan status kluster dan metadata. Dengan menggunakan Windows Server Backup, Anda dapat memulihkan database kluster hanya jika diperlukan atau melakukan pemulihan otoritatif untuk mengembalikan seluruh database kluster di semua simpul. Untuk set kluster, sebaiknya lakukan pemulihan otoritatif terlebih dahulu untuk kluster anggota lalu untuk kluster manajemen. Untuk informasi selengkapnya tentang pencadangan status sistem, lihat Back up system state and bare metal.
Langkah selanjutnya
- Pelajari selengkapnya tentang Replika Penyimpanan.