PowerShell 仅启动 运行 个主机实例
PowerShell to start only running Host Instances
我们有一个 windows 集群环境,其中包含集群 FTP 和 MQ 主机实例以及非集群主机实例。
我希望能够仅重新启动 运行 主机实例。我有一个启动所有主机实例的脚本,但我们不想在被动集群节点上启动已停止的实例。我有一个脚本来启动所有主机实例。
有谁知道如何只启动 运行 除了从特定主机实例列表中读取的脚本之外的其他程序?
继续@jcarreiro 解决方案,您必须获取主机实例,按 HostType = 1 和 ServiceState = 4 进行过滤。
主机类型的值为:1 - 进程中、2 - 隔离
ServiceState 的值是:1 - 已停止,2 - 开始挂起,3 - 停止挂起,4 - 运行、5 - 继续待定、6 - 暂停待定、7 - 已暂停、8 - 未知
[ARRAY]$hostInstances = Get-WmiObject MSBTS_HostInstance -namespace "root\MicrosoftBizTalkServer" -Filter "(HostType = 1 and ServiceState = 4)"
Write-Host ("Total Number of Host Instances running : "+$hostInstances.Count) -Fore Yellow
Write-Host “Re-starting Host instance” -Fore Yellow
foreach ($hostInstance in $hostInstances)
{
$hostInstance.Stop()
$hostInstance.Start()
}
Write-Host “Host instances are restarted successfully” -Fore Green
我们有一个 windows 集群环境,其中包含集群 FTP 和 MQ 主机实例以及非集群主机实例。
我希望能够仅重新启动 运行 主机实例。我有一个启动所有主机实例的脚本,但我们不想在被动集群节点上启动已停止的实例。我有一个脚本来启动所有主机实例。
有谁知道如何只启动 运行 除了从特定主机实例列表中读取的脚本之外的其他程序?
继续@jcarreiro 解决方案,您必须获取主机实例,按 HostType = 1 和 ServiceState = 4 进行过滤。
主机类型的值为:1 - 进程中、2 - 隔离
ServiceState 的值是:1 - 已停止,2 - 开始挂起,3 - 停止挂起,4 - 运行、5 - 继续待定、6 - 暂停待定、7 - 已暂停、8 - 未知
[ARRAY]$hostInstances = Get-WmiObject MSBTS_HostInstance -namespace "root\MicrosoftBizTalkServer" -Filter "(HostType = 1 and ServiceState = 4)"
Write-Host ("Total Number of Host Instances running : "+$hostInstances.Count) -Fore Yellow
Write-Host “Re-starting Host instance” -Fore Yellow
foreach ($hostInstance in $hostInstances)
{
$hostInstance.Stop()
$hostInstance.Start()
}
Write-Host “Host instances are restarted successfully” -Fore Green