Powershell Archive

0

XenApp_LoadMonitor pour XenApp 7.x

Mise à jour de XenApp_LoadMonitor afin de pouvoir superviser les silos d’une ferme XenApp 7.x.

Pour ceux (et celles) qui ne connaissent pas (encore) XenApp_LoadMonitor nous vous invitons à lire le billet « Supervision de silo serveurs« ,

Une modification a été apportée sur le fichier justgage.1.0.1.min.js afin que les gauges passent en orange à partir de 50 % de load.

 

var percentColors = [« #a9d70b », »#a9d70b », »#EEA73D », « #ff0000 »];

 


Les serveurs en maintenance sont exclus du calcul de charge des silos.

 

Pour rappel le détail de chaque silo s’obtient en cliquant sur le silo correspondant.

 

XenApp_LoadMonitor_7x.rar

 

 

2

XenApp_Usr7x V1.15

Après les œufs au chocolat nous avons opté pour quelque chose de moins calorifique…… une mise à jour de XenApp_Usr7x (qui passe en 1.15) afin de laisser notre estomac tranquille :), la liste des ajouts et corrections sont listés ci-dessous :

 

  • Possibilité de rajouter plusieurs DDC (un DDC par ligne) via le menu « Tools-Modify DDC » afin de pouvoir passer d’une ferme à une autre sans relancer XenApp_Usr7x (afin de prendre en compte la mise à jour des DDC il faut aller dans le Menu « Tools-Refresh DDC »)
  • Détection de l’OS sur lequel est lancé XenApp_Usr7x (Windows 2012 mini)
  • Les actions d’activation/désactivation d’application et de mise en maintenance de serveur sont désormais enregistrées dans la base de loging
  • Le type de licence Citrix et leur nombre sont disponibles dans le formulaire « Farm Info »
  • Un test de ping est réalisé sur chaque serveur appeler via le formulaire « Server », le résultat du ping est affiché dans le formulaire « Server »
  • La liste des utilisateurs connectés sur un serveur est disponible dans le formulaire « Server »
  • Export des Applications et Serveurs au format csv via le menu « Tools-Export »
    – L’export des applications comprend les items :  ApplicationName, PublishedName, BrowserName, Name, AdminFolderName, ClientFolder, CommandLineExecutable, CommandLineArguments, Description, Enabled, Visible
    – L’export des serveurs comprend les items : DNSName, Name, MachineName, DesktopGroupName, CatalogName, FunctionalLevel, IPAddress , OSType, RegistrationState, ZoneName

 

Le test de « ping » a un timeout de 500 ms (logiquement en ça passe sinon y a un blem 😉 )



Un clic sur le bouton « Licence Inventory » permettra l’affichage des licences présentes sur le serveur de licence Citrix ainsi que leur consommation


Désormais vous pouvez via le menu « Tools-Modify DDC » rajouter autant de DDC (un par ligne) que vous le souhaitez (un DDC par ferme par exemple afin de passer d’une ferme à une autre rapidement), une fois les DDC rentrés il faudra faire un « Refresh DDC » afin qu’ils soient pris en compte dans XenApp_Usr7x.


 

Certains admins vont être content, vous pouvez désormais exporter rapidement et simplement vos applications et serveurs d’une ferme (et de plusieurs si vous avez rentré plusieurs DDC 😉 ) au format CSV.

 

 

XenApp_Usr_7X .rar

 

Le billet original est par ici.

 

A venir :

  • Ajout de l’affichage cpu/mémoire/disque sur les serveurs et au niveau des Delivery Group (afin de permettre rapidement de comparer le silo sur ces éléments)
  • Ajout de l’affichage du détail des valeurs du load evaluator du serveur dans le formulaire « Server »
  • Liste des utilisateurs sur les Delivery Group
  • Liste de process lancés sur un serveur (et possibilité de les killer)
  • Manuel d’utilisation au format pdf (english version only)
2

XenApp_Usr7x V1.1

Après trois semaines d’existence, 112 download et suite à vos nombreux retours (merci pour vos remarques et suggestions), nous avons mis à jour XenApp_Usr_7x

 

