Projet

Général

Profil

MigrationAD » Historique » Version 8

Joël Cuissinat, 14/06/2018 17:39

1 1 Joël Cuissinat
h1. Migration de ScribeNT vers ScribeAD
2 1 Joël Cuissinat
3 2 Joël Cuissinat
h2. Scénarios issus de la réunion du 05/06/2018 (#24138)
4 1 Joël Cuissinat
5 1 Joël Cuissinat
Situation initiale : ScribeNT + postes intégrés + client Scribe
6 1 Joël Cuissinat
Cible : ScribeAD + postes intégrés + client Salt
7 1 Joël Cuissinat
8 1 Joël Cuissinat
h3. Cinématique 1
9 1 Joël Cuissinat
10 1 Joël Cuissinat
* transformer le module Scribe en ScribeAD
11 1 Joël Cuissinat
* déployer les minions via le client Scribe (sans le domaine NT)
12 1 Joël Cuissinat
* nettoyer les postes et les intégrer au domaine AD
13 1 Joël Cuissinat
14 1 Joël Cuissinat
15 1 Joël Cuissinat
h3. Cinématique 2 (plan B)
16 1 Joël Cuissinat
17 1 Joël Cuissinat
* déployer les minions via le client Scribe
18 1 Joël Cuissinat
* transformer le module Scribe en ScribeAD
19 1 Joël Cuissinat
* nettoyer les postes et les intégrer au domaine AD
20 1 Joël Cuissinat
21 1 Joël Cuissinat
22 1 Joël Cuissinat
h3. Points d'attention
23 1 Joël Cuissinat
24 1 Joël Cuissinat
* Conflit entre Salt-master et EAD3
25 1 Joël Cuissinat
* Gestion du déployement ou de l'acceptation des clés des minions
26 1 Joël Cuissinat
* Action instantanée et/ou différée (au démarrage des postes)
27 1 Joël Cuissinat
* Points d'étape : afficher le nombre/la liste des postes et leur état de migration
28 1 Joël Cuissinat
* vérifier/forcer la configuration DNS des clients avant intégration
29 1 Joël Cuissinat
* prévoir de fournir un script/programme pour les futures installations
30 3 Joël Cuissinat
31 3 Joël Cuissinat
32 3 Joël Cuissinat
h2. Déploiement du Minion
33 3 Joël Cuissinat
34 3 Joël Cuissinat
L'utilisation du client Scribe permet d'envisager plusieurs pistes différentes.
35 3 Joël Cuissinat
36 1 Joël Cuissinat
La problématique de la diffusion/du téléchargement de l'installeur est au moins aussi complexe que celle de son exécution.
37 3 Joël Cuissinat
38 8 Joël Cuissinat
h3. Exécution de l'installeur à l'aide du client Scribe
39 3 Joël Cuissinat
40 8 Joël Cuissinat
Du fait de l'utilisation du partage "netlogon", le test suivant correspondrait plutôt au plan B...
41 3 Joël Cuissinat
42 3 Joël Cuissinat
<pre>
43 3 Joël Cuissinat
root@scribe:~# wget https://repo.saltstack.com/windows/Salt-Minion-2018.3.0-Py3-AMD64-Setup.exe -O /home/netlogon/minion.exe
44 3 Joël Cuissinat
root@scribe:~# /usr/share/eole/controlevnc/cliscribe.py -e '\\192.168.0.26\netlogon\minion.exe /S /master=192.168.0.26' 192.168.0.183
45 3 Joël Cuissinat
</pre>
46 3 Joël Cuissinat
47 3 Joël Cuissinat
=> accès refusé car le partage n'est pas accessible dans l'environnement Système !
48 3 Joël Cuissinat
49 1 Joël Cuissinat
Après copie *manuelle* du programme d'installation dans C:\, la commande suivante permet bien d'installer le Minion :
50 3 Joël Cuissinat
51 3 Joël Cuissinat
<pre>
52 3 Joël Cuissinat
/usr/share/eole/controlevnc/cliscribe.py -e 'C:\minion.exe /S /master=192.168.0.26' 192.168.0.183
53 3 Joël Cuissinat
</pre>
54 3 Joël Cuissinat
55 8 Joël Cuissinat
h3. Utilisation du serveur web du client Scribe
56 4 Joël Cuissinat
57 4 Joël Cuissinat
Il est possible d'utiliser le serveur web du client Scribe qui publie les fichiers présents dans le dossier */home/client_scribe* en HTTP sur le port 8790.
58 6 Joël Cuissinat
59 4 Joël Cuissinat
<pre>
60 4 Joël Cuissinat
wget https://repo.saltstack.com/windows/Salt-Minion-2018.3.0-Py3-AMD64-Setup.exe -O /home/client_scribe
61 4 Joël Cuissinat
</pre>
62 1 Joël Cuissinat
63 6 Joël Cuissinat
Dans ce test, on télécharge puis exécute le script PS @install-minion.ps1@ qui va lui même télécharger et exécuter l'installeur du minion :
64 6 Joël Cuissinat
65 1 Joël Cuissinat
<pre>
66 6 Joël Cuissinat
cat /home/client_scribe/install-minion.ps1
67 4 Joël Cuissinat
Set-ExecutionPolicy Bypass -Scope Process -Force
68 4 Joël Cuissinat
Set-Location $env:TEMP
69 4 Joël Cuissinat
Set-PSDebug -Trace 1
70 4 Joël Cuissinat
((new-object net.webclient).DownloadFile('http://scribe:8790/minion.exe', 'minion.exe'))
71 4 Joël Cuissinat
Get-ChildeItem $env:TEMP
72 4 Joël Cuissinat
minion.exe /S /master=192.168.0.26
73 4 Joël Cuissinat
</pre>
74 4 Joël Cuissinat
75 7 Joël Cuissinat
Commande à exécuter sous Windows :
76 4 Joël Cuissinat
<pre>
77 5 Joël Cuissinat
%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('http://scribe:8790/install-minion.ps1'))
78 1 Joël Cuissinat
</pre>
79 1 Joël Cuissinat
80 7 Joël Cuissinat
Commande à exécuter sur le Scribe :
81 7 Joël Cuissinat
<pre>
82 1 Joël Cuissinat
cmd="c:\windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command \"iex ((New-Object System.Net.WebClient).DownloadString('http://scribe:8790/install-minion.ps1'))\""
83 7 Joël Cuissinat
/usr/share/eole/controlevnc/cliscribe.py -e "$cmd"  192.168.0.183
84 7 Joël Cuissinat
</pre>
85 7 Joël Cuissinat
86 8 Joël Cuissinat
h3. Suppression du script PowerShell intermédiaire en le remplaçant par une chaîne en base64
87 7 Joël Cuissinat
88 7 Joël Cuissinat
Il est possible d'envoyer la ou les commandes PS encodées en base64 à l'aide de l'option @-EncodedCommand@
89 8 Joël Cuissinat
90 7 Joël Cuissinat
91 3 Joël Cuissinat
92 3 Joël Cuissinat
h3. Installeur du client Scribe
93 3 Joël Cuissinat
94 3 Joël Cuissinat
Créer une nouvelle version du client Scribe embarquant l'installeur Salt Minion et mettre à jour le numéro de version officielle.
95 3 Joël Cuissinat
La nouvelle version du client (et donc salt) sera automatiquement installée grâce au service de maj du client.
96 3 Joël Cuissinat
97 3 Joël Cuissinat
h3. psexec
98 3 Joël Cuissinat
99 3 Joël Cuissinat
"psexec":http://www.tutos.eu/?n=7963 pourrait être utilisé pour exécuter l'installation du minion à distance depuis une station.