Rechercher une application dans plusieurs fermes XenApp

Si vous souhaitez connaitre la/les fermes publiant  une application  (par exemple word, excel ou bien une application comprenant une chaîne de caractère “TEST” 😉 ) le script contenu dans ce billet devrait vous intéresser.

Les pré-requis sont que les serveurs entrés dans la variable $Serveurs aient le PowerShell SDK d’installer (XenApp 5, XenApp 6x) et que le port TCP 2513 soit ouvert entre le serveur exécutant le script et le(s) serveurs ayant  le sdk installé (bien sur on ne peut attaquer une ferme XenApp 6x à partir d’un serveur XenApp 5 et vice-versa 😉  .

Modifier la variable $Serveurs (ligne trois du script) la liste des serveurs (un par ferme XenApp) permettant de se connecter avec les différentes fermes XenApp.


Apps_Search_All_Farm

23 Applications publiées réparties sur trois fermes XenApp 6.5 ayant dans leur  browsername la chaîne de caractère “TEST”  😉

 Download_2SearchAppFarms.ps1

Post to Twitter

Installation silencieuse du SDK powershell XenApp 6.5

Sur un de nos serveurs d’infra XenApp 6.5 nous avons eu besoin d’installer le Citrix.GroupPolicy.Commands (afin de pouvoir importer/exporter des policies, voir la CTX128625 pour de plus amples informations) avec en pré-requis  le SDK Powershell XenApp  6.5 (au passage si vous chercher un SDK pour XenApp : SDK XenApp ).

Nous avons écrit un script permettant d’installer en unattended  le SDK powershell XenApp 6.5 et le Citrix.GroupPolicy.Commands.

Au préalable télécharger le  SDK Powershell XenApp  6.5 puis extraire son contenu (via 7-Zip par exemple), puis télécharger le Citrix.GroupPolicy.Commands et le copier dans le dossier setup du SDK.

Renseignez la variable $msiPath (mettre le chemin  menant au dossier setup du SDK), puis exécuter le script sur le serveur en question.

$msiPath = "\\PATH_SDK\Setup\"
 $msi = @(($msipath+"Citrix.Common.Commands.Install_x64.msi"), ($msipath+"Citrix.XenApp.Commands.Client.Install_x64.msi"), ($msipath+"Citrix.XenApp.Server.Sdk_x64.msi"), ($msipath+"CitrixGroupPolicyManagement_x64.msi"))

foreach($_ in $msi)
 {Start-Process -FilePath msiexec -ArgumentList /i, $_, /qb- -Wait
 Write-Host "$msi"
 }

import-module ($MsiPath+"Citrix.GroupPolicy.Commands")

Il est aussi possible de passer par un invoke-command à la place du Start-Process pour une installation en remote, le /qb- c’est juste qu’on aime bien voir les progressbar lors des installations 🙂 .


Post to Twitter

Supprimer des serveurs de plusieurs applications publiées via SetProp.exe

MISE A JOUR : 11/06/09

Si en validant votre ligne de commande vous obtenez le message suivant :

SetpropError

Vérifier que dans votre ligne de commande le nom du Serveur respecte bien la Case

Exemple :
“setprop /Applications/Notepad /ds Serveur1” au lieu de “setprop /Applications/Notepad /de SERVEUR1”

———————————————————————————————


Suite au billet sur comment ajouter des serveurs à plusieurs applications publiées via Addserver.exe.
Aujourd’hui nous allons traiter le problème à l’inverse.
Comment supprimer plusieurs serveurs de plusieurs applications publiées en une seul passe, via la commande Setprop.exe du SDK (dispo ici)

Bien que la commande Apputil.exe (commande native à XenApp), permette de supprimer (notamment) un serveur d’une application publiée, la commande SetProp.exe (du SDK) permet aussi de le faire à la différence de la commande Apputil.exe, SetProp.exe prend le DN de l’appli en argument (ce que ne fait pas Apputils, qui lui utilise l’IDApp).

Exemple d’un Apputil.exe /q (permet de lister toute les applis d’une ferme)Apputil

L’IDApp n’est pas vraiment pratique vous l’avouerez :)

