Compartilhar via


PowerShell을 이용한 Failover clustering : Highly Available Workload 생성

PowerShell for Failover Clustering: Creating Highly Available Workloads

https://blogs.msdn.com/clustering/archive/2010/01/12/9946994.aspx

 

PowerShell 을 이용해서 Failover Clustering 을 제어하는 방법에 대해서 설명하고 있습니다. Windows Server 2008 부터 관리를 위한 제품은 UI만 가지고 실제로는 PowerShell로 구현되어 있다고 하니 이제는 PowerShell을 꼭 공부해야 할 것 같습니다.

 

Clustering 에 HA workload를 추가와 관련된 PowerShell 명령을 보는 명령 입니다.

PS C:\Windows\system32> Get-Command -Module FailoverClusters | ?{ $_.Name -like "Add-Cluster*Role" }

 

위 포스트 에서는 ahmedbc4Dtc 라는 DTC 그룹을 GUI를 사용해 만들어 놓은 후  PowerShell 을 사용해서 다시 동일하게 생성하는 방법을 설명하고 있습니다.

아래 3가지 명령으로 해당 그룹의 정보를 확인한 후 동일하게 PowerShell 로 만듭니다.

PS C:\Windows\system32> Get-ClusterGroup ahmedbc4Dtc

PS C:\Windows\system32> Get-ClusterGroup ahmedbc4Dtc | Get-ClusterResource | ft –auto

PS C:\Windows\system32> Get-ClusterGroup ahmedbc4Dtc | Get-ClusterResource | Get-ClusterResourceDependency | ft –auto

 

PowerShell 로 만들기 시작 합니다.

먼저 디스크를 추가 합니다.

PS C:\Windows\system32> Add-ClusterServerRole -Name ahmedbc4Dtc1 -Storage "Cluster Disk 7"

디스크가 잘 추가되었는지 확인하고 Dependency를 확인 합니다.

PS C:\Windows\system32> Get-ClusterGroup ahmedbc4Dtc1 | Get-ClusterResource | ft –auto

PS C:\Windows\system32> Get-ClusterGroup ahmedbc4Dtc1 | Get-ClusterResource | Get-ClusterResourceDependency | ft –auto

 

DTC 리소스를 만들고 Dependency를 설정한 후 시작 시킵니다.

PS C:\Windows\system32> Get-ClusterGroup ahmedbc4Dtc1 | Add-ClusterResource -Name MSDTC-ahmedbc4Dtc1 -ResourceType "Dist

ributed Transaction Coordinator"

PS C:\Windows\system32> Add-ClusterResourceDependency MSDTC-ahmedbc4Dtc1 ahmedbc4Dtc1

PS C:\Windows\system32> Add-ClusterResourceDependency MSDTC-ahmedbc4Dtc1 "Cluster Disk 7"

PS C:\Windows\system32> Get-ClusterGroup ahmedbc4Dtc1 | Get-ClusterResource | Get-ClusterResourceDependency | ft –auto

PS C:\Windows\system32> Start-ClusterGroup ahmedbc4Dtc1

 

DTC group 의 Group type을 변경해 줍니다.

PS C:\Windows\system32> ( gwmi -Namespace root/MSCluster -Class MSCluster_ResourceGroup | ?{ $_.Name -eq "ahmedbc4Dtc1"

} ).SetGroupType(103)

 

감사합니다