Installation Gateway dans nebula » Historique » Version 11
Gilles Grandgérard, 21/05/2014 18:04
| 1 | 1 | Gilles Grandgérard | h1. Avant Propos |
|---|---|---|---|
| 2 | 1 | Gilles Grandgérard | |
| 3 | 1 | Gilles Grandgérard | |
| 4 | 10 | Gilles Grandgérard | h2. OpenNebula et Eole-Ci-Tests |
| 5 | 1 | Gilles Grandgérard | |
| 6 | 9 | Gilles Grandgérard | h3. Ajouter le partage 'eole-ci-tests' sur une VM |
| 7 | 9 | Gilles Grandgérard | |
| 8 | 9 | Gilles Grandgérard | Si vous avez besoin de monter 'eole-ci-tests' sur une VM, il faut ajouter une ligne RAW dans la configuration du modèle : |
| 9 | 9 | Gilles Grandgérard | <pre> |
| 10 | 9 | Gilles Grandgérard | RAW=[TYPE="kvm",DATA="<devices><filesystem type='mount' accessmode='squash'><source dir='/var/lib/one/datastores/eole-ci'/><target dir='eole-ci'/></filesystem></devices>" ] |
| 11 | 9 | Gilles Grandgérard | </pre> |
| 12 | 9 | Gilles Grandgérard | |
| 13 | 9 | Gilles Grandgérard | Une fois la machine instanciée, pour monter le partage il faut executer : |
| 14 | 9 | Gilles Grandgérard | <pre> |
| 15 | 9 | Gilles Grandgérard | mkdir /mnt/eole-ci-tests |
| 16 | 9 | Gilles Grandgérard | mount -t 9p -o trans=virtio eole-ci /mnt/eole-ci-tests -oversion=9p2000.L |
| 17 | 1 | Gilles Grandgérard | </pre> |
| 18 | 1 | Gilles Grandgérard | |
| 19 | 11 | Gilles Grandgérard | Pour installer le service 'eole-ci-tests', executer |
| 20 | 11 | Gilles Grandgérard | <pre> |
| 21 | 11 | Gilles Grandgérard | /mnt/eole-ci-tests/scripts/postinstall/postinstall.sh <vm_nebula_id> |
| 22 | 11 | Gilles Grandgérard | </pre> |
| 23 | 1 | Gilles Grandgérard | |
| 24 | 11 | Gilles Grandgérard | Attention: La mise à jour du git 'eole-ci-tests' est faite toutes les 15 minutes par Jenkins. Lors de ce process, tous les fichiers sont ECRASES |
| 25 | 11 | Gilles Grandgérard | |
| 26 | 10 | Gilles Grandgérard | h3. Exemple de propriété d'une VM dans Nebula |
| 27 | 1 | Gilles Grandgérard | |
| 28 | 1 | Gilles Grandgérard | * Exemple de template utilisé dans Nebula pour la machine Amon de l'établissement Etb2 pour l'utilisateur Ggg |
| 29 | 1 | Gilles Grandgérard | La selection de l'image (version et architecture) est automatisé. Le UNAME est selectionné automatiquement |
| 30 | 1 | Gilles Grandgérard | L'architecture réseau les switchs générés d'après le modele |
| 31 | 10 | Gilles Grandgérard | Le context est généré |
| 32 | 10 | Gilles Grandgérard | <pre> |
| 33 | 11 | Gilles Grandgérard | NAME = "ggg.etb2.amon" |
| 34 | 11 | Gilles Grandgérard | CPU = "0.05" |
| 35 | 11 | Gilles Grandgérard | MEMORY = "512" |
| 36 | 11 | Gilles Grandgérard | VCPU = "1" |
| 37 | 11 | Gilles Grandgérard | FEATURES = [ acpi="yes", pae="no" ] |
| 38 | 11 | Gilles Grandgérard | GRAPHICS = [ KEYMAP="fr", LISTEN="0.0.0.0", TYPE="vnc" ] |
| 39 | 11 | Gilles Grandgérard | INPUT = [ BUS="usb", TYPE="tablet" ] |
| 40 | 11 | Gilles Grandgérard | RAW = [ TYPE="kvm", DATA="<devices><filesystem type='mount' accessmode='squash'><source dir='/var/lib/one/datastores/eole-ci'/><target dir='eole-ci'/></filesystem></devices>" ] |
| 41 | 11 | Gilles Grandgérard | DISK = [ DRIVER="qcow2", IMAGE="amon-2.4-daily-amd64.fi", IMAGE_UNAME="gilles" ] |
| 42 | 11 | Gilles Grandgérard | OS = [ ARCH="x86_64", BOOT="hd" ] |
| 43 | 11 | Gilles Grandgérard | NIC = [ MODEL="virtio", NETWORK="SW-ggg-academie", NETWORK_UNAME="gilles" ] |
| 44 | 11 | Gilles Grandgérard | NIC = [ MODEL="virtio", NETWORK="SW-ggg-admin2", NETWORK_UNAME="gilles" ] |
| 45 | 11 | Gilles Grandgérard | NIC = [ MODEL="virtio", NETWORK="SW-ggg-pedago2", NETWORK_UNAME="gilles" ] |
| 46 | 11 | Gilles Grandgérard | NIC = [ MODEL="virtio", NETWORK="SW-ggg-dmz2", NETWORK_UNAME="gilles" ] |
| 47 | 11 | Gilles Grandgérard | CONTEXT = [ VM_ID="$VMID", VM_HOSTNAME="amon", VM_MACHINE="etb2.amon", VM_TEMPLATE="ggg.etb2.amon", VM_USER="ggg" ] |
| 48 | 10 | Gilles Grandgérard | </pre> |
| 49 | 10 | Gilles Grandgérard | |
| 50 | 10 | Gilles Grandgérard | h2. Le modele de réseau |
| 51 | 10 | Gilles Grandgérard | |
| 52 | 10 | Gilles Grandgérard | |
| 53 | 9 | Gilles Grandgérard | |
| 54 | 9 | Gilles Grandgérard | h3. Modèle de réseau de test pour les VM Nebula |
| 55 | 9 | Gilles Grandgérard | |
| 56 | 9 | Gilles Grandgérard | !reseaux_type.png! |
| 57 | 9 | Gilles Grandgérard | |
| 58 | 9 | Gilles Grandgérard | |
| 59 | 9 | Gilles Grandgérard | |
| 60 | 1 | Gilles Grandgérard | h2. Les fichiers de configuration |
| 61 | 1 | Gilles Grandgérard | |
| 62 | 2 | Gilles Grandgérard | * ModulesConf.yaml |
| 63 | 1 | Gilles Grandgérard | |
| 64 | 7 | Gilles Grandgérard | Ce fichier décrit globalement les modules Eole. |
| 65 | 7 | Gilles Grandgérard | Il est utilisé pour : |
| 66 | 7 | Gilles Grandgérard | * générer les context de chaque modele de VM |
| 67 | 7 | Gilles Grandgérard | * générer les fresh install eole ( <module>-<version>-<architecure>.fi dans nebula ) |
| 68 | 7 | Gilles Grandgérard | * générer les daily ( <module>-<versionMajer>-daily-<architecure>.fi dans nebula ) |
| 69 | 7 | Gilles Grandgérard | |
| 70 | 5 | Gilles Grandgérard | <pre> |
| 71 | 8 | Gilles Grandgérard | eoleVersions: # liste des numéros de version géré dans l'env de test |
| 72 | 5 | Gilles Grandgérard | - 2.3.13-rc1 |
| 73 | 5 | Gilles Grandgérard | - 2.4.0 |
| 74 | 1 | Gilles Grandgérard | |
| 75 | 8 | Gilles Grandgérard | gateways: # liste des gateways par utilisateur Nebula |
| 76 | 8 | Gilles Grandgérard | - user: gilles # le nom de l'utilisateur Nebula |
| 77 | 8 | Gilles Grandgérard | prefixe: ggg # le prefixe a utilisé pour les templates, switchs, et vm |
| 78 | 8 | Gilles Grandgérard | ipsweole: 82 # l'adresse ip sur le réseau sw-eole |
| 79 | 5 | Gilles Grandgérard | |
| 80 | 8 | Gilles Grandgérard | modules: # La liste des modules connus |
| 81 | 8 | Gilles Grandgérard | - module: base # le nom du module dans les modeles |
| 82 | 8 | Gilles Grandgérard | memoire: 1024 # permet de définir la mémoire requise pour ce module |
| 83 | 8 | Gilles Grandgérard | versions: # la liste des versions de ce module |
| 84 | 8 | Gilles Grandgérard | - versionMajeur: 2.3 # dans la version 2.3.. |
| 85 | 8 | Gilles Grandgérard | menu: 1 # ... le module est en position 1 sur le menu d'installation |
| 86 | 8 | Gilles Grandgérard | actif: oui # indique que le module est déactivé dans les tests |
| 87 | 8 | Gilles Grandgérard | container: non # permet d'indiquer aux tests qu'il faut faire l'installation des conteneurs ou non |
| 88 | 6 | Gilles Grandgérard | - versionMajeur: 2.4 ... |
| 89 | 6 | Gilles Grandgérard | menu: 1 |
| 90 | 6 | Gilles Grandgérard | ... |
| 91 | 6 | Gilles Grandgérard | </pre> |
| 92 | 5 | Gilles Grandgérard | |
| 93 | 5 | Gilles Grandgérard | * ModeleReseautestEole.yaml |
| 94 | 1 | Gilles Grandgérard | |
| 95 | 1 | Gilles Grandgérard | Attention: Les gateway de chaque réseau est toujours l'ip .1 de chaque réseau |
| 96 | 9 | Gilles Grandgérard | Il est utilisé pour : |
| 97 | 9 | Gilles Grandgérard | * générer les context de chaque modele de VM |
| 98 | 9 | Gilles Grandgérard | * générer les templates de chaque machine |
| 99 | 9 | Gilles Grandgérard | * démarrer les VM lors des tests en Itégration Continue |
| 100 | 8 | Gilles Grandgérard | |
| 101 | 7 | Gilles Grandgérard | <pre> |
| 102 | 7 | Gilles Grandgérard | bases: |
| 103 | 7 | Gilles Grandgérard | - base: eole23 # nom de la base utiliser dans la description d'une machine (cf ci dessous ) |
| 104 | 7 | Gilles Grandgérard | versionMajeur: 2.3 # quel est la version majeur a utiliser. La version mineur sera déduite du fichier ModulesConf.yaml |
| 105 | 7 | Gilles Grandgérard | - base: winpcadmin |
| 106 | 7 | Gilles Grandgérard | imageNebula: windows-xp-sp3.vm # si imageNebula est presente, alors la base n'est pas EOLE ==> windows ou autre |
| 107 | 7 | Gilles Grandgérard | architecture: amd64 # dans ce cas, l'architecture doit être définie |
| 108 | 7 | Gilles Grandgérard | .... |
| 109 | 7 | Gilles Grandgérard | |
| 110 | 7 | Gilles Grandgérard | switchs: # c'est la liste des switchs nécessaire à ce modele |
| 111 | 7 | Gilles Grandgérard | - sw: academie # c'est l'id du switch . dans Nebula, il correspond à "SW-<pefixe>-academie" |
| 112 | 1 | Gilles Grandgérard | network: 192.168.0 # c'est le réseau associé à ce switch |
| 113 | 1 | Gilles Grandgérard | ... |
| 114 | 7 | Gilles Grandgérard | |
| 115 | 7 | Gilles Grandgérard | networks: # ce tag est la racine de description de tous les établissements |
| 116 | 7 | Gilles Grandgérard | - etablissement: aca # ce tag correspond à un etablissement dont le nom est 'aca'. Toutes les machines définies sous l'établissement seront |
| 117 | 7 | Gilles Grandgérard | # préfixées par <prefixe_user>.<etablissement> |
| 118 | 1 | Gilles Grandgérard | machines: # c'est la liste des machines |
| 119 | 7 | Gilles Grandgérard | |
| 120 | 7 | Gilles Grandgérard | - machine: eolebase # chaque machine a : un nom (eolebase). |
| 121 | 7 | Gilles Grandgérard | # le template de cette machine sera <prefixe_user>.<etablissement>.<machine> (ggg.aca.eolebase) |
| 122 | 7 | Gilles Grandgérard | # le nom dns sera : <machine>.<etablissement>@ac-test.fr pour les etablissement et |
| 123 | 7 | Gilles Grandgérard | # <machine>@ac-test.fr pour les machines en académie |
| 124 | 7 | Gilles Grandgérard | # Ce nom est important car il va définir un template dans les configurations enregistrées dans eole-ci-test |
| 125 | 8 | Gilles Grandgérard | module: base # c'est le nom du module (cf ModulesConf.yaml). La valeur est obligatoire pour les modules Eole |
| 126 | 8 | Gilles Grandgérard | base: eole24 # identifie l'image de base à utiliser eole23, eole24, win... |
| 127 | 8 | Gilles Grandgérard | switchs: # ce tag décris les liens de la machine |
| 128 | 8 | Gilles Grandgérard | - sw: academie # le nom du switch |
| 129 | 8 | Gilles Grandgérard | host: 24 # l'ip sur ce switch |
| 130 | 8 | Gilles Grandgérard | ... |
| 131 | 8 | Gilles Grandgérard | |
| 132 | 7 | Gilles Grandgérard | - machine: sphynx24a |
| 133 | 7 | Gilles Grandgérard | module: sphynx |
| 134 | 7 | Gilles Grandgérard | base: eole24 |
| 135 | 8 | Gilles Grandgérard | switchs: # exemple avec plusieurs switchs |
| 136 | 7 | Gilles Grandgérard | - sw: academie |
| 137 | 7 | Gilles Grandgérard | host: 11 |
| 138 | 7 | Gilles Grandgérard | - sw: agriates |
| 139 | 7 | Gilles Grandgérard | host: 11 |
| 140 | 7 | Gilles Grandgérard | - sw: ha1 |
| 141 | 7 | Gilles Grandgérard | host: 11 |
| 142 | 8 | Gilles Grandgérard | ... |
| 143 | 8 | Gilles Grandgérard | |
| 144 | 8 | Gilles Grandgérard | - machine: pcadmin # exemple pour un poste client |
| 145 | 7 | Gilles Grandgérard | base: winpcadmin |
| 146 | 7 | Gilles Grandgérard | switchs: |
| 147 | 7 | Gilles Grandgérard | - sw: admin1 |
| 148 | 7 | Gilles Grandgérard | host: 20 |
| 149 | 8 | Gilles Grandgérard | ... |
| 150 | 7 | Gilles Grandgérard | </pre> |
| 151 | 1 | Gilles Grandgérard | |
| 152 | 1 | Gilles Grandgérard | * test.yaml |
| 153 | 3 | Gilles Grandgérard | |
| 154 | 3 | Gilles Grandgérard | todo |
| 155 | 1 | Gilles Grandgérard | |
| 156 | 1 | Gilles Grandgérard | h1. Installation |
| 157 | 1 | Gilles Grandgérard | |
| 158 | 5 | Gilles Grandgérard | |
| 159 | 3 | Gilles Grandgérard | |
| 160 | 1 | Gilles Grandgérard | h2. Récupération du dépot eole-ci-test |
| 161 | 1 | Gilles Grandgérard | |
| 162 | 4 | Gilles Grandgérard | Faire : |
| 163 | 4 | Gilles Grandgérard | <pre> |
| 164 | 4 | Gilles Grandgérard | ssh://git@dev-eole.ac-dijon.fr/eole-ci-tests.git |
| 165 | 4 | Gilles Grandgérard | </pre> |
| 166 | 1 | Gilles Grandgérard | |
| 167 | 3 | Gilles Grandgérard | h2. Ajout de la gateway dans le fichier ModulesConf.yaml |
| 168 | 3 | Gilles Grandgérard | |
| 169 | 3 | Gilles Grandgérard | il faut créer une entré dans "gateways" de la forme |
| 170 | 3 | Gilles Grandgérard | <pre> |
| 171 | 3 | Gilles Grandgérard | - user: gilles |
| 172 | 3 | Gilles Grandgérard | prefixe: ggg |
| 173 | 3 | Gilles Grandgérard | ipsweole: 82 |
| 174 | 3 | Gilles Grandgérard | </pre> |
| 175 | 3 | Gilles Grandgérard | |
| 176 | 3 | Gilles Grandgérard | * Le prefixe sera ajouter à tous les templates, et à toutes les VM démarrées. |
| 177 | 3 | Gilles Grandgérard | Les switchs auront la forme SW-<prefixe>-<switch_dans_modele> |
| 178 | 1 | Gilles Grandgérard | * ipsweole est l'ip a utilisr dans 192.168.230 comme gateway vers le réseau |
| 179 | 1 | Gilles Grandgérard | |
| 180 | 4 | Gilles Grandgérard | h2. Ajout de la clef publique ssh dans eole-ci-tests/security/authorized_keys |
| 181 | 1 | Gilles Grandgérard | |
| 182 | 4 | Gilles Grandgérard | Les clefs publiques SSH preentent dans eole-ci-tests/security/authorized_keys sont automatiquement concatenées dans /root/.ssh/authorized_keys au 1er démarrage de la VM. |
| 183 | 4 | Gilles Grandgérard | L'acces a chaque VM peut se faire sans mot de passe. |
| 184 | 4 | Gilles Grandgérard | |
| 185 | 4 | Gilles Grandgérard | Utiliser le nom 'user@hostname' pour votre fichier de cle. |
| 186 | 3 | Gilles Grandgérard | |
| 187 | 1 | Gilles Grandgérard | h1. Creation d'un test |
| 188 | 1 | Gilles Grandgérard | |
| 189 | 3 | Gilles Grandgérard | todo |
| 190 | 3 | Gilles Grandgérard | |
| 191 | 1 | Gilles Grandgérard | h1. Lancement dans jenkins |
| 192 | 3 | Gilles Grandgérard | |
| 193 | 3 | Gilles Grandgérard | h2. Mise à jour de "eole-ci-tests" sur toutes les VM |
| 194 | 3 | Gilles Grandgérard | |
| 195 | 3 | Gilles Grandgérard | todo |
| 196 | 1 | Gilles Grandgérard | |
| 197 | 1 | Gilles Grandgérard | h2. |