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

16

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

Exceed : Problème de Seamless

Récemment nous avons rencontré un problème de Seamless avec l’application Exceed (dans notre cas la version 14.0 et sur des environnements XenApp 6.5 et 7.6), l’application Exceed (process exceed.exe) passait en mode fenêtré sans raison et action particulière des utilisateurs, une fois l’application en mode fenêtré il n’était plus possible de repasser en mode Seamless. Afin de reproduire le problème nous avions publié le process Exceed et joué avec la combinaison de touche SHIFT+F2 (qui permet de passer du mode Seamless vers le mode fenêtré et vice-versa)

 

Lors du lancement de l’application Exceed est bien en Seamless


Une fois le passage en mode fenêtré, il est impossible de repasser en Seamless


Afin de résoudre cette problématique nous avons du mettre en place une policy forçant le « Maximum allowed color depth » à 16 bits  » sur le silo hébergeant l’application Exceed.


 
Une fois le « Maximum allowed color depth » forcé en 16 bits le process Exceed.exe repasse bien en mode Seamless sans problème

 

0

Error Studio : Server.fqdn cannot be added to this Catalog as it has the wrong machine type

Pour bien terminer l’année 2016 nous avons rencontré une erreur lors de l’ajout d’un host linux dans un Catalog XenApp 7.12

Server.fqdn cannot be added to this Catalog as it has the wrong machine type

 

elle se termine bien l’année 2016 🙂



Côté Powershell on n’a pas retrouvé le host en question (via un Get-BrokerMachine), par contre dans la base de donnée nous avons constaté que ce dernier était présent via son nom dns et son SID dans les tables [chb_State].[WorkerNames] et [chb_Config].[WorkerIndex].

 

Supprimez la ligne contenant le DNSName posant problème

 

Supprimez la ligne contenant le SID posant problème



Une fois les entrées SID et DnsName supprimées nous avons pu rajouter le Host dans le Catalog.

 


Ça fonctionne mieux après notre nettoyage.

 

Une fois le bureau Linux publié ça donne ça 😉 .

 

Tags: , ,
8

Test : ControlUp Logon Simulator

Toujours dans la série des tools gratuits, dans ce billet nous allons vous présentez « ControlUp Logon Simulator« . Comme vous l’avez deviné (pour ceux qui connaissent ControlUp, pour les autres c’est l’occasion de faire connaissance avec nos amis de ControlUp), ControlUp Logon Simulator vient tout droit de chez… ControlUp 🙂 .

ControlUp Logon Simulator permet de simuler la connexion (XenApp/XenDesktop) d’un utilisateur sur une application publiée (ou un dekstop), la connexion va du Netscaler/StoreFront au lancement de l’application.

 

He oui ça gère même une connexion via un Netscaler 😉

 

Téléchargez ControlUp Logon Simulator (dans notre cas la v1.3.0)

Les prérequis :

ControlUp Logon Simulator

  • Microsoft Windows 7  ( nous avons testé avec du W2K8 R2 et W2K12)
  • Ne pas être admin local (dans la session ou vous souhaitez lancer ControlUp Logon Simulator)
  • .Net Framework 4.6.1
  • Citrix Receiver 4.x

StoreFront/XenApp/XenDesktop

  • Citrix Storefront 2.0 minimum
  • Citrix XenApp 6.5, XenDesktop/XenApp 7.x 

L’installation est simple et se résume en trois étapes :

Cliquez sur le bouton Next



Cliquez sur le bouton Next



Cliquez sur le bouton Close

 

Reste à lancer ControlUp Logon Simulator et à le configurer (montre en main il faut 2/3 mn).

Au passage vous pouvez aussi lancer ControlUp Logon Simulator en ligne de commande via la commande (c’est un exemple) : controluplogonsim.exe /noeula /s /config=c:\YourFolder\settings.xml  (le fichier .xml est à créer au préalable via la GUI en enregistrant votre configuration).

 


C
onfigurez ControlUp Logon Simulator
Dans notre cas nous sommes passés directement sur un StoreFront (3.5), cependant ControlUp Logon Simulator gère aussi les tests via un Netscaler.

 


Et voila 😉



Vous pouvez avoir le détail de chaque test via l’onglet Summary, en cliquant sur un test (oui on a un test en failed 😉 )

 

Si vous souhaitez remonter des alertes via votre outil de monitoring favori comme par exemple ControlUp (via les Triggers d’incident de ControlUp, voir page 10 de l’admin guide) ou Zabbix 🙂 , c’est tout à fait possible vu que ControlUp Logon Simulator  génère des events dans le journal application.

 

 

En conclusion que du bonheur 😉 .

0

XA 6.5 : sessions déconnectées

Récemment on nous a remonté un problème de sessions déconnectées sur des serveurs XA 6.5 R06 US, en regardant sur l’AppCenter de la ferme en question on constate bien les sessions déconnectées.

 

