2017-10-02 5 views
0

Nous disposons d'un environnement Windows en cluster avec des instances d'hôte FTP et MQ en cluster et des instances hôtes non groupées.PowerShell ne démarre que les instances hôtes

Je veux être en mesure de redémarrer les instances d'hôte en cours d'exécution uniquement. J'ai un script pour démarrer toutes les instances de l'hôte mais nous ne voulons pas démarrer les instances arrêtées sur le nœud de cluster passif. J'ai un script pour démarrer toutes les instances de l'hôte.

Quelqu'un a-t-il des idées pour ne commencer à lancer que celles qui sont lues à partir d'une liste d'instances d'hôtes spécifiques?

+0

Pourriez-vous poster ce que vous avez déjà? –

+0

J'ai celui-ci je crois que je suis arrivé ici. Il fonctionne très bien sur mon environnement BT2013 non clusterisé. Voir ci-dessous commentaire – jcarreiro

+1

#restart instances d'accueil [MATRICE] $ hostInstances = get-wmiobject MSBTS_HostInstance -nameSpace "root \ MicrosoftBizTalkServer" -Filter "(HostType = 1)" write-host ("Nombre total d'instance hôte:" + $ hostInstances.Count) -Fore Yellow Write-Host « Re-démarrage instance hôte » -Fore jaune foreach (de hostInstance de $ dans hostInstances $) { hostInstance.Stop $() hostInstance.Start $() } Write-Host "Les instances hôtes sont redémarrées avec succès" -Fore Green – jcarreiro

Répondre

1

continue avec la solution de @jcarreiro, vous devez obtenir les instances de l'hôte, filtrage par HostType = 1 et SERVICESTATE = 4.

Les valeurs de type hôte sont: 1 - En processus, 2 - isolé

Les valeurs de SERVICESTATE sont: 1 - Arrêté, 2 - Démarrage en attente, 3 - Arrêter l'attente, 4 - Exécution, 5 - Poursuivre l'attente, 6 - Pause en attente, 7 - Mise en veille, 8 - Inconnu

[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 
+0

Merci beaucoup. – jcarreiro