Wiki source code of Redémarrage de ferme Citrix en PRA
Last modified by Equipe Opération on 04 - 08 - 2022
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | = Sujet : redémarrage ferme Citrix = | ||
2 | |||
3 | Il s'agit d'un ensemble de serveurs qui permet de publier des applications, des bureaux à distances, aux collaborateurs d'une entreprise. | ||
4 | |||
5 | |||
6 | = Problématique = | ||
7 | |||
8 | Pour redémarrer une infrastructure Citrix dans le cloud, il faudrait connecter l'hyperviseur du cloud avec le connecteur Citrix dédié afin de gérer les machines de ferme via le contrôleur Citrix. | ||
9 | |||
10 | Il n'existe pas de connecteur cloud pour Flexible engine ni de moyen d'utiliser les mécanismes MCS ou PVS pour gérer le provisionnement des instances de ferme. | ||
11 | |||
12 | [[image:image-20220804125204-1.png]] | ||
13 | |||
14 | |||
15 | = Processus = | ||
16 | |||
17 | La remontée de PRA Cloud de Nuabee d'une Ferme Citrix, il est nécessaire de créer les éléments suivants : | ||
18 | |||
19 | 1. Un compte utilisateur capable d'enregistrer des serveurs dans le domaine | ||
20 | 1*. Les identifiants seront à communiquer à Nuabee pour permettre au scripts Cloud-Init d'insérer les instances de ferme dans le domaine. | ||
21 | 1. Un catalogue de machine "statiques" dans Citrix Studio (sans provisionnement MCS ou PVS) | ||
22 | 1*. Dans lequel sera inséré vos instances | ||
23 | 1*. Cela nécessite en retour la création d'une OU dans l'AD | ||
24 | 1. Une GPO sur le Contrôleur Citrix pour la liaison automatique des instances au service Citrix. | ||
25 | 1. Un serveur qui sera "l'Image" des instances, dont le disque dur syspreppé est à communiquer à Nuabee. | ||
26 | 1*. Pour les mises à jour de l'image penser à faire un snapshot avant sysprep. | ||
27 | |||
28 | == Client : Configuration de l'Active Directory == | ||
29 | |||
30 | === Création d'une Unité Organisationnelle (OU) === | ||
31 | |||
32 | Il faut ajouter une Unité Organisationnelle (OU) pour la ferme Citrix PRA. | ||
33 | |||
34 | [[image:image-20220719102440-2.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220719102440-2.png"]] | ||
35 | |||
36 | ---- | ||
37 | |||
38 | === Délégation de la création des objets Ordinateur sur l'OU de PRA === | ||
39 | |||
40 | Par mesure de sécurité, il faudra créer un utilisateur et lui déléguer le contrôle sur l'OU de PRA. | ||
41 | |||
42 | L'utilisateur doit avoir le privilège de joindre un ordinateur au domaine. Pour cela, il lui faut les permissions suivantes : | ||
43 | |||
44 | * Créer un objet ordinateur | ||
45 | * Supprimer un objet ordinateur | ||
46 | |||
47 | Cliquez avec le bouton droit sur l'OU de PRA et sélectionnez **//Déléguer le contrôle//** | ||
48 | |||
49 | [[image:image-20220725112758-1.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="584" id="Iimage-20220725112758-1.png" width="1035"]] | ||
50 | |||
51 | Recherchez l'utilisateur ou le groupe souhaité | ||
52 | |||
53 | [[image:image-20220725113159-2.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="566" id="Iimage-20220725113159-2.png" width="863"]] | ||
54 | |||
55 | [[image:image-20220725113241-3.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="551" id="Iimage-20220725113241-3.png" width="844"]] | ||
56 | |||
57 | Sur la page //**Tâches à déléguer**//, cliquez sur //**Créer une tâche personnalisée à déléguer**//, puis cliquez sur Suivant. | ||
58 | |||
59 | [[image:image-20220725113348-4.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="569" id="Iimage-20220725113348-4.png" width="962"]] | ||
60 | |||
61 | Cliquez sur Seulement les objets suivants dans le dossier, | ||
62 | |||
63 | * Dans la liste, sélectionnez **Objets ordinateur**. | ||
64 | * Sélectionnez les options suivantes sous la liste d'objets : | ||
65 | ** Créer les objets sélectionnés dans ce dossier | ||
66 | ** Supprimer les objets sélectionnés dans ce dossier | ||
67 | |||
68 | [[image:image-20220725113535-6.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220725113535-6.png"]] | ||
69 | |||
70 | Dans la liste //**Autorisations**//, cochez les cases Général et Spécifique à la propriété. | ||
71 | |||
72 | Sélectionnez //**Créer tous les objets enfants**// | ||
73 | |||
74 | [[image:image-20220725113759-7.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="592" id="Iimage-20220725113759-7.png" width="907"]] | ||
75 | |||
76 | Cliquez sur Suivant et Terminer | ||
77 | |||
78 | [[image:image-20220725113910-8.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="560" id="Iimage-20220725113910-8.png" width="899"]] | ||
79 | |||
80 | ---- | ||
81 | |||
82 | == Client : Création du catalogue statique pour la ferme PRA == | ||
83 | |||
84 | Accéder au Citrix Studio sur le contrôleur Citrix pour créer le catalogue statique de la ferme PRA. | ||
85 | |||
86 | [[image:image-20220718155155-3.png||class="wikigeneratedid" height="625" id="Iimage-20220718155155-3.png" width="1153"]] | ||
87 | |||
88 | [[image:image-20220718155219-4.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220718155219-4.png"]] | ||
89 | |||
90 | [[image:image-20220718155236-5.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220718155236-5.png"]] | ||
91 | |||
92 | [[image:image-20220718155249-6.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220718155249-6.png"]] | ||
93 | |||
94 | ---- | ||
95 | |||
96 | == Client : Création d'un GPO sur le contrôleur Citrix == | ||
97 | |||
98 | Ajouter un GPO sur le contrôleur Citrix afin de permettre aux machines de ferme de se connecter automatiquement au contrôleur après redémarrage dans le Cloud. | ||
99 | |||
100 | [[https:~~/~~/docs.citrix.com/en-us/xenapp-and-xendesktop/7-15-ltsr/manage-deployment/vda-registration.html#policy-based-lgpogpo>>https://docs.citrix.com/en-us/xenapp-and-xendesktop/7-15-ltsr/manage-deployment/vda-registration.html#policy-based-lgpogpo]] | ||
101 | |||
102 | ===== Policy-based (LGPO\GPO) ===== | ||
103 | |||
104 | Citrix recommends using GPO for initial VDA registration. It has the highest priority. (Although auto-update was listed previously as the highest priority, auto-update is used only after the initial registration.) Policy-based registration offers the centralizing advantages of using Group Policy for configuration. | ||
105 | |||
106 | To specify this method, complete both of the following steps: | ||
107 | |||
108 | * On the **Delivery Controller** page in the VDA installation wizard, select **Do it later (advanced)**. The wizard reminds you several times to specify Controller addresses, even though you’re not specifying them during VDA installation. (Because VDA registration is that important!) | ||
109 | * Enable or disable policy-based VDA registration through Citrix policy with the Virtual Delivery Agent Settings > Controllers setting. (If security is your top priority, use the Virtual Delivery Agent Settings > Controller SIDs setting.) | ||
110 | |||
111 | This setting is stored under HKLM\Software\Policies\Citrix\VirtualDesktopAgent (ListOfDDCs). | ||
112 | |||
113 | [[image:image-20220718160222-7.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" height="547" id="Iimage-20220718160222-7.png" width="1064"]] | ||
114 | |||
115 | [[image:image-20220718160246-8.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220718160246-8.png"]] | ||
116 | |||
117 | [[image:image-20220718160258-9.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220718160258-9.png"]] | ||
118 | |||
119 | ---- | ||
120 | |||
121 | == Client : Préparation de l'Image Source == | ||
122 | |||
123 | Il faut préparer une machine de ferme pour pouvoir l'imager et le redémarrer sur le Cloud de Flexible Engine. | ||
124 | |||
125 | * Ce serveur ne doit comporter qu'un seul "Disque Dur Virtuel". Suivez en plus les recommandations d'orange indiquées dans ce document : [[https:~~/~~/docs.prod-cloud-ocb.orange-business.com/usermanual/ims/en-us_topic_0199394934.html>>url:https://docs.prod-cloud-ocb.orange-business.com/usermanual/ims/en-us_topic_0199394934.html]] | ||
126 | * Avant de Sysprep le serveur, veillez à installer les drivers XEN et KVM comme indiqué ici : [[https:~~/~~/docs.prod-cloud-ocb.orange-business.com/usermanual/ims/en-us_topic_0130878748.html>>url:https://docs.prod-cloud-ocb.orange-business.com/usermanual/ims/en-us_topic_0130878748.html]] | ||
127 | |||
128 | **Une fois le Sysprep effectué, le serveur va s'éteindre.** | ||
129 | |||
130 | En cas de problème avec l'étape de Sysprep, suivre ce guide pour éditer les clés de registre : [[https:~~/~~/www.wintips.org/fix-sysprep-fatal-error-dwret-31-machine-invalid-state-couldnt-update-recorded-state/>>url:https://www.wintips.org/fix-sysprep-fatal-error-dwret-31-machine-invalid-state-couldnt-update-recorded-state/]] | ||
131 | |||
132 | == Client : Export de l'image source == | ||
133 | |||
134 | === Récupérer l'image depuis un hyperviseur === | ||
135 | |||
136 | Une fois connecté à l'hyperviseur, il faut extraire l'image en mode VMDK. (clic droit > export) | ||
137 | |||
138 | [[image:image-20220725160208-15.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220725160208-15.png"]] | ||
139 | |||
140 | === Envoi de l'image à Nuabee === | ||
141 | |||
142 | L'envoi s'effectue soit via les ressources du client, soit via l'utilitaire de Nuabee [[https:~~/~~/share.nuabee.fr>>https://share.nuabee.fr]] | ||
143 | |||
144 | ---- | ||
145 | |||
146 | == Nuabee : Création de l'image dans Image Management Service (IMS) == | ||
147 | |||
148 | === Upload du VMDK vers le stockage objet === | ||
149 | |||
150 | Utiliser un client S3 afin de déposer le fichier VMDK dans un bucket du tenant du client | ||
151 | |||
152 | [[image:image-20220725154615-11.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220725154615-11.png"]] | ||
153 | |||
154 | === Création de l'IMS à partir du vmdk === | ||
155 | |||
156 | Dans le menu "Create Image" du service d'IMS de Flexible Engine | ||
157 | |||
158 | [[image:image-20220725155906-12.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220725155906-12.png"]] | ||
159 | |||
160 | [[image:image-20220725155915-13.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220725155915-13.png"]] | ||
161 | |||
162 | [[image:image-20220725155941-14.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220725155941-14.png"]] | ||
163 | |||
164 | == Nuabee : Enregistrement des machines de Ferme dans Atlas == | ||
165 | |||
166 | [[image:image-20220725160930-16.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220725160930-16.png"]] | ||
167 | |||
168 | [[image:image-20220725160940-17.png||class="wikigeneratedid" data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true" id="Iimage-20220725160940-17.png"]] | ||
169 | |||
170 | ---- | ||
171 | |||
172 | == Nuabee : Redémarrage des machines de Ferme dans le Cloud == | ||
173 | |||
174 | === Script PowerShell pour ajouter une machine au domaine === | ||
175 | |||
176 | Vous pouvez trouver le fichier PowerShell (dans les pièces jointes à l'article du Wiki) qui sera exécuté par le mécanisme cloud-init pour référence ci-dessous. | ||
177 | |||
178 | |||
179 | {{code}} | ||
180 | $DC = "Citrix.lan" | ||
181 | $OU = "OU=FermePRA,OU=Workers,OU=Infras-Citrix,DC=citrix,DC=LAN" | ||
182 | $pass = "MonMotDePasse" | ConvertTo-SecureString -AsPlainText -Force | ||
183 | $user = "$DC\u_delegate" | ||
184 | $creds = New-Object System.Management.Automation.PSCredential($user,$pass) | ||
185 | Add-Computer -DomainName $DC -OUPath $OU -Credential $creds -Restart -Force -Verbose | ||
186 | {{/code}} |