02Une série de sessions déconnectées, observer l’heure du logon (ça donne direct une bonne info)

 

En regardant sur un des serveurs nous avons remarqué que les sessions déconnectées n’étaient pas présentes dans le gestionnaire de tâches et pas d’event côté eventlog)

 

03La bonne nouvelle c’est que tout le monde n’est pas impacté

 

Dans un premier temps nous avons pensé à une fuite mémoire (à tort), et dans pareil cas rien ne vaut un RAMMap.

 

04Ok là tout devient plus clair, toutes les sessions déconnectées ont trois process de lancés (LogonUI.exe, Winlogon.exe et crss.exe.exe)

 

Direction Process Explorer afin d’en savoir plus, en observant un process Winlogon.exe d’une session déconnectée nous avons remarqué via l’onglet Thread que la Dll twi3.dll avait un statut « Wait:UserRequest ».

 

05On touche au but la

 

Un coup de google plus loin nous tombons sur la CTX138197, le point 7 nous explique la cause du problème :
 

Sessions running on single-monitor, aero-enabled Windows client devices can disconnect unexpectedly. The issue can occur when a preview, as part of the Dynamic Window Preview feature, is sent to the client; at that time, a twi3.dll thread can terminate the Winlogon.exe process, which in turn causes the session to disconnect.
To resolve this issue in its entirety, you must install both a XenApp and a Receiver hotfix that contains Fix #LA2858.

 
Après une mise à jour des clients receiver (ils étaient en 3.4) le problème n’est plus réapparu.

 

 

 

6

Test de Remote Display Analyzer (RDAnalyzer)

Dans ce billet nous allons vous présenter un outil que nous utilisons depuis quelques semaines : « Remote Display Analyzer » (by Bram Wolfs et Barry Schiffer). Remote Display Analyzer permet d’analyser et de modifier rapidement les paramètres d’affichage au sein d’une session HDX (et depuis peu RDP) afin de pouvoir comparer le rendu des différents modes d’affichage (idéal pour obtenir une meilleure expérience utilisateur ainsi que lors de séances de troubleshooting). Les modifications effectuées ont un impact temporaire (les paramètres issus des stratégies XenApp reviennent après un logoff/logon).

 

rda_001

 

Première bonne nouvelle, il n’y a pas d’installation, deux binaires sont livrés, un pour HDX et un pour RDS. Deuxième bonne nouvelle une version gratuite est proposée (cette dernière permet l’affichage des paramètres d’affichage en cours), si vous souhaitez passer à la version ++ il faudra passer par la case « DONATE » (honnêtement c’est l’histoire de quelques cafés 😉 ). Le seul prérequis est d’être admin local du serveur sur lequel vous exécutez Remote Display Analyzer (merci à Max pour la remarque).

 

Remote Display Analyzer for HDX :

 

rda_01En version free
Attention en XA 7.11 L’active Encoder ne s’affiche pas (c’est en cours de correction 😉 )

 

rda_02En version ++  ça devient vraiment très intéressant car on a accès aux options permettant de modifier en live les principales options d’affichage d’une session HDX (Mode d’affichage, nombre de frames max, codec de compression)

 

rda_02_01
La partie display

 

rda_02_02
La partie codec pour la compression

 

Remote Display Analyzer for RDP :

 

rda_03_rdsEn version free

 

rda_04_rdsEn version ++

 

De notre point de vue Remote Display Analyzer constitue un excellent outil pour le troubelshooting (portant sur des problématiques d’affichage), en outre il  permet de tester rapidement les différents modes d’affichage possibles pour comparer par exemple l’expérience utilisateur en fonction de vos fermes XenApp,  du type d’accès etc… (bien sûr ce ne sont que des exemples d’autre cas d’usage sont possibles).

Tags: , , ,
8

XenApp 7x : quand c’est « By Design »

Récemment nous avons testé l’API Odata afin de pouvoir interroger la base de monitoring sans passer par des requêtes SQL,  le but étant de faire un export afin d’alimenter un « puits de données »

Dans un premier temps si vous souhaitez en savoir plus sur l’API Odata dans XenApp 7x,  nous vous recommandons la lecture des liens ci-dessous :

Un exemple en Powershell pour consulter la liste des applications publiées d’une ferme XenApp 7x (à exécuter à partir d’un DDC ou remplacer Localhost par le Hostname d’un de vos DDC) :

$AppsNamedata = Invoke-RestMethod -UseDefaultCredentials -URI "http://localhost/Citrix/Monitor/Odata/v2/Data/Applications"
$AppsName = $AppsNamedata.content.properties
$AppsName|Select Name



Dans notre cas et sur la ferme en question nous n’arrivions pas à obtenir la liste des applications publiées.

 

apps_etsComme nous avions testé l’API Odata sur la partie Session et Users avec succès, on comprend vite que la partie Application va poser problème.