Les ajouts sont listés ci-dessous :

  • Possibilité de copier dans le clipboard les informations de Session, Serveur, Machine Catalog, Delivery Group, Application via le bouton Clipboard situé en bas à gauche des formulaires concernés.
  • Lorsqu’un serveur est registered dans le formulaire Serveur, le champ statut est vert (orange lorsque le serveur est unregistered)
  • Possibilité d’afficher les propriétés d’un serveur à partir d’un Machine Catalog ou d’un Delivery Group Mise en maintenance d’un serveur à partir du formulaire Serveur
  • Possibilité de désactiver/Activer une application à partir du formulaire Application Surbrillance en bleu des champs cliquables lors du passage de la souris
  • Gpo(s)computer disponibles dans le formulaire Serveur
  • Compteur des sessions trouvées lors de la recherche

 

Ci-dessous quelques screenshots des principaux ajouts.

 

Formulaire principal

 

Formulaire Machine(serveur)

 

Formulaire Application

 

Le billet original est par ici.

 



XenApp_Usr_7X .rar

12

XenApp_Usr7x


MAJ : V1.15 – 17/04/2017

  • Possibilité de rajouter plusieurs DDC (un DDC par ligne) via le menu « Tools-Modify DDC » afin de pouvoir passer d’une ferme à une autre sans relancer XenApp_Usr7x (afin de prendre en compte la mise à jour des DDC il faut aller dans le Menu « Tools-Refresh DDC »)
  • Détection de l’OS sur lequel est lancé XenApp_Usr7x (Windows 2012 mini)
  • Les actions d’activation/désactivation d’application et de mise en maintenance de serveur sont désormais enregistrées dans la base de loging
  • Le type de licence Citrix et leur nombre sont disponibles dans le formulaire « Farm Info »
  • Un test de ping est réalisé sur chaque serveur appeler via le formulaire « Server », le résultat du ping est affiché dans le formulaire « Server »
  • La liste des utilisateurs connectés sur un serveur est disponible dans le formulaire « Server »
  • Export des Applications et Serveurs au format csv via le menu « Tools-Export »
    – L’export des applications comprend les items :  ApplicationName, PublishedName, BrowserName, Name, AdminFolderName, ClientFolder, CommandLineExecutable, CommandLineArguments, Description, Enabled, Visible
    – L’export des serveurs comprend les items : DNSName, Name, MachineName, DesktopGroupName, CatalogName, FunctionalLevel, IPAddress , OSType, RegistrationState, ZoneName

 


Et voilà ça faisait longtemps que nous souhaitions porter XenApp_Usr sur XenApp 7x , pressés par nos collègues de l’admin aujourd’hui c’est chose faite :  XenApp 7x est enfin UP.

Pour rappel nos XenApp_Usr repose intégralement sur du PowerShell (hé oui même la partie graphique, on sait ça c’est pas bien lol).

Le but de XenApp_Usr7x est de pouvoir rapidement retrouver la/les session(s) d’un utilisateur au sein d’une ferme XenApp, mais on ne s’arrête pas là puisque nous avons intégré aussi la recherche d’applications, serveurs, Delivery Group et Machine Catalog.

Lorsque qu’une session est sélectionnée plusieurs informations sont disponibles (dont notamment l’idle time de la session 😉 ).

  • Start time
  • Establishment Time
  • Establishment Duration
  • Idle Time
  • Connected Via IP
  • Connected Via IP
  • Client Adress
  • Client Platform
  • Client Name
  • Receiver Name
  • Receiver IP Address
  • Session Type
  • Application
  • Delivery Group du serveur hébergeant la session
  • Machine Catalog du serveur hébergeant la session
  • Process de la session
  • Gpo(s) de la session

Les actions possibles sur une session sont l’envoi d’un message, le shadowing, le logoff de la session et le kill de process.

XenApp_Usr7x a été validé sur des fermes XenApp 7.6 et 7.12 (DDC en W2k12 et environnement mixte pour les broker machine – W2K8 R2 et W2K12)

