Un livre sur XenApp?

Banner

Un livre sur TSE ?

Banner
Articles
MFCOM & PowerShell PDF Print E-mail
User Rating: / 3
PoorBest 
Written by Flo   
Friday, 09 July 2010 15:18

powershell

 

 

 

Introduction au MFCOM avec PowerShell & CTP2

MFCOM & PowerShell

Le Framework de gestion Windows, PowerShell est capable de solliciter des objets MFCOM, ce Framework permet d’optimiser, de faciliter la gestion et l’automatisation des taches d’administration au sein d’environnements Windows / Citrix

La gestion des objets MFCOM permet ainsi de gérer et d’administrer vos fermes Citrix.

Installation de l’environnement

Pour commencer le scripting PowerShell, vous devez installer le Framework PowerShell au minimum sur un serveur 2003/Citrix Xenapp.

Lien de téléchargement Powershell


Afin de créer ou d’éditer vos script, je vous suggère d’utiliser l’outil PowerGUI, il facilite l’écriture des scripts et permet un débogage immédiat.
Lien de téléchargement PowerGui

Il existe un PowerPack Citrix avec des scripts de base facilitant la compréhension.
Lien de téléchargement du PowerPack Citrix

Il se peut que votre politique de sécurité vous empêche de tester les scripts via PowerGUI, il est possible de paramétrer cela dans une console PowerShell :



Vous voila maintenant opérationnel pour vos premiers pas dans le scripting PowerShell - MFCOM !

Utilisation de l'objet MFCOM

Attaquons nous maintenant au vif du sujet, l’intégration de l'objet MFCOM.
Pour cela, PowerShell dispose de la commande New-Object –COM qui comme son nom l’indique instancie des objets Com.

L'exemple suivant va nous montrer comment instancier l'objet et afficher le nom de la ferme Citrix:

$farm = new-Object -com "MetaframeCOM.MetaframeFarm"
$farm.Initialize(1)
$farm.FarmName




Poussons un peu plus loin et faisons la liste des connections en pré formatant le résultat:

	$farm = new-Object -com "MetaframeCOM.MetaframeFarm"
	$farm.Initialize(1)
	$farm.FarmName
	$farm.sessions | Format-Table UserName,AppName,SessionID



Maintenant, nous allons intégrer des conditions afin de mieux filtrer nos requêtes.

Par exemple, nous voulons la liste des clients dont la résolution des de 1024*768 :

	$farm = new-Object -com "MetaframeCOM.MetaframeFarm"
	$farm.Initialize(1)
	$farm.FarmName
	$farm.sessions | Where-Object { $_.ClientHRes -eq 1024 } |
 Format-Table UserName,ClientHRes



Si l’inverse est demandé, tout est possible :

	$farm = new-Object -com "MetaframeCOM.MetaframeFarm"
	$farm.Initialize(1)
	$farm.FarmName
	$farm.sessions | Where-Object { $_.ClientHRes -ne 1024 } | 
Format-Table UserName,ClientHRes



Nous allons maintenant insérer une interaction entre le script et l’utilisateur :

	$farm = new-Object -com "MetaframeCOM.MetaframeFarm"
	$farm.Initialize(1)
	$farm.FarmName
	$hres = Read-Host "Entrez une résolution horizontale"
	$farm.sessions | Where-Object { $_.ClientHRes -eq $hres } | 
Format-Table UserName,ClientHRes



Voila, une première étape sur MFCOM + PowerShell est effectuée, nous allons maintenant nous tourner vers les Xenapp Commands Technology preview (CTP2) de Citrix !

CTP2 (XenApp Commands Technology Preview v2 )

CTP2 est une suite d’outils PowerShell permettant l’administration de vos fermes XenApp 5 (2003/2008).
Il reprend les fonctionnalités de MFCOM ainsi que des consoles AMC/CMC.
CTP2 est actuellement une version béta et n’est pas supporté par le support Citrix.

Installation de l’environnement

La version béta de CTP2 est disponible sur le site MyCitrix, une authentification est requise afin de pouvoir le télécharger.

Versions Citrix supportées :

  • Xenapp 5.0 - Windows Server 2008 x64.
  • Xenapp 5.0 - Windows Server 2008 x32.
  • Xenapp 5.0 - Windows Server 2003 x64.
  • Xenapp 5.0 - Windows Server 2003 x32.
  • Presentation Server 4.5 - Windows Server 2003 x64 avec HRP3.
  • Presentation Server 4.5 - Windows Server 2003 x32 avec HRP3.

Lien de téléchargement CTP2



