« Modèle:SE4ArchitectureMigration » : différence entre les versions

De wiki-se.plil.fr
Aller à la navigation Aller à la recherche
(Page créée avec « == Préparation des travaux pratiques "migration" == Vous allez préparer le terrain pour les travaux pratiques de migration de machine virtuelles créées dans un environnement de type VMWare. Cette préparation doit se faire proprement en utilisant Ansible pour configurer les machines. === Schéma synthétique === Comme indiqué sur le schéma ci-dessous les travaux pratiques de migration se font en utilisant, par binôme, deux hyperviseurs et une machine de... »)
 
 
(3 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
== Préparation des travaux pratiques "migration" ==
= Préparation des travaux pratiques "migration" =


Vous allez préparer le terrain pour les travaux pratiques de migration de machine virtuelles créées dans un environnement de type VMWare. Cette préparation doit se faire proprement en utilisant Ansible pour configurer les machines.
Vous allez préparer le terrain pour les travaux pratiques de migration de machine virtuelles créées dans un environnement de type VMWare. Cette préparation doit se faire proprement en utilisant Ansible pour configurer les machines.


=== Schéma synthétique ===
== Schéma synthétique ==


Comme indiqué sur le schéma ci-dessous les travaux pratiques de migration se font en utilisant, par binôme, deux hyperviseurs et une machine de services fournissant , principalement, un service de stockage. Les deux hyperviseurs sont implantés sur deux stations de travail de même type via l'installation du système d'exploitation ESXi de VMWare.
Comme indiqué sur le schéma ci-dessous les travaux pratiques de migration se font en utilisant, par binôme, deux hyperviseurs et une machine de services fournissant , principalement, un service de stockage. Les deux hyperviseurs sont implantés sur deux stations de travail de même type via l'installation du système d'exploitation ESXi de VMWare.
Ligne 42 : Ligne 42 :
Le numéro de la <code>zabeth</code> utilisée en premier hyperviseur est noté <code>A</code> et le numéro de la <code>zabeth</code> utilisée en second hyperviseur est noté <code>B</code>. Attention ces notations sont utilisées pour la description des rôles Ansible.
Le numéro de la <code>zabeth</code> utilisée en premier hyperviseur est noté <code>A</code> et le numéro de la <code>zabeth</code> utilisée en second hyperviseur est noté <code>B</code>. Attention ces notations sont utilisées pour la description des rôles Ansible.


=== Installation de la distribution Devuan ===
== Installation de la distribution Devuan ==


Tous les binômes doivent installer une distribution Linux Devuan daedalus sur les machines d'administration, i.e. les anciennes stations de travail. Pour ce faire vous devez récupérer la bonne version de l'image ISO du DVD d'installation netinst, vous devez installer cette image sur une clef USB et vous devez démarrer la station de travail en amorçant sur la clef. Le plus simple pour copier l'image sur la clef est d'utiliser l'utilitaire <code>dd</code> avec comme "input file" (<code>if</code>) l'image ISO et comme "output file" (<code>of</code>) le périphérique bloc correspondant à la clef. Pour récupérer le périphérique bloc de la clef utilisez l'utilitaire <code>lsblk</code>.
Tous les binômes doivent installer une distribution Linux Devuan daedalus sur les machines d'administration, i.e. les anciennes stations de travail. Pour ce faire vous devez récupérer la bonne version de l'image ISO du DVD d'installation netinst, vous devez installer cette image sur une clef USB et vous devez démarrer la station de travail en amorçant sur la clef. Le plus simple pour copier l'image sur la clef est d'utiliser l'utilitaire <code>dd</code> avec comme "input file" (<code>if</code>) l'image ISO et comme "output file" (<code>of</code>) le périphérique bloc correspondant à la clef. Pour récupérer le périphérique bloc de la clef utilisez l'utilitaire <code>lsblk</code>.


=== Tâches supplémentaires ===
== Tâches supplémentaires ==


==== Câblage des anciennes stations ====
=== Câblage des anciennes stations ===


Un binôme s'occupe de la mise en place des commutateurs gigabit, un sur une table en E304, un autre dans la baie serveurs en E306. Les commutateurs doivent avoir tous leurs ports configurés dans le VLAN 50. Le même binôme effectue les câblages en utilisant des câbles de longueur adaptée et en utilisant le chemin de câble de la E306. Le câblage doit pouvoir rester en place jusqu'aux travaux pratiques de migration sans entraver le moins du monde le fonctionnement des salles.
Un binôme s'occupe de la mise en place des commutateurs gigabit, un sur une table en E304, un autre dans la baie serveurs en E306. Les commutateurs doivent avoir tous leurs ports configurés dans le VLAN 50. Le même binôme effectue les câblages en utilisant des câbles de longueur adaptée et en utilisant le chemin de câble de la E306. Le câblage doit pouvoir rester en place jusqu'aux travaux pratiques de migration sans entraver le moins du monde le fonctionnement des salles.


==== Installation de disques ====
=== Installation de disques ===


Un binôme se charge d'ajouter un second disque dans les stations de travail optiplex 7060 qui vont être utilisée comme hyperviseur et qui ne possédent qu'un disque.
Un binôme se charge d'ajouter un second disque dans les stations de travail optiplex 7060 qui vont être utilisée comme hyperviseur et qui ne possédent qu'un disque.


==== Configuration d'un serveur Ansible ====
=== Configuration d'un serveur Ansible ===


Le serveur Ansible doit être installé sur  la <code>zabeth15</code> qui n'est pas utilisée comme hyperviseur. Vous commencez par créer une clef asymétrique comme montré en cours et vous diffusez la partie publique par courriel à l'ensemble de la promotion. Charge aux divers binômes d'installer la clef publique dans le fichier <code>/root/.ssh/authorized_keys</code> de leur NAS.
Le serveur Ansible doit être installé sur  la <code>zabeth15</code> qui n'est pas utilisée comme hyperviseur. Vous commencez par créer une clef asymétrique comme montré en cours et vous diffusez la partie publique par courriel à l'ensemble de la promotion. Charge aux divers binômes d'installer la clef publique dans le fichier <code>/root/.ssh/authorized_keys</code> de leur NAS.
Ligne 67 : Ligne 67 :
C'est à la charge des autres binôme de s'assurer que tous les rôles s'exécutent bien sur leur propre machine d'administration et aux binôme chargés des rôles que ceux-ci sont fonctionnels.
C'est à la charge des autres binôme de s'assurer que tous les rôles s'exécutent bien sur leur propre machine d'administration et aux binôme chargés des rôles que ceux-ci sont fonctionnels.


==== Configuration des rôles Ansible ====
=== Configuration des rôles Ansible ===


Les rôles Ansible ci-dessous doivent être créés sur le serveur Ansible. Un seul binôme se charge des deux premiers rôles triviaux.
Les rôles Ansible ci-dessous doivent être créés sur le serveur Ansible. Un seul binôme se charge des deux premiers rôles triviaux.
* un rôle de propagation de fichiers systèmes généraux :  
* un rôle de propagation de fichiers systèmes généraux :  
** <code>/etc/network/interfaces</code> ne contenant que la définition de l'interface loopback,
** <code>/etc/network/interfaces</code> ne contenant que la définition de l'interface loopback,
** <code>/etc/default/ntpdate</code> contenant la référence au serveur NTP de l'école <code>ntp.polytech-lille.fr</code>,
** <code>/etc/default/ntpdate</code> contenant la référence au serveur NTP de la plateforme <code>ntp.plil.info</code>,
** <code>/etc/apt/sources.list</code> contenant les lignes pour les dépots Devuan <code>daedalus</code>, regardez les fichiers sur les <code>zabeth</code> pour référence,
** <code>/etc/apt/sources.list</code> contenant les lignes pour les dépots Devuan <code>daedalus</code>, regardez les fichiers sur les <code>zabeth</code> pour référence,
** et tout autre fichier nécessaire au bon fonctionnement des travaux pratiques de migration ;
** et tout autre fichier nécessaire au bon fonctionnement des travaux pratiques de migration ;
Ligne 81 : Ligne 81 :
** paquetage <code>ntp</code> et <code>ntpdate</code> pour la mise à l'heure,
** paquetage <code>ntp</code> et <code>ntpdate</code> pour la mise à l'heure,
** et tout autre paquetage demandé par un autre groupe ;
** et tout autre paquetage demandé par un autre groupe ;
* un rôle de configuration de l'interface réseau de la carte mère des anciennes stations, placez un fichier de configuration dans <code>/etc/network/interfaces.d</code> créé à partir d'un modèle et de la directive <code>map</code>, l'interface doit avoir son adresse dans le réseau des salles de projets (VLAN 50) comme adresse IPv4 principale et son adresse dans le réseau d'administration des travaux pratiques de migration comme adresse secondaire, soit <code>10.10.A.4/24</code>;
* un rôle de configuration de l'interface réseau de la carte mère des anciennes stations, placez un fichier de configuration dans <code>/etc/network/interfaces.d</code> créé à partir d'un modèle et d'une variable de type dictionnaire, l'interface doit avoir son adresse dans le réseau des salles de projets (VLAN 50) comme adresse IPv4 principale et son adresse dans le réseau d'administration des travaux pratiques de migration comme adresse secondaire, soit <code>10.10.A.4/24</code>;
* un rôle de configuration du commutateur virtuel de stockage englobant les deux interfaces réseau PCI express, placez le fichier de configuration dans <code>/etc/network/interfaces.d</code>, crééz-le à partir d'un modèle et de la directive <code>map</code>, le commutateur doit avoir comme adresse IPv4, son adresse dans le réseau de stockage, soit <code>10.10.B.4/24</code> ;
* un rôle de configuration du commutateur virtuel de stockage englobant les deux interfaces réseau PCI express, placez le fichier de configuration dans <code>/etc/network/interfaces.d</code>, crééz-le à partir d'un modèle et d'une variable de type dictionnaire, le commutateur doit avoir comme adresse IPv4, son adresse dans le réseau de stockage, soit <code>10.10.B.4/24</code> ;
* un rôle de configuration pour utiliser le serveur NTP de l'école  <code>ntp.polytech-lille.fr</code> ;
* un rôle de configuration pour utiliser le serveur NTP de l'école  <code>ntp.plil.info</code> ;
* un rôle pour configurer le DNS, en particulier pour envoyer le fichier statique <code>named.conf.local</code> mais aussi le fichier à adapter <code>db.pifou.lan</code> pour lequel vous utiliserez un modèle et la directive <code>map</code>, le fichier à adapter est présent dans l'archive des travaux pratiques sur la <code>zabeth15</code> et le fichier statique est dans le sujet des travaux pratiques disponible dans la même archive ;
* un rôle pour configurer le DNS, en particulier pour envoyer le fichier statique <code>named.conf.local</code> mais aussi le fichier à adapter <code>db.pifou.lan</code> pour lequel vous utiliserez un modèle et une variable de type dictionnaire, le fichier à adapter est présent dans l'archive des travaux pratiques sur la <code>zabeth15</code> et le fichier statique est dans le sujet des travaux pratiques disponible dans la même archive ;
* un rôle pour configurer le serveur NFS, à savoir pour propager le fichier <code>/etc/exports</code> mais aussi pour créer le répertoire concerné ;
* un rôle pour configurer le serveur NFS, à savoir pour propager le fichier <code>/etc/exports</code> mais aussi pour créer le répertoire concerné ;
* un rôle pour installer une mascarade sur les machines d'administration concernant leur réseau d'administration pour pouvoir contacter le réseau de l'école, les règles <code>iptables</code> doivent être rendues permanentes avec le paquetage <code>iptables-persistent</code> ;
* un rôle pour installer une mascarade sur les machines d'administration concernant leur réseau d'administration pour pouvoir contacter le réseau de l'école, les règles <code>iptables</code> doivent être rendues permanentes avec le paquetage <code>iptables-persistent</code> ;
* un rôle pour recopier de l'archive des travaux pratiques de migration à partir d'un original sur la <code>zabeth15</code>, la recopie doit être lancée par <code>rsync</code> et en tâche de fond pour ne pas bloquer la propagation des configuration par Ansible, il est conseillé de regarder [https://www.middlewareinventory.com/blog/ansible-async/] pour écrire correctement ce rôle.
* un rôle pour recopier de l'archive des travaux pratiques de migration à partir d'un original sur la <code>zabeth15</code>, la recopie doit être lancée par <code>rsync</code> et en tâche de fond pour ne pas bloquer la propagation des configuration par Ansible, il est conseillé de regarder [https://www.middlewareinventory.com/blog/ansible-async/] pour écrire correctement ce rôle.
== Annexes ==
Fichier source schéma architecture des travaux pratiques "Migration" : [[Media:2023_Architecture_TP_Migration.svg]]

Version actuelle datée du 10 février 2024 à 23:41

Préparation des travaux pratiques "migration"

Vous allez préparer le terrain pour les travaux pratiques de migration de machine virtuelles créées dans un environnement de type VMWare. Cette préparation doit se faire proprement en utilisant Ansible pour configurer les machines.

Schéma synthétique

Comme indiqué sur le schéma ci-dessous les travaux pratiques de migration se font en utilisant, par binôme, deux hyperviseurs et une machine de services fournissant , principalement, un service de stockage. Les deux hyperviseurs sont implantés sur deux stations de travail de même type via l'installation du système d'exploitation ESXi de VMWare.

2023 Architecture TP Migration.png

Les machines d'administration doivent être réalisées à partir des anciennes stations de travail que vous devez renommer en NASXX et repérer avec les étiquettes données. Ces machines doivent avoir une adresse dans le réseau des salles projets de la forme 172.26.145.30+XX. Ces machines doivent être reliées au réseau des salles via deux commutateurs gigabit à installer en E304 et E306.

Pour réaliser le câblage du réseau de stockage votre NAS doit être à coté de vos hyperviseurs. Pour savoir où installer physiquement votre NAS la liste des postes de travail est donnée ci-dessous.

Poste de travail Salle Hyperviseur 1 Hyperviseur 2
Poste n°1 E302 zabeth26 zabeth27
Poste n°2 E304 zabeth02 zabeth03
Poste n°3 E304 zabeth04 zabeth05
Poste n°4 E304 zabeth06 zabeth07
Poste n°5 E304 zabeth08 zabeth10
Poste n°6 E304 zabeth09 zabeth11
Poste n°7 E304 zabeth12 zabeth28 (à rapatrier de la E302 à la E304)
Poste n°8 E306 zabeth13 zabeth17
Poste n°9 E306 zabeth14 zabeth16
Poste n°10 E306 zabeth18 zabeth19
Poste n°11 E306 zabeth20 zabeth21

Le numéro de la zabeth utilisée en premier hyperviseur est noté A et le numéro de la zabeth utilisée en second hyperviseur est noté B. Attention ces notations sont utilisées pour la description des rôles Ansible.

Installation de la distribution Devuan

Tous les binômes doivent installer une distribution Linux Devuan daedalus sur les machines d'administration, i.e. les anciennes stations de travail. Pour ce faire vous devez récupérer la bonne version de l'image ISO du DVD d'installation netinst, vous devez installer cette image sur une clef USB et vous devez démarrer la station de travail en amorçant sur la clef. Le plus simple pour copier l'image sur la clef est d'utiliser l'utilitaire dd avec comme "input file" (if) l'image ISO et comme "output file" (of) le périphérique bloc correspondant à la clef. Pour récupérer le périphérique bloc de la clef utilisez l'utilitaire lsblk.

Tâches supplémentaires

Câblage des anciennes stations

Un binôme s'occupe de la mise en place des commutateurs gigabit, un sur une table en E304, un autre dans la baie serveurs en E306. Les commutateurs doivent avoir tous leurs ports configurés dans le VLAN 50. Le même binôme effectue les câblages en utilisant des câbles de longueur adaptée et en utilisant le chemin de câble de la E306. Le câblage doit pouvoir rester en place jusqu'aux travaux pratiques de migration sans entraver le moins du monde le fonctionnement des salles.

Installation de disques

Un binôme se charge d'ajouter un second disque dans les stations de travail optiplex 7060 qui vont être utilisée comme hyperviseur et qui ne possédent qu'un disque.

Configuration d'un serveur Ansible

Le serveur Ansible doit être installé sur la zabeth15 qui n'est pas utilisée comme hyperviseur. Vous commencez par créer une clef asymétrique comme montré en cours et vous diffusez la partie publique par courriel à l'ensemble de la promotion. Charge aux divers binômes d'installer la clef publique dans le fichier /root/.ssh/authorized_keys de leur NAS.

Le binôme en charge de la configuration du serveur Ansible doit aussi :

  • créer le fichier d'inventaire des machines d'administration ;
  • créer le "jeu" (playbook) appliquant les rôles réalisés par les autres binômes à l'ensemble des machines d'administration ;
  • tester la bonne exécution de la commande uname -a sur l'ensemble des machines d'administration.

C'est à la charge des autres binôme de s'assurer que tous les rôles s'exécutent bien sur leur propre machine d'administration et aux binôme chargés des rôles que ceux-ci sont fonctionnels.

Configuration des rôles Ansible

Les rôles Ansible ci-dessous doivent être créés sur le serveur Ansible. Un seul binôme se charge des deux premiers rôles triviaux.

  • un rôle de propagation de fichiers systèmes généraux :
    • /etc/network/interfaces ne contenant que la définition de l'interface loopback,
    • /etc/default/ntpdate contenant la référence au serveur NTP de la plateforme ntp.plil.info,
    • /etc/apt/sources.list contenant les lignes pour les dépots Devuan daedalus, regardez les fichiers sur les zabeth pour référence,
    • et tout autre fichier nécessaire au bon fonctionnement des travaux pratiques de migration ;
  • un rôle d'installation des paquetages nécessaires pour les divers autres rôles :
    • paquetage bind9 pour le serveur DNS,
    • paquetage nfs-kernel-server pour le serveur NFS,
    • paquetage bridge-utils pour la création de commutateurs virtuels,
    • paquetage ntp et ntpdate pour la mise à l'heure,
    • et tout autre paquetage demandé par un autre groupe ;
  • un rôle de configuration de l'interface réseau de la carte mère des anciennes stations, placez un fichier de configuration dans /etc/network/interfaces.d créé à partir d'un modèle et d'une variable de type dictionnaire, l'interface doit avoir son adresse dans le réseau des salles de projets (VLAN 50) comme adresse IPv4 principale et son adresse dans le réseau d'administration des travaux pratiques de migration comme adresse secondaire, soit 10.10.A.4/24;
  • un rôle de configuration du commutateur virtuel de stockage englobant les deux interfaces réseau PCI express, placez le fichier de configuration dans /etc/network/interfaces.d, crééz-le à partir d'un modèle et d'une variable de type dictionnaire, le commutateur doit avoir comme adresse IPv4, son adresse dans le réseau de stockage, soit 10.10.B.4/24 ;
  • un rôle de configuration pour utiliser le serveur NTP de l'école ntp.plil.info ;
  • un rôle pour configurer le DNS, en particulier pour envoyer le fichier statique named.conf.local mais aussi le fichier à adapter db.pifou.lan pour lequel vous utiliserez un modèle et une variable de type dictionnaire, le fichier à adapter est présent dans l'archive des travaux pratiques sur la zabeth15 et le fichier statique est dans le sujet des travaux pratiques disponible dans la même archive ;
  • un rôle pour configurer le serveur NFS, à savoir pour propager le fichier /etc/exports mais aussi pour créer le répertoire concerné ;
  • un rôle pour installer une mascarade sur les machines d'administration concernant leur réseau d'administration pour pouvoir contacter le réseau de l'école, les règles iptables doivent être rendues permanentes avec le paquetage iptables-persistent ;
  • un rôle pour recopier de l'archive des travaux pratiques de migration à partir d'un original sur la zabeth15, la recopie doit être lancée par rsync et en tâche de fond pour ne pas bloquer la propagation des configuration par Ansible, il est conseillé de regarder [1] pour écrire correctement ce rôle.

Annexes

Fichier source schéma architecture des travaux pratiques "Migration" : Media:2023_Architecture_TP_Migration.svg