TP sysres IMA5sc 2018/2019 G11 : Différence entre versions
(→Déroulé du TP) |
(→Déroulé du TP) |
||
Ligne 63 : | Ligne 63 : | ||
Création du commutateurs virtuels et des interfaces virtuels | Création du commutateurs virtuels et des interfaces virtuels | ||
− | (numero de PID arbitraire) | + | ip link set vif1 master monpont |
+ | ip link set vif2 master monpont | ||
+ | ip link set vif3 master monpont | ||
+ | ip link set vif4 master monpont | ||
+ | |||
+ | Activation de monpont et des vifs | ||
+ | ip link set dev monpont up | ||
+ | ip link set dev vif1 up | ||
+ | ip link set dev vif2 up | ||
+ | ip link set dev vif3 up | ||
+ | ip link set dev vif4 up | ||
+ | |||
+ | Connection: | ||
+ | (numero de PID arbitraire) | ||
ip link set eth0@vif2 netns /proc/27880/ns/net name eth0 // pour vif 1 | ip link set eth0@vif2 netns /proc/27880/ns/net name eth0 // pour vif 1 | ||
ip link set eth0@vif2 netns /proc/27879/ns/net name eth0 // pour vif 2 | ip link set eth0@vif2 netns /proc/27879/ns/net name eth0 // pour vif 2 | ||
Ligne 70 : | Ligne 83 : | ||
− | |||
− | |||
(numéro de PID arbitraire) | (numéro de PID arbitraire) | ||
Ligne 78 : | Ligne 89 : | ||
nsenter -t 27881 -n ip address add dev eth0 192.168.0.4/24 //pour C3 | nsenter -t 27881 -n ip address add dev eth0 192.168.0.4/24 //pour C3 | ||
− | + | Dans chaque conteneur : | |
+ | ip link set eth0 up | ||
+ | ip link set dev lo up | ||
+ | |||
+ | |||
Objectif de la séance : installer reverse proxy sur un conteneur et 2 serveurs web sur les autres. | Objectif de la séance : installer reverse proxy sur un conteneur et 2 serveurs web sur les autres. |
Version du 19 novembre 2018 à 09:21
Sommaire
Présentation générale
Lors de ce TP nous allons apprendre à utiliser docker. Dans un premier temps nous réaliserons à la main 3 dockers interconnectés à l'aide d'un commutateur virtuel puis nous utiliserons directement la solution Docker.
Déroulé du TP
Séance 1 : 12/11/2018
Etapes réalisées : création de 3 systèmes de fichiers c1,c2,c3 On peut vérifier l'isolation de nos conteneurs en faisant df -h ou une fois le unshare réalisé en tapant le ps aux
création du commutateur logiciel : monpont On peut vérifier sa bonne activation avec la commande : brctl show
création des interfaces virtuel
Pour chacun des conteneurs on va créer une interface virtuel vifX qui sera relié à "monpont" et à chaque conteneur. Un des conteneurs sera relié au commutateur logiciel de la zabeth afin de nous relier au monde extérieur, ce sera lui le mandataire inverse. Pour nous il s'agit de C1. On peut vérifier la bonne liaison entre le conteneur et le commutateur logiciel en tapant ip l dans chacun des conteneurs et en regardant les interfaces reliées à brctl show.
Attention, parfois Docker est source de problèmes pour nos manipulations, pour s'en débarrasser on tape les commandes suivantes :
iptables -F iptables -F -t nat iptables -P FORWARD ACCEPT
On va maintenant ajouter une IP à chaque interface virtuel pour être capable réaliser un ping depuis le réseau.
Pour cela on se sert de ip address add et de ip route add.
sur chaque conteneur : ip address add dev eth0 192.168.0.x ip l set eth0 up
on vérifie en faisant ip r et on peut pinger nos machines entres elles !
Attention : tout les ip add seront supprimées au prochain reboot. Probablement de même pour les interfaces virtuels.
Séance 2 : 19/11/2018
Lors du démarrage de la séance pour ressusciter ce que l'on avait fait la dernière fois:
mkdir c1,c2,c3
copie base fichiers
export https_proxy="https://proxy.polytech-lille.fr:3128" export http_proxy="http://proxy.polytech-lille.fr:3128" debootstrap --include=apache2,vim stable /tmp/c1 // de même pour c2 et c3
Montage media
mount -o loop /home/pifou/firstconteneur /tmp/c1 // de même pour c2 et c3 mount -o loop /home/pifou/firstconteneur2 /tmp/c2 mount -o loop /home/pifou/firstconteneur3 /tmp/c3
Création machine
unshare -p -f -m -n -u chroot /tmp/c1 /bin/sh -c "mount /proc ; /bin/bash" unshare -p -f -m -n -u chroot /tmp/c2 /bin/sh -c "mount /proc ; /bin/bash" unshare -p -f -m -n -u chroot /tmp/c3 /bin/sh -c "mount /proc ; /bin/bash"
Création du commutateurs virtuels et des interfaces virtuels
ip link set vif1 master monpont ip link set vif2 master monpont ip link set vif3 master monpont ip link set vif4 master monpont
Activation de monpont et des vifs
ip link set dev monpont up ip link set dev vif1 up ip link set dev vif2 up ip link set dev vif3 up ip link set dev vif4 up
Connection: (numero de PID arbitraire)
ip link set eth0@vif2 netns /proc/27880/ns/net name eth0 // pour vif 1 ip link set eth0@vif2 netns /proc/27879/ns/net name eth0 // pour vif 2 ip link set eth0@vif2 netns /proc/27881/ns/net name eth0 // pour vif 3 ip link set eth0@vif2 netns /proc/27882/ns/net name eth0 // pour vif 4
(numéro de PID arbitraire) nsenter -t 27879 -n ip address add dev eth0 192.168.0.2/24 //pour C1 nsenter -t 27880 -n ip address add dev eth0 192.168.0.3/24 //pour C2 nsenter -t 27881 -n ip address add dev eth0 192.168.0.4/24 //pour C3
Dans chaque conteneur :
ip link set eth0 up ip link set dev lo up
Objectif de la séance : installer reverse proxy sur un conteneur et 2 serveurs web sur les autres.