Categories: Citrix

Recevoir un alerte si un ou plusieurs serveurs Citrix ne sont pas Registered

Tous les admins d’un infra Citrix qu’elle soit XenApp et/ou XenDesktop comprendront l’intérêt de suivre l’état de ces serveurs en temps réel. Par défaut, un serveur Citrix peut avoir plusieurs états qui traduisent son bon fonctionnement ou tout du moins sa capacité à communiquer avec les Delivery Controllers.

Cet état peut-être :

  • Unregistered : votre serveur a un problème ou est éteint (si le Unregistered est associé à PowerState Off – dans ce second cas, ce n’est donc pas un problème) ;
  • Initializing : état transitoire temporaire qui se produit généralement lors du (re)démarrage du serveur ;
  • AgentError : le message est clair – le Delivery Controller et le serveur ne peuvent pas communiquer à cause d’un problème avec l’agent VDA ;
  • Registered : c’est l’état de fonctionnement normal qui indique que l’agent VDA de votre serveur fonctionne normalement et qu’il n’y a aucun problème de communication avec le Delivery Controller.

D’un manière générale, on va dire que dès qu’un serveur n’est PAS dans un état Registered cela constitue un problème et les équipes IT doivent être prévenues. Ce contrôle peut être réalisé avec le script PowerShell suivant :

# Calling the Citrix SDK CmdLets
Add-PSSnapin Citrix*
# Getting only the Production Servers
$timestamp = $(get-date -f yyyy-MM-dd_HH-mm)
$prod_servers = Get-BrokerMachine -CatalogName "My_Production_Catalog"
foreach ($server in $prod_servers)
{
# Only matter if the server are ON (otherwise they are OFF and it's normal)
if (($server.RegistrationState -ne "Registered") -and ($server.PowerState -eq "On"))
{
$servername = $server.DNSName
# If server is not in Regisetered Status - Probably problems - Sending email
Send-MailMessage –From monitoring-ctx@company.com –To support-it@company.com -Subject "[CTX] - MON-CTX - Server problem $servername." –Body "A server is currently encountering some troubles. `nPlease review the server: $servername. This server appears to not being in Registered state ($timestamp)." -SmtpServer smtp.company.com -port 587
}
}

Ce script vous permet donc de récupérer la liste des serveurs d’un Machine Catalog précis puis de vérifier l’état de chaque serveur. Si l’état des serveurs qui sont allumés (PowerState égal à On) ne sont pas dans un état Registered alors on envoie un alerte email à l’équipe IT.

Là encore, ce script sera plus utile s’il est planifié avec le Task Scheduler de Windows.

Share
Published by
thibault

Recent Posts

Où placer un kit plug and play pour une production solaire optimale ?

Le lieu où installer un kit plug and play est essentiel pour garantir une production…

2 jours ago

Monocristallin ou polycristallin : quel type de panneau solaire choisir ?

Vous souhaitez installer de panneaux solaires, mais vous hésitez entre le monocristallin et le polycristallin…

2 jours ago

Adieu à l’Écran Bleu : Microsoft Réinvente l’Expérience Utilisateur après 40 Ans

Adieu à l'Écran Bleu : Microsoft Réinvente l'Expérience Utilisateur après 40 Ans L'écran bleu, symbole…

3 jours ago

Sortir du cloud Azure : L’Europe se tourne-t-elle vers OVH ?

Sortir du cloud Azure : L'Europe se tourne-t-elle vers OVH ? Sortir du cloud Azure…

4 jours ago

OneDrive : Quand Microsoft Verrouille un Compte, 30 Ans de Fichiers Perdus

OneDrive : Quand Microsoft Verrouille un Compte, 30 Ans de Fichiers Personnels Perdus OneDrive, le…

5 jours ago

Télétravail : La Société Générale Réduit à 1 Jour par Semaine, une Tendance IT ?

Télétravail : La Société Générale Réduit à 1 Jour par Semaine, une Tendance IT ?…

1 semaine ago