Pré-requis :
XenApp_Usr7x peut-être exécuté à partir d’un DDC (W2K12) ou d’un serveur d’admin (W2K12) avec les snap-ins PowerShell XenApp/XenDesktop.

Lors du premier lancement à partir d’un serveur admin il vous faudra entrer un DDC de votre ferme dans le champ DDC puis cliquez sur le bouton Check DDC (le DDC est stocké en dur dans un fichier afin d’éviter de le ressaisir lors des prochains lancements dans C:\Users\username\AppData\Roaming\Ctxblog\XenAppUsr\XenAppUsr7x.txt).

 

Les zones en jaune sont cliquables 😉

Si vous souhaitez rechercher un serveur, une application, un Machine Catalog ou un Delivery Group allez dans le Menu Tools-Search Server/Apps/DG/MC.

Exemple sur la recherche d’un Delivery Group
Cliquez sur le DG souhaité

 


En prime vous avez même le load du DG 🙂

 


Exemple sur la recherche d’un serveur

 

Vos remarques et suggestions sont comme toujours les bienvenues ;).

 

XenApp_Usr7x.rar


MAJ : V1.1 – 03/03/2017

  • Possibilité de copier dans le clipboard les informations de Session, Serveur, Machine Catalog, Delivery Group, Application via le bouton Clipboard situé en bas à gauche des formulaires concernés.
  • Lorsqu’un serveur est registered dans le formulaire Serveur, le champ statut est vert (orange lorsque le serveur est unregistered)
  • Possibilité d’afficher les propriétés d’un serveur à partir d’un Machine Catalog ou d’un Delivery Group Mise en maintenance d’un serveur à partir du formulaire Serveur
  • Possibilité de désactiver/Activer une application à partir du formulaire Application Surbrillance en bleu des champs cliquables lors du passage de la souris
  • Gpo(s)computer disponibles dans le formulaire Serveur
  • Compteur des sessions trouvées lors de la recherche
0

Cacher toutes les applications désactivées d’une ferme XenApp 6.5

Histoire d’éviter de devoir renvoyer par mail, lync, telegram and co, nous partageons avec vous un tout petit (vraiment petit 🙂 ) oneliner permettant de cacher toutes les applications désactivées d’une ferme XenApp 6.5 qui ne sont pas cachées (pourquoi vous nous direz, parce que certains désactivent les applications et oublient de les cacher……)

get-xaapplication |?{$_.enabled -eq $False -and $_.HideWhenDisabled -eq $False}|%{set-xaapplication -browsername $_.browsername -HideWhenDisabled $True}

 

0

PowerShell : désactiver les abonnements utilisateur

Comme ce n’est pas vraiment documenté (voir pas du tout), on vous met la ligne de commande pour désactiver en PowerShell les abonnements utilisateur (Disable User Subscription) d’un magasin (Store) dans StoreFront.

Set-DSLockedDownStore  -SiteId « 1 » -VirtualPath « /Citrix/VotreStore » -IsLockedDown $True

Bon on vous l’avoue, c’est pour aussi l’avoir sous la main pour une prochaine fois 😉 .

0

Windows 2012/2012 R2 : Recréer le listener RDS

Fini le bon vieux temps où l’on pouvait recréer le listener RDP via une GUI. Sous Windows 2012/2012 R2 il faut désormais passer par la case registre.

Histoire de ne pas faire d’import de registre le jour J, on s’est fait une GUI via un script Powershell (he oui encore du winform 🙂 ) afin de pouvoir recréer un listener RDP sous un serveur Windows 2012/2012 R2 (pour l’instant seul Windows 2012/2012 R2 sont concernés).

Une fois lancé le script vous permet de connaitre l’état du listener RDP, son port et si ce dernier répond bien à un socket TCP.

 

RecreateRdpListenerVia un qwinsta nous avons l’état du listener RDP (et plus si vous avez d’autres listeners)
Cliquez sur le bouton « Recreate Rdp listener » pour récréer le listener RDP (un backup du listener est réalisé dans le répertoire d’exécution du script)

 

