Projet

Général

Profil

MigrationAD » Historique » Version 10

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

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 9 Joël Cuissinat
h2. Déploiement du Minion à l'aide du client Scribe
32 3 Joël Cuissinat
33 3 Joël Cuissinat
L'utilisation du client Scribe permet d'envisager plusieurs pistes différentes.
34 3 Joël Cuissinat
35 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.
36 3 Joël Cuissinat
37 8 Joël Cuissinat
h3. Exécution de l'installeur à l'aide du client Scribe
38 3 Joël Cuissinat
39 8 Joël Cuissinat
Du fait de l'utilisation du partage "netlogon", le test suivant correspondrait plutôt au plan B...
40 3 Joël Cuissinat
41 3 Joël Cuissinat
<pre>
42 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
43 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
44 3 Joël Cuissinat
</pre>
45 3 Joël Cuissinat
46 3 Joël Cuissinat
=> accès refusé car le partage n'est pas accessible dans l'environnement Système !
47 3 Joël Cuissinat
48 1 Joël Cuissinat
Après copie *manuelle* du programme d'installation dans C:\, la commande suivante permet bien d'installer le Minion :
49 3 Joël Cuissinat
50 3 Joël Cuissinat
<pre>
51 3 Joël Cuissinat
/usr/share/eole/controlevnc/cliscribe.py -e 'C:\minion.exe /S /master=192.168.0.26' 192.168.0.183
52 3 Joël Cuissinat
</pre>
53 3 Joël Cuissinat
54 8 Joël Cuissinat
h3. Utilisation du serveur web du client Scribe
55 4 Joël Cuissinat
56 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.
57 6 Joël Cuissinat
58 4 Joël Cuissinat
<pre>
59 4 Joël Cuissinat
wget https://repo.saltstack.com/windows/Salt-Minion-2018.3.0-Py3-AMD64-Setup.exe -O /home/client_scribe
60 4 Joël Cuissinat
</pre>
61 1 Joël Cuissinat
62 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 :
63 6 Joël Cuissinat
64 1 Joël Cuissinat
<pre>
65 6 Joël Cuissinat
cat /home/client_scribe/install-minion.ps1
66 4 Joël Cuissinat
Set-ExecutionPolicy Bypass -Scope Process -Force
67 4 Joël Cuissinat
Set-Location $env:TEMP
68 4 Joël Cuissinat
Set-PSDebug -Trace 1
69 4 Joël Cuissinat
((new-object net.webclient).DownloadFile('http://scribe:8790/minion.exe', 'minion.exe'))
70 4 Joël Cuissinat
Get-ChildeItem $env:TEMP
71 4 Joël Cuissinat
minion.exe /S /master=192.168.0.26
72 4 Joël Cuissinat
</pre>
73 4 Joël Cuissinat
74 7 Joël Cuissinat
Commande à exécuter sous Windows :
75 4 Joël Cuissinat
<pre>
76 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'))
77 1 Joël Cuissinat
</pre>
78 1 Joël Cuissinat
79 7 Joël Cuissinat
Commande à exécuter sur le Scribe :
80 7 Joël Cuissinat
<pre>
81 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'))\""
82 7 Joël Cuissinat
/usr/share/eole/controlevnc/cliscribe.py -e "$cmd"  192.168.0.183
83 7 Joël Cuissinat
</pre>
84 7 Joël Cuissinat
85 8 Joël Cuissinat
h3. Suppression du script PowerShell intermédiaire en le remplaçant par une chaîne en base64
86 7 Joël Cuissinat
87 7 Joël Cuissinat
Il est possible d'envoyer la ou les commandes PS encodées en base64 à l'aide de l'option @-EncodedCommand@
88 1 Joël Cuissinat
89 10 Joël Cuissinat
ATTENTION : Il faut au préalable que le fichier créé sous Linux soit dans un "bon" format !
90 10 Joël Cuissinat
91 10 Joël Cuissinat
<pre>
92 10 Joël Cuissinat
iconv -f UTF-8 -t UTF-16LE <install-minion.ps1 >install-minion.ps2
93 10 Joël Cuissinat
</pre>
94 10 Joël Cuissinat
95 10 Joël Cuissinat
96 10 Joël Cuissinat
97 8 Joël Cuissinat
98 9 Joël Cuissinat
h2. Autres pistes
99 3 Joël Cuissinat
100 3 Joël Cuissinat
h3. Installeur du client Scribe
101 3 Joël Cuissinat
102 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.
103 3 Joël Cuissinat
La nouvelle version du client (et donc salt) sera automatiquement installée grâce au service de maj du client.
104 3 Joël Cuissinat
105 3 Joël Cuissinat
h3. psexec
106 3 Joël Cuissinat
107 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.