En regardant dans la base de Monitoring nous avons constaté que la table Monitor.Application était vide (via un  » Select Top 1000 Rows » sur la Table « Monitor.Application » de votre Base de monitoring).

 

apps_ets_sqlOn comprend mieux pourquoi en passant par « …..Odata/v2/Data/Applications » nous n’obtenions aucun retour



Dans Director lors d’une recherche sur un utilisateur nous obtenions bien la liste des applications lancées au sein des divers sessions.

Durant notre troubleshooting nous avions constaté sur d’autres fermes XenApp (7.6 LTSR CU1/CU2) et XenApp 7.11) que la Table Monitor.Application sur leurs bases de monitoring respectives était bien peuplée.

Après de nombreux check check SQL, XenApp et traces Wireshark nous avons constaté que les serveurs de Licence Citrix étaient différents entre les fermes qui remontaient bien les applications dans la table Monitor.Application et les fermes qui ne remontaient aucune information dans la table Monitor.Application.

En fait le problème n’est pas un problème mais plutôt un truc du style « C’est by design », en version Platinum les informations concernant les applications sont bien remontées dans la table Monitor.Application et en version Enterprise rien n’est remontées côté Applications.

 

apps_pltAvec des licences Platinum on se sent tout de suite plus à l’aise 🙂

 

apps_plt_sqlLa base de monitoring ou pointe une de nos fermes en Platinum

 

Durant nos tests (sur une ferme XenApp 7.6 LTSR US) nous avons constaté que toutes les informations étaient facilement consultables et exportables sauf la partie Application  qui est contenue dans « http://localhost/Citrix/Monitor/Odata/v2/Data/Applications »



Après le coup de la rétention de 7 jours dans Director (en licence Enterprise), on a le coup de la Table Monitor.Application vide en licence Enterprise 🙂 .

pasdesousÇa va être juste pour passer en Platinum 🙂

Tags: , ,
0

CUGC Français

On entend souvent dire que la  communauté Citrix Française organise peu d’événements (au passage un grand bravo à ILKI qui depuis des années organise chaque année les Rencontres des virtualisations avec des speakers mondialement reconnus), et bien en voici un supplémentaire : The French Citrix User Group Community.

 

cugc

 

Le premier CUGC est prévu pour le Mercredi 9 novembre 2016 à 18:00 au « Le Réservoir » (16 rue de la forge Royale 75011 Paris)

Pour vous inscrire c’est par ici, venez nombreux ça sera une occasion supplémentaire de se réunir, échanger, partager et de boire un verre d’eau avec de la mousse dessus 🙂 .

 

cugc2
Tout est dit 😉

Tags:
0

Erreur désinstallation VDA

Lors d’une désinstallation d’un VDA 7.6.300 nous avons rencontré l’erreur ci-dessous :

Removal of MSI Product ‘CitrixHDXWMIProvider-x64.msi’ ………………….. failed with code ‘InstallFailure’ (1603).

 

vda_error_wmi01En ce moment c’est une constante le 1603 🙂

Le fichier de log et les events du serveur ne donnant rien, nous avons extrait le msi CitrixHDXWMIProvider-x64.msi puis tenté une installation à la mano.

 

vda_error_wmi02On sy attendait, mais ce qui nous intéresse ce sont les logs du msi

 

Direction le fichier de log (dans notre cas : C:\Users\UserName\Local Settings\Temp\Number\Citrix\XenDesktop Installer\MSI Log Files)

 

MSI (c) (94:44) [16:36:42:043]: Windows Installer installed the product. Product Name: Citrix HDX WMI Provider – x64 7.6.300.7024. Product Version: 7.6.300.7024. Product Language: 1036. Manufacturer: Citrix Systems, Inc.. Installation success or error status: 1603

Property(N): Rollback_Uninstall_MOFRegister.A447AE13_47F3_442C_8854_837BF7E37D1A = c:\Program Files (x86)\Citrix\System32\citrix.hdx.wmi.provider.mof
Property(N): MOFUnregister.A447AE13_47F3_442C_8854_837BF7E37D1A = c:\Program Files (x86)\Citrix\System32\citrix.hdx.wmi.provider_delete.mof

 

La lecture du fichier de log nous apporte une information intéressante concernant la suppression des fichiers .mof, donc direction une console PowerShell afin de vérifier ce qui reste de WMI côté Citrix via la commande : gwmi -Namespace root -class __Namespace -Filter « name = ‘citrix’

 

vda_error_wmi03

 

Nous allons y aller à la brute en supprimant le Namespace « Citrix » via la commande :  gwmi -Namespace root -class __Namespace -Filter « name = ‘citrix’| Remove-WmiObject

Une fois le Namespace Citrix supprimé, l’installation du msi CitrixHDXWMIProvider-x64.msi se termine sans erreur.


vda_error_wmi04Ca c’est bon, il ne reste plus qu’a relancer la suppression du VDA 7.6300 😉

 

Tags: , ,