Skrypt oparty jest na sys.dm_os_cluster_nodes, który zwraca jeden wiersz dla każdego węzła w konfiguracji wystąpienia klastra pracy awaryjnej (Failover Cluster). Jeśli bieżące wystąpienie jest wystąpieniem klastra pracy awaryjnej (Failover Cluster), zwraca listę węzłów, w których to wystąpienie zostało zdefiniowane. Jeśli bieżące wystąpienie serwera nie jest wystąpieniem klastra trybu failover, zwraca pusty zestaw wierszy.

Gdy FailOver Cluster jest włączony, wystąpienie instancji SQL Server może być uruchamiane w dowolnym węźle klastra pracy awaryjnej, który jest wyznaczony jako część konfiguracji wystąpienia klastra trybu failover SQL Server (serwera wirtualnego).

With ClusterActiveNode as
(
SELECT SERVERPROPERTY('ComputerNamePhysicalNetBIOS') as NodeName, Cast('Active' as varchar(10)) as Active
),
ClusterNodes as
(
SELECT NodeName FROM sys.dm_os_cluster_nodes
)
Select b.nodename, isnull(active,'Passive') as NodeStatus from ClusterNodes as b left join ClusterActiveNode as a
on a.NodeName = b.nodename


Dariusz Brejnak

Od prawie trzydziestu lat jest pasjonatem informatyki, a zwłaszcza dziedzin dotyczących baz danych, hurtowni danych oraz ogólnie rozumianej tematyki BI. Jego druga pasja to fotografia http://dariuszbrejnak.pl