Modifications pour le document Créer une VM

Modifié par Kevin FRICK le 2024/04/02 01:17

Depuis la version 1.1
modifié par sasportesj
sur 2021/04/04 00:01
Commentaire de modification : Il n'y a aucun commentaire pour cette version
À la version 13.2
modifié par Clément AUBIN
sur 2022/01/12 22:53
Commentaire de modification : Il n'y a aucun commentaire pour cette version

Résumé

Détails

Propriétés de la Page
Auteur du document
... ... @@ -1,1 +1,1 @@
1 -XWiki.sasportesj
1 +XWiki.aubincleme
Contenu
... ... @@ -4,18 +4,25 @@
4 4  Créer une nouvelle instance de xen (par exemple) :
5 5  
6 6  {{code language="bash"}}
7 -xen-create-image --hostname=<nom de la VM> --mac=<adresse MAC libre> --dist=stable --lvm=VMs --dhcp --memory=1G --password=<mot de passe de la VM> --size=5G --swap=256M --vcpus=1
7 +xen-create-image --hostname=<nom de la VM> --dist=stable --lvm=VMs --dhcp --memory=1G --password=<mot de passe de la VM> --size=5G --swap=256M --vcpus=1
8 8  {{/code}}
9 9  
10 +{{warning}}
11 +Pour le nom de la VM, ne pas oublier d'y ajouter les suffixes -prod, -preprod, -dev...
12 +{{/warning}}
10 10  
11 11  **Sur Bill **(root@atilla.org depuis l'extérieur, bill.infra.atilla.org depuis l'intérieur du réseau) :
12 12  
16 +Dans /etc/bind/internal, on cherche un slot vide à la bonne adresse IP et on le remplit BIEN (c'est-à-dire qu'on fait attention à bien écrire si on est en prod, preprod, ou dev dans le nom de la VM). On modifie aussi db.10.168.192.in-addr.arpa
13 13  
14 -Dans /etc/bind/internal, on cherche un slot vide à la bonne adresse IP et on le remplit BIEN (c'est-à-dire qu'on fait attention à bien écrire si on est en prod, preprod, ou dev dans le nom de la VM). On modifie aussi db.10.168.192.in-addr.arpa et le fichier db du nom de domaine si on met le site en ligne.
18 +//Si on met le site en ligne ~:// On modifie aussi le fichier db du nom de domaine (db.atilla.org ou db.eistiens.net) dans /etc/bind/internal et dans /etc/bind/external.
15 15  
20 +{{info}}
21 +Si vous voulez comprendre ce que vous venez de faire, [[cliquez ici>>Infrastructure.Tutoriels.MiseEnPlaceSousDomaine.WebHome||anchor="HIdE9egE9nE9rale"]]
22 +{{/info}}
23 +
16 16  Dans /etc/dhcp, on trouve tous les DHCP dans chacun des fichiers (prod.conf, dev.conf, ...), on remplit le bon fichier avec l'adresse MAC et l'adresse IP correspondante.
17 17  
18 -
19 19  Ensuite, on restart le système avec :
20 20  
21 21  {{code language="none"}}
... ... @@ -23,12 +23,10 @@
23 23  systemctl restart bind9 # pour restart le DNS
24 24  {{/code}}
25 25  
26 -
27 27  **Sur Touffu :**
28 28  
35 +On voit que dans /etc/xen un fichier .cfg a été ajouté automatiquement.
29 29  
30 -On voit que dnas /etc/xen un fichier .cfg a été ajouté automatiquement.
31 -
32 32  Dans /etc/xen/auto, on crée un lien symbolique pour notre VM :
33 33  
34 34  {{code language="none"}}
... ... @@ -43,12 +43,10 @@
43 43  
44 44  **Sur la VM :**
45 45  
46 -
47 47  login : root
48 48  
49 49  mdp : celui que vous avez mis quand vous avez créé votre VM
50 50  
51 -
52 52  Maintenant qu'on est sur l'interface de notre VM, on installe la base (vim et wget pour installer puppet) :
53 53  
54 54  {{code language="none"}}
... ... @@ -62,6 +62,11 @@
62 62  dpkg -i <nom du fichier téléchargé>.deb
63 63  {{/code}}
64 64  
68 +(% class="box infomessage" %)
69 +(((
70 +Pour chercher la version de debian, on peut regarder le contenu du fichier /etc/debian_version
71 +)))
72 +
65 65  On update ensuite les paquets disponibles, et on installe l'agent puppet :
66 66  
67 67  {{code language="none"}}
... ... @@ -69,10 +69,9 @@
69 69  apt-get install puppet-agent
70 70  {{/code}}
71 71  
72 -(% class="box warningmessage" %)
73 -(((
74 -Pour utiliser la commande puppet, on devra maintenant utiliser le lien /opt/puppetlabs/bin/puppet, à moins de mettre à jour le path
75 -)))
80 +{{warning}}
81 +Les exécutables de Puppet ne sont pas dans le ##PATH## par défaut (ces derniers se trouvent dans ##/opt/puppetlabs/bin##). On utilise donc des chemins absolus dans les prochaines étapes. Lors de la première sychronisation avec Puppet, le ##.bashrc## de l'utilisateur ##root## sera mis à jour pour inclure ce chemin dans le ##PATH## par défaut.
82 +{{/warning}}
76 76  
77 77  On démarre ensuite le service de puppet :
78 78  
... ... @@ -80,13 +80,13 @@
80 80  /opt/puppetlabs/bin/puppet resource service puppet ensure=running enable=true
81 81  {{/code}}
82 82  
83 - On connecte ensuite l'agent au serveur de puppet (à ce jour Milou) :
90 + On connecte ensuite l'agent au serveur de puppet :
84 84  
85 85  {{code language="none"}}
86 -puppet ssl bootstrap
93 +/opt/puppetlabs/bin/puppet ssl bootstrap
87 87  {{/code}}
88 88  
89 -**En  parallèle, sur Milou** (milou.infra.atilla.org) :
96 +**En  parallèle, sur Puppet** (puppet.infra.atilla.org) :
90 90  
91 91  Via la commande précédente, un certificat a été créé, que le serveur doit signer pour que les deux machines puissent communiquer.
92 92  
... ... @@ -104,4 +104,46 @@
104 104  
105 105   Pour signer tous les certificats pas signés :
106 106  
107 -
114 +{{code language="none"}}
115 +puppetserver ca sign --all
116 +{{/code}}
117 +
118 + **Sur la VM :**
119 +
120 +Pour vérifier que tout marche bien :
121 +
122 +{{code language="none"}}
123 +/opt/puppetlabs/bin/puppet ssl bootstrap
124 +{{/code}}
125 +
126 +== Si on veut mettre la VM en ligne : ==
127 +
128 +**Sur Bill :**
129 +
130 +{{info}}
131 +Il existe plusieurs manières de configurer nginx, on en détaille une ici, mais si vous voulez la comprendre ou utiliser l'autre, [[cliquez ici>>Infrastructure.Tutoriels.MiseEnPlaceSousDomaine.WebHome||anchor="HMiseenplacedelaconfigurationNginx"]]
132 +{{/info}}
133 +
134 +On crée un nouveau fichier dans /etc/nginx pour la VM (on peut copier sur les autres et adapter le nom).
135 +
136 +On crée un fichier error.log et un fichier access.log dans /var/log/nginx
137 +
138 +On va ensuite dans /etc/nginx/sites-enabled/<nom de domaine qu'on a choisi> et on crée un lien symbolique :
139 +
140 +{{code language="none"}}
141 +ln -s ../../sites-available/<DNS de la VM>
142 +{{/code}}
143 +
144 +De plus, on ajoute un certificat à l'aide de cette suite de commandes :
145 +
146 +{{code language="none"}}
147 +systemctl stop nginx && certbot certonly -d <DNS de la VM> && systemctl start nginx
148 +{{/code}}
149 +
150 +{{info}}
151 +Si vous voulez comprendre ce que vous venez de faire, [[cliquez ici>>Infrastructure.Tutoriels.MiseEnPlaceSousDomaine.WebHome||anchor="HMiseenplacedescertificatsSSL"]]
152 +{{/info}}
153 +
154 +
155 +
156 +== ==