Si par erreur, vous avez supprimé ce raccourci, il est possible de charger le snap-in citrix dans une console PowerShell normale :

PS W:\> Add-PSSnapin Citrix.XenApp.Commands

Utilisation de CTP2

Afin de mieux exploiter ce toolkit, voici comment récupérer la liste complète des fonctions :

PS W:\> Get-Command -PSSnapin Citrix* | sort Noun, Verb | select name




Pour avoir plus d’info, il est possible d’énumérer un court résumé de la fonction ainsi que des exemples :

PS W:\> get-help Get-XAFarm



PS W:\> get-help Disconnect-xasession –examples




Nous voila avec les bases, nous allons maintenant voir comment imbriquer plusieurs cmdlets.
Afin de comparer CTP2 & PowerShell + MFCOM, les mêmes scripts seront repris.

Récupérer le nom de la ferme Citrix :

PS W:\> Get-XAFarm


Lister les sessions :

	
	PS W:\> Get-XASession | Format-Table AccountName,BrowserName,SessionID



Lister les utilisateurs dont la résolution est égale à 1024*768 :

Et la … c’est le drame ! Il est en effet pour l’instant impossible de récupérer certaines valeurs de session même en forçant la commande avec le switch –Full si l’on ne spécifie pas un serveur cible.

Commande logiquement attendue :

PS W:\> Get-XASession –Full

Commande renvoyant la variable complète :

PS W:\> Get-XASession -ServerName XENAPP1 –Full

Le but de PowerShell étant d’automatiser les taches, il est logique de tester :

PS W:\> Get-XAServer | Get-XASession -ServerName $_.ServerName –Full

Ce qui nous renvoi un joli message :



Après recherche sur le forum Citrix, il est en effet impossible de faire un Pipe entre 2 commandes Get-, il est actuellement disponible que pour un passage de Get- a Set- ( limité à un seul Pipe), Ceci devrait être corrigé dans les prochaines versions.

Il nous faut donc revenir aux méthodes plus traditionnelles :

$servers = get-xaserver
foreach ($server in $servers)
{
  Write-host "Server: " $server.ServerName -fore yellow -nonewline
  Get-XASession -ServerName $server.ServerName –Full | where
  {$_.HorizontalResolution -eq '1024'} |  format-table AccountName,HorizontalResolution
}



La grande force des CTP est de pouvoir reproduire chaque action des différentes consoles de gestion Citrix et ceci de manière automatique.
Pour les besoins de ce tutorial, j’ai délibérément changé la résolution et le fenêtrage de certaines applications, nous allons maintenant essayer de tout harmoniser :



Resserrons l’étau sur nos petits moutons noirs …

Get-XAApplication  |Where-Object { $_.WindowType -ne "100%" -or 
$_.ColorDepth -ne "TrueColor"  } | Format-Table DisplayName,WindowType,ColorDepth



N’oubliez pas le switch –WhatIf, il permet de simuler une commande sans en faire les changements !

Puis Harmonisons !

$apps = Get-XAApplication | Where-Object { $_.WindowType -ne "100%" -or $_.ColorDepth -ne "TrueColor"  } 
foreach($BrowserName in $apps )
{
Set-XAApplication -whatif -BrowserName $BrowserName -WindowType "100%" -ColorDepth "TrueColor"
}



Enlevons le whatif, puis vérifions le résultat du script :



Nous voyons ici les possibilités d’automatisation sur une ferme de plus grande échelle et ceci avec un minimum de connaissance en scripting.

Il faudra attendre la version finale du produit pour pouvoir s’exprimer sur les réels bénéfices des cmdlets Citrix, celles-ci étant encore incomplètes et surtout point important, ne supportant pas le multifarm. Les scripts utilisent la ferme auquel est rattaché le serveur d’exécution, il est par contre possible d’exécuter un script à distance.

Nous pouvons néanmoins concéder une simplicité d’utilisation accrue grâce au worklow orienté « task ». Une nouvelle voie est ouverte pour les administrateurs Citrix et je dois admettre être impatient de pouvoir utiliser ces outils en version finale.

Il n’est pas recommandé d’utiliser ces outils dans un environnement de production, tout du moins pour une première utilisation, je recommande fortement de tester les scripts sur une ferme de test, plusieurs bugs ayant déjà été recensés. La démarche la plus raisonnable serait de commencer par convertir les scripts MFCOM vers des scripts PS/MFCOM (le sdk étant beaucoup plus stable à l’heure actuelle).