RecreateRdpListener1Un popup vous demande la confirmation de l’action

 

RecreateRdpListener2Un fois le listener recréé, vous obtenez un message de confirmation

 

 Download_2
RecreateRdpListener.rar

 

Si vous souhaitez passer par la case registre pour recréer un listener RDP 2012/2012R2 , la KB de dell « How to recreate or add an additional RDP Listener in Windows Server 2012 and 2012 R2 » vous aidera dans votre démarche.

0

Script : Supprimer les comptes non résolu dans XenApp

Comme vous le savez, lorsque vous supprimez des objets utilisateurs ou groupes de votre Active Directory ces derniers restent dans vos applications publiées et vous vous retrouvez avec des objets non résolus affichés comme ci-dessous.

 

DeleteAccAppsNotResolveUn peu de Monsieur Propre ?

 

Supprimer ces objets non résolus est on ne peut plus simple via PowerShell, un Get-XaApplication, une boucle et un remove-XaapplicationAccount et c’est fait 🙂 .

Bien sûr avant l’exécution du script vérifiez que votre DataStore est bien backuper 😉 .

Le script a été testé sur des fermes XenApp 6.5 (US et FR).

 

AppErrorResolveCptMême notre lab passe au Monsieur Propre 🙂

 

DeleteAccAppsNotResolve1
Une fois le script passé  les comptes non résolus ont bien disparus

 

Download_2CleanAppCptNotResolve.ps1

0

StoreFront 3.x erreur : Impossible de démarrer le bureau…….

Sur un cluster de StoreFront 3.0 (W2K12 US)  nous avons rencontré un problème de lancement d’applications et bureaux publiés  (ferme en XA 7.6 US) avec Internet Explorer (ver 9,10 et11), en effet cela fonctionnait sans problème avec Firefox et Chrome.

SF3Error1On va pas se réconcilier de si tôt avec IE

 


En regardant sur les Storefronts nous avons constaté les Event ID 0 et 28.


SF3Error2

 

Description: Failed to launch the resource ‘………………’ using the Citrix XML Service at address ‘http://VotreServeur/scripts/wpnbr.dll’. The XML service returned error: ‘not-trusted’.

 

SF3Error3

 

Description: The Citrix servers do not trust the server. This message was reported from the XML Service at address http://VotreServeur/scripts/wpnbr.dll [NFuseProtocol.TRequestAddress].


Ce qui nous a mis sur la piste est bien sur le « The Citrix servers do not trust the server », en effet en lancant un Get-BrokerSite sur un de nos Delivery Controller nous avons constaté que la valeur TrusRequestsSentToTheXmlServicePort était à False.


SF3Error4On vous l’accorde ça n’explique pas le fait que ça fonctionne avec d’autres navigateurs

 

Afin d’activer le TrustRequestSentToTheXmlServicePort il faut lancer la commande suivante sur un de vos Delivery Controller : Set-BrokerSite -TrustRequestSentToTheXmlServicePort $True

 

SF3Error5La commande Get-BrokerSite confirme bien que nous sommes en True en TrustRequestSentToTheXmlServicePort

 


SF3Error6
Et oui avant on pouvait setter l’approbation des requêtes XML en policy (exemple sur une ferme en XA 6.5)

 

2

XenApp_Gpupdate v1.1

Mise à jour de XenApp_Gpupdate (ver 1.1).

  • Ajout de la possibilité d’afficher la liste complète des serveurs membres de la ferme (via le bouton « Servers »)
  • Ajout de la possibilité de rechercher un serveur spécifique (via la coche « Search server »)
  • Retour du statut de la commande Gpupdate /force (indique si le process a bien été lancé sur le serveur et si ce dernier est bien fermé.), avec la durée d’exécution (duration) par serveur
  • Correction de bugs mineurs

 

XenApp_GpUpdate_V1.1


Download_2XenApp_Gpupdate.rar

 

Le billet original  sur XenApp_GpUpdate ici.