Le script est dans le même style que celui utilisant Addserver.exe (toujours 2 fichiers .txt, un pour les serveurs et l’autre pour les Applis.

Imaginons que vous souhaitez supprimer des serveurs de plusieurs applications publiées en même temps (afin d’éviter de le faire appli par appli via l’AMC)

Exemple : On souhaite supprimer les serveur1, serveur2, et serveur3, des applications publiées Word, Excel et Powerpoint.

Le script vbs (joint dans ce billet) vous permet de le faire en une seule passe (au préalable il faut renseigner deux fichiers texte, un pour la liste des applis et l’autre pour la liste des serveurs.

Exemple de fichier :

  • Fichier Applis.txt :

WORD
EXCEL
POWERPOINT

  • Fichier Serveurs.txt :

Serveur1
Serveur2
Serveur3

Le script est joint au billet.

L’avantage de ce script est identique à celui du billet sur Addserver.exe, c’est plus rapide que de passer par l’AMC et le risque d’erreur est moindre ;)

Ne pas oublier d’installer le SDK et de le mettre dans le PATH (sinon modifier le script afin de faire votre Call dans le bon chemin :)

Post to Twitter

Ajouter des serveurs à plusieurs applications publiées via Addserver.exe

Vous trouverez dans ce billet un script vbs vous permettant de rajouter un ou plusieurs serveurs à plusieurs applications publiées en une seule manip.

Vous trouverez dans ce billet un script vbs vous permettant de rajouter un ou plusieurs serveurs à plusieurs applications publiées en une seule manip.
Continue reading “Ajouter des serveurs à plusieurs applications publiées via Addserver.exe”

Post to Twitter

Modifier en ligne de commande certaines propriétés d’une application publiée

Nativement XenApp ne permet pas de modifier en ligne de commande les propriétésd’une application publiée (sauf pour Apputils, qui lui est nativement installé, mais ne permet sur une application publiée de rajouter ou supprimer un serveur, de programmer l’installation et la désinstalation de pack via Installation Manager, et d’afficher la liste des applications publiées)

Le SDK de XenApp fourni un outil permettant en ligne de commande de modifier lespropriétés d’une application publiée.

Le tools se nomme SetProp.exe.

Le SDK est disponible ici (j’ai testé Setprop avec le SDK 4.5)

Une fois le SDK installé, vous trouverez Setprop dans cette arborescence :

C:\Program Files\Citrix\MPSSDK\vc\setprop\ (chemin d’une installation par défaut)

L’utilisation de SetProp est toute simple :

Si vous souhaitez par exemple changer la ligne de commande d’une application publiéenommée Word, la commande sera la suivante :

setprop “\Applications\Word” /cl “C:\Program Files\Microsoft Office\Office10\WINWORD.EXE”

La liste des options possibles de Setprop :

/as ServerName CmdLine WorkDir – Add a server /au DomainName UserName X – Add a user. X is D, A, or N followed by U, or G /ds ServerName – Delete a server /du DomainName UserName X – Delete a user. X is D, A, or N followed by U, or G

/de Description – Set application description /el EncryptionLevel – Set application default encryption level /an AppName – Set application display name /ic FileName Index – Setapplication icon from given file /cl CmdLine – Set default command line /wd WorkDir – Set default working directory /dt Flags – Set desktop integrate flags /mf Attributes – Set MetaFrame attributes /pn Attributes – Set Program Neighborhood attributes /pf FolderName – Set Program Neighborhood folder /so SoundType – Set default sound type /wc WindowColor – Set default window color /wh WindowHeight – Set window height /ww WindowWidth – Set window width /ws WindowScale – Set window scale /wt WindowType – Set window type

Une fois scripté, SetProp permet de modifier à la volé plusieurs applications publiés sans avoir a ouvrir l’AMC

Post to Twitter