Note pour les développeurs .NET, les CTP ne pourront être utilisées sous .Net que par le biais d’un RunSpace (ce qui équivaut à simuler une session PowerShell).

 

Last Updated on Friday, 09 July 2010 15:38
 
hyperV est un fake PDF Print E-mail
User Rating: / 1
PoorBest 
Written by admin   
Thursday, 01 July 2010 17:48

Hyper V est un fake un fork !

Le message qui suite ne reflète que mon avis et je l'assume pleinement! Oops

Pour ceux qui ont participé au premier docforum. Je donnais mon point de vu sur le marché de la virtualisation et le futur de XenServer. Mi 2009, je pensais que Citrix, le bras armé de Microsoft, avait racheté Xen Source, car Microsoft ne pouvait le faire directement pour éviter de perdre de la communauté OpenSource des développeurs. Que Xen allait être intégré sur les cartes mère, fessant disparaitre XenServer et que Microsoft allait fournir les consoles d'administration et l'intégration de la solution à son catalog.

Aujourd'hui, certains points m'interpellent :

  • Microsoft est passée de Virtual Server à Hyper V en un temps record ! Cela ressemble au passage de Windows NT 3.51 à Windows 2003, sans avoir passé par les casses NT4 et W2k. C'est tellement beau de voir un si gros éditeur, être capable de revoir sa copie si vite.
  • Les commerciaux de Citrix (France) poussent la solution HV1), et ce, même chez des clients déjà équipés de XS2).
  • Citrix change le mode de licence de XS, tous les six mois. Ce qui est un bon moyen pour tuer un produit.
  • storagelink Site recovery a été opérationnel sur HV avant XS, qui profite de cette fonction que depuis la version 2.2 . Sans vouloir faire le troll, je trouve ça fou qu'un éditeur sorte un produit pour les hyperviseurs des autres avant le sien !
  • Dans le même registre, le DMC3) qui débarque dans nos consoles avec le SP1 de HV et dans XS 5.6. Je suis heureux de voir Citrix et Microsoft au coude à coude pour rattraper les options manquantes de Vsphere.
  • Des rumeurs (sans fondement… comme ce post) font état qu'une partie des développeurs Citrix du projet XS, sont délégué chez Microsoft. En même temps, cela expliquerait les références à Citrix que l'on retrouve dans des Consoles d'HV.
  • Autre point intéressant, les résultats de VRC4). C'est vraiment instructif de s'inscrire pour pouvoir lire leur comparaison, des trois solutions. Nous pouvons y voir comment XS et HV sont proches, en terme de performance. Ces deux produits ont vraiment les mêmes avantages et les mêmes défauts.
  • À contrario, le nombre de Vcpu est toujours bien plus important sous XS.

Tout cela, vous l'avez bien compris, me fait dire que Microsoft a récupéré le code source de XEN ( ce qui n'est pas très dur avec l'OpenSource LOL) et qu'Hyper V n'est qu'un fork! Un Xen pour Windows 2008! Citrix s'était engagé à garder XS Open (sous licence NOSL5)), mais pas Microsoft. Et comme Citrix seul n'aurait certainement pas pu détrôner VMware sur la virtualisation de serveur et de poste de travail…

Vous pouvez réagire et donner votre avis sur le forum

Last Updated on Friday, 02 July 2010 09:04
 
XenServer 5.5 : installer et démarrer depuis un disque USB PDF Print E-mail
User Rating: / 1
PoorBest 
Written by ThinIsFat   
Friday, 28 May 2010 08:19
Bonjour,

Alors que je voulais réaliser cette opération, je n'ai trouvé que des guides en anglais... j'ai alors pensé à vous !

Last Updated on Friday, 28 May 2010 13:08
 
Deuxième DocForum : un succès ! PDF Print E-mail
Written by ThinIsFat   
Friday, 18 December 2009 14:17

Bonjour,

C'est avec un certain retard que nous écrivons ce bilan sur le deuxième DocForum, qui a eu lieu le 5 Décembre.

Last Updated on Thursday, 06 May 2010 08:00
 
Xenserver 5.5 snapshot PDF Print E-mail
User Rating: / 4
PoorBest 
Written by admin   
Tuesday, 10 November 2009 09:29

  Voici une analyse vidéo de la gestion des snapshot sous Xenserver 5.5. Dans cette vidéo vous comprendrez pourquoi les snapshot consomment tant de place sur vos SAN.

 
Last Updated on Thursday, 12 November 2009 10:13
 
<< Start < Prev 1 2 3 4 5 6 7 8 Next > End >>

Page 1 of 8