Reupload (purge)
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
# L'infra avancée :
|
||||
|
||||
## Exercice 1
|
||||
|
||||
### Lancer une machine
|
||||
|
||||
`qemu-img create -f qcow2 'C:\Program Files\qemu\testVM.qcow2' 10G`
|
||||
|
||||
`qemu-system-x86_64 -m 2048 -hda 'C:\_VMs\testVM.qcow2' -cdrom 'D:\Users\GaWin\Downloads\_Compressed\debian-13.1.0-amd64-netinst.iso' -boot d`
|
||||
|
||||
Pour lancer une machine depuis le disque :
|
||||
|
||||
`qemu-system-x86_64 -m 4096 -smp 4 -hda 'C:\_VMs\testVM.qcow2' -boot c`
|
||||
|
||||
- -boot d : Boot sur le CD/ROM
|
||||
- -boot c : Boot sur le Disque Dur
|
||||
- m XXXX : Alloue une mémoire RAM fixe
|
||||
- smp X : Alloue un nombre de coeurs virtuels fixe
|
||||
|
||||
Pour convertir le .qcow2 en .vdi, dans l'interface c'est plus clair.
|
||||
|
||||
## Exercice 2
|
||||
|
||||
### Créer une VM
|
||||
|
||||
Pour refaire une VM en CLI :
|
||||
|
||||
```
|
||||
vboxmanage createvm --basefolder="C:\_VMs\VirtualCreationCLI" --register --name "VirtualBoxCLI"
|
||||
|
||||
vboxmanage storagectl "VirtualBoxCLI" --name "sata-controller" --add sata --controller IntelAHCI --portcount 1 --bootable on
|
||||
|
||||
vboxmanage storageattach "VirtualBoxCLI" --storagectl "sata-controller" --port 0 --device 0 --type hdd --medium ".\test_copy.vdi"
|
||||
|
||||
vboxmanage modifyvm "VirtualBoxCLI" --memory 4096 --cpus 4
|
||||
```
|
||||
|
||||
### Convertir un disque virtuel .qcow2 en CLI
|
||||
|
||||
https://github.com/michaelrudy/qemu-img-convert
|
||||
|
||||
D'abord, dans la VM d'origine, il faut préparer la transition :
|
||||
|
||||
```
|
||||
sudo tee /etc/dracut.conf.d/hyperv.conf >/dev/null <<'EOF'
|
||||
add_drivers+=" hv_vmbus hv_storvsc hv_netvsc hv_utils "
|
||||
hostonly="no"
|
||||
EOF
|
||||
|
||||
sudo dracut -f --kver "$(uname -r)"
|
||||
|
||||
ls -lh /boot/initramfs-$(uname -r).img ### pour confirmer
|
||||
|
||||
cat /etc/fstab
|
||||
blkid
|
||||
|
||||
sudo shutdown -h now
|
||||
```
|
||||
|
||||
`qemu-img convert -f qcow2 -O vhdx -o subformat=dynamic .\test.qcow2 .\test_copy.vhdx`
|
||||
|
||||
Bizarrement, pour que la conversion soit prise en compte par Hyper-V, il faut lancer cette commande :
|
||||
|
||||
`fsutil sparse setflag .\test_copy.vhdx 0`
|
||||
|
||||
### Cloner une VM en CLI
|
||||
|
||||
Exporter pour VirtualBox
|
||||
`vboxmanage clonevm "VirtualBoxCLI" --basefolder ".\NewVirtualBoxCLI" --name "NewVirtualBoxCLI" --register`
|
||||
|
||||
Exporter pour HyperV
|
||||
```
|
||||
Export-VM -Name "HyperVCLI" -Path "C:\_VMs\HyperVCLI" -CaptureLiveState CaptureSavedState
|
||||
|
||||
Import-VM -Name "NewHyperVCLI" -Path "C:\_VMs\HyperVCLI\{ID-de-ses-morts}.vmcx" -Copy -GenerateNewId -VirtualMachinePath "C:\_VMs\NewHyperVCLI" -VhdDestinationPath "C:\_VMs\NewHyperVCLI"
|
||||
```
|
||||
@@ -0,0 +1,161 @@
|
||||
# Infra avancée
|
||||
|
||||
## Cours
|
||||
|
||||
### Contenerisation
|
||||
|
||||
- Namespace : les processus ne peuvent pas voir les ressources utilisées par l'hôte ou ses congénères
|
||||
- cgroups : contrôle des ressources allouées à un processus
|
||||
|
||||
#### Solutions :
|
||||
|
||||
- Docker / Podman
|
||||
- OpenVZ
|
||||
- Les zones (Solaris)
|
||||
- Les jails (FreeBSD)
|
||||
- LXC
|
||||
|
||||
### LXC
|
||||
|
||||
```
|
||||
# Avec interactivté
|
||||
sudo lxc-create -n NOM_CONTENEUR -t download
|
||||
|
||||
# Sans interactivité (pour script)
|
||||
sudo lxc-create --template=download --name NOM_CONTENEUR -- --dist NOM_DISTRIBUTION --release NUMERO_VERSION --arch amd64
|
||||
```
|
||||
|
||||
```
|
||||
# Démarrer
|
||||
sudo lxc-start -n NOM_CONTENEUR
|
||||
|
||||
# Entrer dans un conteneur
|
||||
sudo lxc-attach -n NOM_CONTENEUR
|
||||
|
||||
# Stopper
|
||||
sudo lxc-stop -n NOM_CONTENEUR
|
||||
|
||||
# Supprimer
|
||||
sudo lxc-destroy -n NOM_CONTENEUR
|
||||
|
||||
# Lister
|
||||
sudo lxc-ls (--active, --running, --frozen)
|
||||
|
||||
# Info sur conteneur précis
|
||||
sudo lxc-info -n NOM_CONTENEUR
|
||||
```
|
||||
|
||||
Fichier config du conteneur (/var/lib/lxc/xxx) :
|
||||
```
|
||||
# Méthode 1 : Montage d'un dossier de l'hôte
|
||||
lxc.mount.entry = /dossier_hote dossier_interne_conteneur none bind,create=dir 0 0
|
||||
|
||||
# Méthode 2 : Montage d'un disque entier ou partition de l'hôte
|
||||
lxc.mount.entry = /dev/disque_ou_partition dossier_interne_conteneur FS_type defaults,create=dir 0 0
|
||||
```
|
||||
|
||||
## Exercice 1
|
||||
|
||||
https://dl-cdn.alpinelinux.org/alpine/v3.17/releases/x86_64/alpine-xen-3.17.10-x86_64.iso
|
||||
|
||||
```
|
||||
wget https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-13.1.0-amd64-netinst.iso
|
||||
|
||||
mv debian-13.1.0-amd64-netinst.iso debian.iso
|
||||
|
||||
sudo chmod 666 debian.iso
|
||||
```
|
||||
|
||||
Ensuite
|
||||
|
||||
```
|
||||
sudo virt-install \
|
||||
--name test-vm \
|
||||
--os-variant=debiantesting \
|
||||
--ram 2048 \
|
||||
--vcpus 2 \
|
||||
--location ./debian.iso \
|
||||
--disk path=/var/lib/libvirt/images/vm.qcow2,size=15,format=qcow2 \
|
||||
--graphics none \
|
||||
--console pty,target_type=serial \
|
||||
--extra-args "console=ttys0,115200n8 serial"
|
||||
```
|
||||
|
||||
`virsh attach-interface --type bridge --source enp0s3 --model virtio test-vm`
|
||||
|
||||
## Exercice 2
|
||||
|
||||
### Petit A
|
||||
|
||||
C'est installé.
|
||||
|
||||
### Petit B
|
||||
|
||||
```
|
||||
sudo lxc-create -n ConteneurDebian -t download
|
||||
# debian, bullseye, amd64
|
||||
|
||||
sudo lxc-start ConteneurDebian
|
||||
sudo lxc-attach ConteneurDebian
|
||||
|
||||
### In the container ###
|
||||
uname -a
|
||||
|
||||
> Linux ConteneurDebian 6.1.0-40-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.153-1 (2025-09-20) x86_64 GNU/Linux
|
||||
|
||||
cat /proc/version
|
||||
> Linux version 6.1.0-40-amd64 (gcc-12 (Debian 12.2.0-14+deb12u1) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP PREEMPT_DYNAMIC Debian 6.1.153-1 (2025-09-20)
|
||||
|
||||
exit
|
||||
|
||||
### Outside the container ###
|
||||
|
||||
sudo lxc-ls
|
||||
> ConteneurDebian Test-Linux
|
||||
|
||||
sudo lxc-ls --running
|
||||
> ConteneurDebian
|
||||
|
||||
sudo lxc-stop ConteneurDebian
|
||||
|
||||
sudo lxc-ls --running
|
||||
>
|
||||
```
|
||||
|
||||
### Petit C
|
||||
|
||||
```
|
||||
sudo ls -glAiF /var/lib/lxc/
|
||||
> ConteneurDebian
|
||||
> Test-Linux
|
||||
|
||||
sudo ls -glAiF /var/lib/lxc/ConteneurDebian
|
||||
> -rw-r----- root config
|
||||
> drwxr-xr-x root rootfs/
|
||||
|
||||
sudo du -h -glAiF /var/lib/lxc/ConteneurDebian
|
||||
> ...
|
||||
> 412M
|
||||
|
||||
sudo lxc-copy -n ConteneurDebian -N NewConteneur ### -N pour NewName
|
||||
|
||||
sudo ls -glAiF /var/lib/lxc/
|
||||
> ConteneurDebian
|
||||
> NewConteneur
|
||||
> Test-Linux
|
||||
```
|
||||
|
||||
### Petit D
|
||||
|
||||
```
|
||||
sudo nano /var/lib/lxc/ConteneurDebian/config
|
||||
|
||||
### Dans le fichier config ###
|
||||
|
||||
# Folder Attachment
|
||||
lxc.mount.entry = /mnt/lxc-debian-storage /var/lib/lxc/ConteneurDebian/rootfs/data none bind,create=dir 0 0
|
||||
|
||||
### Fin du fichier config ###
|
||||
|
||||
|
||||
```
|
||||
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
@@ -0,0 +1,85 @@
|
||||
# Exos
|
||||
|
||||
Les réponses entre guillements anglais "" sont des corrections.
|
||||
|
||||
## 02.2.2 Questionnaire + Correction sur La containérisation
|
||||
|
||||
1. La virtualisation classique embarque un noyau complet ainsi que les couches micro-logiciels et divers pilotes. Un conteneur n'embarque que la partie applicative et repose sur un noyau principal de la machine hôte
|
||||
2. LXC embarque des conteneurs complets, avec kernels, sorte de VM légèrement allégée et plus flexible. Docker conteneurise à l'ancienne
|
||||
3. "cgroups et namespaces"
|
||||
4. En dur : Librairie C, kernel linux supérieur à 3.8. Recommandé : libcap, libapparmor, libselinux, libseccomp, libgnutls, liblua, python3-dev
|
||||
5. libcap (to allow for capability drops), libapparmor (to set a different apparmor profile for the container), libselinux (to set a different selinux context for the container), libseccomp (to set a seccomp policy for the container), libgnutls (for various checksumming), liblua (for the LUA binding), python3-dev (for the python3 binding)
|
||||
6. Non, Docker a son propre démon
|
||||
7. "Extension de LXC qui apporte des fonctions avancées comme gestion à distance et snapshot"
|
||||
8. Oui. sudo lxc-copy avec l'option --snapshot / "lxc-snapshot"
|
||||
9. "lxc network attach-profile PROFIL RESEAU"
|
||||
10. lxc-cgroup -n NOM_CONTENEUR cpuset.cpus "0,1" #Limite l'usage du conteneur aux coeurs 0 et 1
|
||||
11. lxc-cgroup -n NOM_CONTENEUR memory.limit_in_bytes "8000" #Does 1MB
|
||||
12. "Oui, si le conteneur est éteint, en SCP via SSH"
|
||||
13. "Non, sauf avec des outils tiers pas très fiables"
|
||||
14. /var/lib/lxc/
|
||||
15. /var/lib/lxc/NomDuConteneur/config
|
||||
|
||||
## Infrastructure Avancée . 02.1.2 Virtualiser des machines
|
||||
|
||||
1. Installer un système d'exploitation complet sans avoir à gérer l'hébergement machine par machine "et isolée du système"
|
||||
2. Virtualisation complète, "para-virtualisation, et isolation"
|
||||
3. Ca dépend de ce qu'on recherche. Maintenant la plus "perfomante" au sens gourmandise matérielle, c'est la conteneurisation
|
||||
4. Virtualiser c'est porter un SE sur une grosse bécane. Emulation c'est "convertir" une architecture matérielle (processeur) pour l'adapter à une autre archi
|
||||
5. Le mieux c'est une couche d'abstraction genre QEMU pour émuler
|
||||
6. Mode NAT configuré en sortie routeur (plus standard), mode pont (plus simple), mode Switch interne derrière un VLAN/routeur (plus sécurisé)
|
||||
7. Oracle c'est gratuit mais limité si on veut professionnaliser l'infra. VMWare c'est payant et devenu de la merde
|
||||
8. "virsh (virtual shell)"
|
||||
9. "Le groupe Virtualization Host"
|
||||
10. "vboxdrv, solution obsoilète"
|
||||
11. Lance une VM avec KVM activé, le disque virtuel 'ubuntudisquedur' attaché, une image .iso d'ubuntu en option de boot principale, "1024MB de RAM," avec deux interfaces réseaux et pas d'option ACPI
|
||||
12. vboxmanage
|
||||
13. Gérer plus nativement des déploiements de VM par script sur des serveurs neufs et sans paquets installés / "contrôle total au plus bas-niveau possible"
|
||||
14. "RAW"
|
||||
15. QCOW2
|
||||
16. Oui mais c'est chaud
|
||||
17. Oui, avec qemu-img convert
|
||||
18. "cpu-checker"
|
||||
19. "kvm-ok"
|
||||
20. "Xen, VMWare, Hyper-V"
|
||||
21. Hyper-V
|
||||
22. Hyperviseur de type 1 (et pas 2 comme on pourrait le croire)
|
||||
23. ESXi c'est du type 1 bare-metal, Workstation du type 2
|
||||
24. "Oui, ESXi est compatible AMD et ARM"
|
||||
25. "Client graphique permettant la gestion d'un seul hôte ESXi"
|
||||
26. Passthrough
|
||||
27. Hyperviseur type 1 basé sur un Debian fortement modifié, open-source et gratuit
|
||||
28. .vhdx, historiquement .vhd
|
||||
29. "Non"
|
||||
30. "On peut utiliser Linux Virtual Manager (interface bureau), ou Cockpit (interface web)"
|
||||
|
||||
## Questionnaire 02. Les différents types d_infrastructure avancées
|
||||
|
||||
1. "Centralisée (tout le contenu au même endroit), distribuée (), hybride ()."
|
||||
2. "Infra distribuée"
|
||||
3. Les +, de la résilience, les -, des configs en plus à faire pour rester en sécurité
|
||||
4. "La couche leaf"
|
||||
5. "Elle est évolutive et permet une communication de paquet très rapide, ce qui est idéal pour une infrastructure centralisée/un datacenter"
|
||||
6. "Le middleware est un logiciel intermédiaire se trouvant entre client lourd et machine finale. Il peut se trouver sur une machine client ou intermédiaire dédiée, ou même le serveur final, et parfois sur les trois."
|
||||
7. Network Access Storage. En anglais dans le texte
|
||||
8. Non. Sécurité + RGPD
|
||||
9. "Unité de stockage à distance, 'Logicial Unit in Network' car n'importe quelle techno peut se cacher derrière."
|
||||
10. SAN, Storage Area Network
|
||||
11. "On utilise le nom de 'fabric'"
|
||||
12. Bah, pas forcément... si les données doivent être cloisonnées, c'est un usage pertinent. Au pire on peut ouvrir le SAN pour plus de ressources si besoin
|
||||
13. Moins de latence, moins de déconnexions = moins de corruption dans les transferts
|
||||
14. "Couche coeur réseau, couche Agrégation, couche Accès"
|
||||
15. "Le trafic ne va plus être optimisé et devra passer par plus d'appareils qu'il était autrefois nécessaire"
|
||||
|
||||
## Questionnaire et correction 01. Introductions aux Infrastructures Avancées
|
||||
|
||||
1. ??? Genre l'archi AMD64, les transistors nanométriques, le PCI-E génération 5, la fibre optique, le protocole Wireguard... comment ça ?
|
||||
2. ?????? et bien, multiplier la résilience, les facilités de déploiement, réduire les besoins en gestion matérielle... comment ça ?
|
||||
3. ????????? Gain de productivité à gérer un seul hébergeur, centralisation des factures, interconnexion facilitées dans un VPC donné... comment ça ?
|
||||
4. Le public veut moins attendre et pardonne moins les interruptions de service
|
||||
5. Méthode 1,2,3 et ensuite avoir des CDN locaux réduit la latence en régional
|
||||
6. "Années 50-60"
|
||||
7. "Années 80"
|
||||
8. "Années 2000"
|
||||
9. La prince elle a dit que le stockage, maintenant, ça coûte pas cher
|
||||
10. "Le fait de place les données d'un SI au plus proche du client, à l'extrémité du réseau étendu"
|
||||
@@ -0,0 +1,255 @@
|
||||
# Infra avancée
|
||||
|
||||
## Cours 1
|
||||
|
||||
Redimensionner une partition sur Linux
|
||||
|
||||
```
|
||||
# Pour EXT2/3/4
|
||||
sudo resize2fs
|
||||
# Pour XFS
|
||||
sudo xfs_growfs
|
||||
```
|
||||
|
||||
Traiter les disques sur MDADM
|
||||
```
|
||||
# Déclarer disque défectueux
|
||||
sudo mdadm --fail /dev/
|
||||
# Le retirer
|
||||
sudo mdadm --remove /dev/
|
||||
# Le rajouter
|
||||
sudo mdadm --add /dev/mdx /dev/sdx # AJout comme Hot-Spare
|
||||
```
|
||||
|
||||
Pour enlever les traces du raid :
|
||||
|
||||
```
|
||||
sudo mdadm --zero-superblock /dev/sdx
|
||||
```
|
||||
|
||||
## Exercice 1
|
||||
|
||||
Tuto parfait : https://ruan.dev/blog/2022/06/29/create-a-raid5-array-with-mdadm-on-linux
|
||||
|
||||
```
|
||||
sudo apt install mdadm -y
|
||||
|
||||
lsblk
|
||||
> sde, sdg, sdh
|
||||
|
||||
fdisk /dev/sdx
|
||||
n # ajouter une -n-ouvelle partition
|
||||
p # partition -p-rimaire
|
||||
1 # index de la partition
|
||||
[default] # bloc de début
|
||||
[default] # bloc de fin
|
||||
|
||||
t # modifier le -t-ype d'une partition
|
||||
L # -l-iste tous les codes hexa
|
||||
fd # RAID Linux auto
|
||||
|
||||
w # écrire (-w-rite) la table sur le disque et quitter
|
||||
|
||||
sudo mdadm --create /dev/md127 --level=5 --raid-devices=3 /dev/sde1 /dev/sdg1 /dev/sdh1
|
||||
|
||||
mkfs.ext4 /dev/md127
|
||||
|
||||
sudo mount /dev/md127 /mnt
|
||||
```
|
||||
|
||||
Eteindre, ajouter un disque, étendre la partition
|
||||
```
|
||||
lsblk
|
||||
> sdh
|
||||
|
||||
fdisk /dev/sdh
|
||||
n
|
||||
p
|
||||
1
|
||||
[default]
|
||||
[default]
|
||||
|
||||
t
|
||||
fd
|
||||
|
||||
w
|
||||
|
||||
sudo mdadm --add /dev/md127 /dev/sdh1
|
||||
|
||||
sudo mdadm --detail /dev/md127
|
||||
> Active Devices : 3
|
||||
> Working Devices : 4
|
||||
> Spare Devices : 1
|
||||
|
||||
sudo mdadm --add /dev/md127 --raid-devices=4
|
||||
|
||||
sudo mdadm --detail /dev/md127
|
||||
> Active Devices : 4
|
||||
> Working Devices : 4
|
||||
> Spare Devices : 0
|
||||
|
||||
sudo e2fsck -f /dev/md127
|
||||
|
||||
sudo resize2fs /dev/md127
|
||||
|
||||
sudo mount /dev/md127 /mnt/sauvegarde
|
||||
|
||||
df -h /mnt/sauvegarde
|
||||
> Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
|
||||
> /dev/md127 3,0G 28K 2,8G 1% /mnt/sauvegarde
|
||||
```
|
||||
|
||||
## Cours 2
|
||||
|
||||
### LVM
|
||||
|
||||
Créer volume LVM depuis disque physique
|
||||
|
||||
```
|
||||
pvcreate /DEVICE1 /DEVICE2 /DEVICE3
|
||||
|
||||
# Intégrer ces volumes à un groupe de volume
|
||||
vgcreate NOM_DU_VG /DEVICE1 /DEVICE2
|
||||
|
||||
# On découpe ces volumes
|
||||
lvcreate -l TAILLE -n NOM_DU_LV NOM_DU_VG
|
||||
```
|
||||
|
||||
VG et LV peuvent être accessibles par plusieurs chemins
|
||||
|
||||
`/dev/mapper/`
|
||||
|
||||
Identifier LV ou VG
|
||||
|
||||
```
|
||||
# Identifier LV ou VG
|
||||
sudo lvdisplay vgdisplay
|
||||
|
||||
sudo lvremove
|
||||
|
||||
sudo
|
||||
```
|
||||
|
||||
Etendre VG
|
||||
|
||||
```
|
||||
sudo vgdisplay
|
||||
|
||||
sudo vgextend NOM_DU_VG/PV_SUPPLEMENTAIRE
|
||||
|
||||
# Pour tester
|
||||
|
||||
```
|
||||
|
||||
Identifier le LV à étendre
|
||||
|
||||
```
|
||||
sudo lvdisplay
|
||||
|
||||
sudo lvextend MON_VG/NOM_DU_LV /PV_SUPPLEMENTAIRE
|
||||
|
||||
# Option pour donner une taille délimitée
|
||||
sudo lvextend -L +00M
|
||||
```
|
||||
|
||||
Il faut redimensionner à chaud après l'extension avec `--resizefs` à chaud, toucher à un LV ne change pas la taille du système de fichiers.
|
||||
|
||||
Réduire un VG
|
||||
|
||||
```
|
||||
sudo vgdisplay
|
||||
|
||||
sudo
|
||||
```
|
||||
|
||||
## Exercice 2
|
||||
|
||||
### Partie 1
|
||||
|
||||
A créer, avec chacun deux disques :
|
||||
```
|
||||
Nom MD Taille Type FS Nom VL1-nom VL1-taille VL1-mnt VL2-nom VL2-taille VL2-mnt
|
||||
-----------------------------------------------------------------------------------------------------------------------------------
|
||||
/dev/md123 2GO RAID1 btrfs "Production" "Current" 50% /mnt/prod/Current - - -
|
||||
/dev/md124 2GO RAID1 XFS "Sauvegarde" "Current" 100% /mnt/sauv/current - - -
|
||||
/dev/md125 2GO RAID1 EXT4 "Développement" "x86_64" 60% /mnt/dev/x86_64 "ARM" 40% /mnt/dev/arm
|
||||
/dev/md126 2GO RAID1 EXT4 "Laboratoire" "Current" 100% /mnt/labo/current - -
|
||||
```
|
||||
|
||||
Maintenant on colle les ressources.
|
||||
|
||||
Pour attribuer des % de taille aux LV :
|
||||
```
|
||||
sudo lvcreate -l 100%FREE # Toute la place restante
|
||||
sudo lvcreate -l 50%VG # 50% de la taille totale du VG
|
||||
sudo lvcreate -l 30%FREE # 30% de la place restante ACTUELLE
|
||||
```
|
||||
|
||||
-
|
||||
```
|
||||
sudo mdadm --create /dev/md12x --level=1/0 --raid-devices=2 /dev/sdx1 /dev/sdy1
|
||||
|
||||
sudo pvcreate /dev/md123
|
||||
sudo vgcreate Production /dev/md123
|
||||
sudo lvcreate -l 50%VG -n Current Production
|
||||
|
||||
sudo pvcreate /dev/md124
|
||||
sudo vgcreate Sauvegarde /dev/md124
|
||||
sudo lvcreate -l 100%VG -n Current Sauvegarde
|
||||
|
||||
sudo pvcreate /dev/md125
|
||||
sudo vgcreate Developpement /dev/md125
|
||||
sudo lvcreate -l 60%VG -n x86_64 Developpement
|
||||
sudo lvcreate -l 100%FREE -n ARM Developpement
|
||||
|
||||
sudo pvcreate /dev/md126
|
||||
sudo vgcreate Laboratoire /dev/md126
|
||||
sudo lvcreate -l 100%VG -n Current Laboratoire
|
||||
|
||||
sudo lvs -o lv_name,vg_name,lv_size,attr
|
||||
|
||||
sudo mkfs.btrfs /dev/mapper/Production-Current
|
||||
sudo mkfs.xfs /dev/mapper/Sauvegarde-Current
|
||||
sudo mkfs.ext4 /dev/mapper/Developpement-x86_64
|
||||
sudo mkfs.ext4 /dev/mapper/Developpement-ARM
|
||||
sudo mkfs.ext4 /dev/mapper/Laboratoire-Current
|
||||
|
||||
sudo mount /dev/mapper/Production-Current /mnt/prod/current
|
||||
sudo mount /dev/mapper/Sauvegarde-Current /mnt/sauv/current
|
||||
sudo mount /dev/mapper/Developpement-x86_64 /mnt/dev/x86_64
|
||||
sudo mount /dev/mapper/Developpement-ARM /mnt/dev/arm
|
||||
sudo mount /dev/mapper/Laboratoire-Current /mnt/labo/current
|
||||
```
|
||||
|
||||
### Partie 2
|
||||
|
||||
```
|
||||
sudo mdadm --manage /dev/md123 --fail /dev/sdh
|
||||
|
||||
sudo mdadm --manage /dev/md123 --remove /dev/sdh
|
||||
|
||||
sudo sgdisk -Z /dev/sdi
|
||||
sudo sgdisk -n1:0:0 -t1:fd00 /dev/sdi
|
||||
|
||||
sudo mdadm --manage /dev/md123 --add /dev/sdq
|
||||
```
|
||||
|
||||
### Partie 3
|
||||
|
||||
```
|
||||
sudo mdadm --add /dev/md126 /dev/sdi
|
||||
|
||||
sudo mdadm --grow /dev/md126 --raid-devices=3
|
||||
|
||||
sudo pvresize /dev/md126
|
||||
|
||||
sudo lvextend -l +100%FREE /dev/mapper/Laboratoire-Current
|
||||
|
||||
sudo resize2fs /dev/mapper/Laboratoire-Current
|
||||
```
|
||||
|
||||
### Partie 4
|
||||
|
||||
```
|
||||
sudo mdadm --add /dev/md123 /dev/sdj
|
||||
```
|
||||
@@ -0,0 +1,353 @@
|
||||
Emmanuel-Joyce Ntsia, Gauvain BOICHÉ, Joris Stavroulakis, Léo Jarry,
|
||||
|
||||
# Virtualisation, Containérisation d'OS, Stockage évolutif & résilient
|
||||
|
||||
Pour démarrer l'évaluation on est parti sur une VM avec ces spécifications :
|
||||
|
||||
- Debian 13.1.0-amd64-netinst
|
||||
- 8 Coeurs Logiques
|
||||
- 8 Go RAM
|
||||
- 20 Go d'espace disque (disque 1, le disque système)
|
||||
|
||||
À partir de là on a commencé par installer toutes les dépendances nécessaires
|
||||
|
||||
## 1.1 Installation des paquets pour libvirt / KVM / Qemu
|
||||
|
||||
On commence par installer et configurer tout ce qui sera nécessaire pour la virtualisation :
|
||||
|
||||
sudo apt install bridge-utils cpu-checker libvirt-clients libvirt-daemon-system virtinst qemu-kvm virt-manager -y
|
||||
|
||||
sudo usermod -aG kvm $USER
|
||||
sudo usermod -aG libvirt $USER
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/9c/9cd72a4f06ae45f9c4064b24287379f1a889a5293c39461a" data-crypto-key="cryptpad:xmYOKRlSW+p/hjbv0OGLGWxFjPQtrrmtlnHODPk4XBU="></media-tag>
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/93/93f9e103690570d6f3d02210cf83edfcb736339a4d4b9c8d" data-crypto-key="cryptpad:psh9MPwR6SQLSQ3Al329EqQKAFHne0aCloKUD93F1eY="></media-tag>
|
||||
|
||||
## 1.2 Installation des paquets pour la containérisation LXC
|
||||
|
||||
Ensuite on installe tout ce qui sera nécessaire pour la conteneurisation :
|
||||
|
||||
sudo apt install lxc lxctl lxc-templates -y
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/5d/5df3047ef1e1af7c2d1db5b63a13ef05bd7c64cc12c99643" data-crypto-key="cryptpad:ksu/YqjuaAa+VzX9v4b204UzvB8AE+YwdYt9B0mrZ4Q="></media-tag>
|
||||
|
||||
## 1.3 Installation du paquet mdadm pour le RAID
|
||||
|
||||
Enfin on installe **mdadm** pour créer et gérer le RAID
|
||||
|
||||
sudo apt install mdadm -y
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/14/14b0ac45bb59e5e3129b86c25aca2258f3c4a0c83a9d36e5" data-crypto-key="cryptpad:cBJFqiRkkTMpkGLHfnntFkWHM9oM9w0uskFurA9d6Ec="></media-tag>
|
||||
|
||||
## 2.1 Ajout des 4 disques pour le RAID5 (3 disques actifs + un hotspare)
|
||||
|
||||
On a choisi un RAID de type 5 pour la tolérance de panne **et** les performances, on est parti sur des disques de 4Go, ce qui s'avèrera (voir la suite) ne pas être assez, donc il faudra agrandir par la suite :
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/2b/2b3f74a732f1f3ddcd8b05b3ada85b08f4c916d71ae8ddc9" data-crypto-key="cryptpad:C8bfHXiX9/Tunv2+olxN5HDBlXvqCmzprPxIHthhITs="></media-tag>
|
||||
|
||||
## 2.2 Mise en place du RAID5
|
||||
|
||||
D'abord on repère les disques qu'on va mettre dans le RAID :
|
||||
|
||||
sudo lsblk
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/5c/5c0a911256e37aa48cf61d833c051d450615863e03b97fca" data-crypto-key="cryptpad:d/EpZVHUm8sL/5bxPqFu+cuVqYaknQC+tqYk1fuZhPc="></media-tag>
|
||||
|
||||
Ensuite on créé ce dernier en précisant le type et le nom :
|
||||
|
||||
sudo mdadm --create /dev/md1 --level=5 --raid-devices=3 /dev/sdb /dev/sdc /dev/sdd
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/63/630186676c496c657c4e0f9de90104a721dff9d91f87ad91" data-crypto-key="cryptpad:DxFDrJxMlMk4mmRIokEmtRtFdV1BqJMvv71fFt3DKsU="></media-tag>
|
||||
|
||||
On ajoute le disque ***sde*** en tant que hotspare pour notre RAID :
|
||||
|
||||
sudo mdadm --add /dev/md1 /dev/sde
|
||||
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/9c/9c4835e947ef82ee5c21e28a94f9110f4190ab178320a7a5" data-crypto-key="cryptpad:au7wZjM/DC0U0MPy6t97+s+h4uTc9pE3MztTZZj4aLg="></media-tag>
|
||||
|
||||
On vérifie que tout est en place :
|
||||
|
||||
sudo mdadm --detail /dev/md1
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/c3/c36057cabdd3b5fbe899870d1d1756b40e5d21b13e68984d" data-crypto-key="cryptpad:qBgoCP//ADl6jEjDh1u4DGXfJhzxOwUWJ2nrK54r5UM="></media-tag>
|
||||
|
||||
On voit que le RAID5 avec *hotspare* est bien en place, on peut passer à la partie LVM
|
||||
|
||||
## 2.3 Mise en place du LVM
|
||||
|
||||
Ici on commence par déclarer le pv qu'on va utiliser, notre RAID :
|
||||
|
||||
sudo pvcreate /dev/md1
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/69/69e4a894c430e812a2dc36cfcef6a02c3c018f6703d9364a" data-crypto-key="cryptpad:uf18KubsvRYQMW/Hcnejf2mVew2wtXq4sOqcLMvH99I="></media-tag>
|
||||
|
||||
Ensuite on créé le volume group nommé ***eval*** et les deux logical volume ***vms*** et ***conteneurs*** :
|
||||
|
||||
sudo vgcreate eval /dev/md1
|
||||
|
||||
sudo lvcreate -l 50%FREE -n vms eval
|
||||
|
||||
sudo lvcreate -l 100%FREE -n conteneurs eval
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/0d/0d850ebbbfe9c351926e1f977d4dc7d0f15a5841b71fc709" data-crypto-key="cryptpad:SZn+5Ho1g2eLKOTIlUZkZ8reASiM1OhuYP0W4caPXfU="></media-tag>
|
||||
|
||||
Ensuite on formate les volumes pour mettre le système de fichiers *ext4* :
|
||||
|
||||
sudo mkfs.ext4 /dev/mapper/eval-vms
|
||||
|
||||
sudo mkfs.ext4 /dev/mapper/eval-conteneurs
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/39/3938c6e3c15112a89caa8804381cf3e7ab3177b671da302d" data-crypto-key="cryptpad:pY2ZgfH5v9Yz0mSzVsklX/kN04T4SqNyogZpGsHsmzM="></media-tag>
|
||||
|
||||
Puis on ajoute les labels :
|
||||
|
||||
sudo tune2fs -L vmsfs /dev/mapper/eval-vms
|
||||
|
||||
sudo tune2fs -L conteneursfs /dev/mapper/eval-conteneurs
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/14/14ee8b862cf1fa9775fe8e1269709c0f55238ef4be39e758" data-crypto-key="cryptpad:n8PAhJ64GMaoIk1ypNf7fUvWrpTlQKnZfZ0hjqnCCvQ="></media-tag>
|
||||
|
||||
On vérifie qu'ils sont bien mis :
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/f0/f02fc6dad2118f18802e4c95c9eea665f61d307e36469e40" data-crypto-key="cryptpad:C8stCyVXhksub85vBKoGvBXC1Re7GFbk9En2kvRKgjw="></media-tag>
|
||||
|
||||
## 2.4 Mise en place du montage au démarrage
|
||||
|
||||
On prépare les dossiers pour le montage de nos volumes :
|
||||
|
||||
sudo mkdir -p /mnt/vms /mnt/conteneurs
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/b5/b51ea5967a9435301f7202d81c9f0d5aea45b09574c07ef2" data-crypto-key="cryptpad:59ETfguz+UHjN6sZfe0HTl3FlMZ1JEGnQ+iY+ZeLDSA="></media-tag>
|
||||
|
||||
On modifie le fstab pour que le montage se fasse au démarrage du système :
|
||||
|
||||
sudo nano /etc/fstab
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/dc/dcbdf8ad45ee0ea4758b08bd2c429123b893a26d8dd740fa" data-crypto-key="cryptpad:FJPrymuTZ1TCMYl+TD2+3898XsErQpFCZ4LfaE37EnM="></media-tag>
|
||||
|
||||
### 2.5 Montage des volumes
|
||||
|
||||
Ici on le monte directement (plutôt que de devoir redémarrer), pour ça on oublie pas de relancer le service :
|
||||
|
||||
sudo systemctl daemon-reload
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/ef/efc9365824f907bd8e6f8b19ee289a90d8ef7359d50babd6" data-crypto-key="cryptpad:9/v3TUck5tVTV4vMVTudJfcZ2DfSnG5N4YegOljWMmo="></media-tag>
|
||||
|
||||
On monte les volumes sur les dossiers précédemment créés :
|
||||
|
||||
sudo mount -t ext4 /dev/mapper/eval-vms /mnt/vms
|
||||
sudo mount -t ext4 /dev/mapper/eval-conteneurs /mnt/conteneurs
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/38/3851f0cfe90736849fb40b373e241c21420ee73ecba8f6ea" data-crypto-key="cryptpad:4KfVWIMmBobeulibZiozjFaz7+oNOq93e5u0w3bEM9o="></media-tag>
|
||||
|
||||
## 3.1 Installation des conteneurs LXC
|
||||
|
||||
Maintenant que tout est préparé on peut commencer à faire les conteneurs et les vms, on a décidé de commencer par les conteneurs
|
||||
|
||||
### 3.1.1 Le conteneur Debian
|
||||
|
||||
On installe le conteneur Debian :
|
||||
|
||||
sudo lxc-create -n debianLXC -t download -- -d debian -r bullseye
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/40/40d8ecb2850732611e0ef0f472b6ff6340cc4f479f428362" data-crypto-key="cryptpad:uq8h3EP/n0BHebZbxfA16ZsqGqRluCHuNeQcZ5FtzIE="></media-tag>
|
||||
|
||||
On crée le dossier qui servira de volume rattaché à ce conteneur :
|
||||
|
||||
sudo mkdir /mnt/conteneurs/debianlxc
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/ef/efc44707ee7eabbdbfe23563e57707399f7d5341e339c44c" data-crypto-key="cryptpad:yo1dE2qOV4J+sSacIYPqexRRDLgCSTMPGds5vuxdjQw="></media-tag>
|
||||
|
||||
On va modifier le fichier de config pour le rattacher justement :
|
||||
|
||||
sudo nano /var/lib/lxc/debianLXC/config
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/b5/b5b52a75f1658a40b32e6027d97fff36419f53ce1f6a82db" data-crypto-key="cryptpad:P/ciZg6I12Bi7P4c0W8MLsK2zqJnuhz4DdDoUeXjHOs="></media-tag>
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/4d/4d535bd8e670fd9ee89d1a1c5d2f34cb091cb16a475ccda0" data-crypto-key="cryptpad:7t7MXfJyVn7bTWFxCr797j5yyg57ESbQnWZyjLJyWE8="></media-tag>
|
||||
|
||||
### 3.1.2 Le conteneur Ubuntu
|
||||
|
||||
On installe le conteneur Ubuntu :
|
||||
|
||||
sudo lxc-create -n ubuntuLXC -t download -- -d ubuntu -r noble
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/fe/febd60a7eac6310802935ad72199d62113fe1b02e822f619" data-crypto-key="cryptpad:neiBuwyda8neNhYWeHDIftJDnKcr2QMgYhT34wyPMjM="></media-tag>
|
||||
|
||||
On créé le dossier qui servira de volume rattaché à ce conteneur :
|
||||
|
||||
sudo mkdir /mnt/conteneurs/ubuntulxc
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/be/bec36cbc8e80e4e7fa72f74f74bf4782a2db9b7d01746d09" data-crypto-key="cryptpad:dH4/fylYvmuUVr90ev2kwq8QWI11/PAwFPK2zTNGTPA="></media-tag>
|
||||
|
||||
On va modifier le fichier de config pour le rattacher justement :
|
||||
|
||||
sudo nano /var/lib/lxc/ubuntuLXC/config
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/d1/d15272f1b623442f67af27a41e2418373fc551c4f9fe7e18" data-crypto-key="cryptpad:LW9VN4rJDGUyC1NDO7eTamVTJTh/cKLjgE3y1J3agDc="></media-tag>
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/62/6281a6155012d3ea8d3efaaf03d801bdaeb8968c6656b703" data-crypto-key="cryptpad:Nzo01YrudSAFpGqlj6Q/CqFEzd4yGbQuv7oadGHXkVc="></media-tag>
|
||||
|
||||
### 3.1.3 Le conteneur Fedora
|
||||
|
||||
On installe le conteneur Fedora :
|
||||
|
||||
sudo lxc-create -n fedoraLXC -t download -- d fedora -r 42
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/de/dec127fcb5f2fef990c9dae7e648a23341d9dcfeebc51dd3" data-crypto-key="cryptpad:Gz4m25ZGx2Ut0l7jy73MX8l4+vsaRVknk3ykfP4nPZE="></media-tag>
|
||||
|
||||
On crée le dossier qui servira de volume rattaché à ce conteneur :
|
||||
|
||||
sudo mkdir /mnt/conteneurs/fedoralxc
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/8e/8ed4e36f2d2567341392aaf844eb7d68125a7214585a539b" data-crypto-key="cryptpad:3oa/1rk1MwadnBkCTD0FsDEtgosOEZAi9iOtVQW07+s="></media-tag>
|
||||
|
||||
On va modifier le fichier de config pour le rattacher justement :
|
||||
|
||||
sudo nano /var/lib/lxc/fedoraLXC/config
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/4a/4a7fda7e748fcfe8065a00545421ef44ad51fd08a571778f" data-crypto-key="cryptpad:xWNDUAad/ZnYdWo5KnJN6Bw7FoG6w0Tz2CUDhMhwJRk="></media-tag>
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/5f/5fe86ceb86dc605d6e4534ab71be0f9df6be2a4db77a7a9d" data-crypto-key="cryptpad:hiAh5/oNuJRDlHVAq3w/63iKY1BqYAH+dSvdB1sr1k0="></media-tag>
|
||||
|
||||
## 3.2 Installation des VMS
|
||||
|
||||
Maintenant que les conteneurs sont installés et configurés on passe aux VMs
|
||||
|
||||
### 3.2.1 La VM Debian
|
||||
|
||||
On commence à créer un dossier dans lequel on rangera le disque de la VM (ainsi que son iso au passage) :
|
||||
|
||||
sudo mkdir debian
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/31/31f9dc7e9c0297eed0228692138981218e5c47e4b5bd37ed" data-crypto-key="cryptpad:vTERowwrpitSK7f2DXN5gX/XewVlDrKeZ9hp91Indnw="></media-tag>
|
||||
|
||||
On télécharge le fichier iso :
|
||||
|
||||
sudo wget https://cdimage.debian.org/mirror/cdimage/archive/11.11.0/amd64/iso-cd/debian-11.11.0-amd64-netinst.iso
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/73/7301bcd725e717fa22fe7ed8eac1a1e642d1a6e5b6218e61" data-crypto-key="cryptpad:R2i36nJXlx5IGNyIwZpWG/QKQucsUBATu7BuJIU+F2I="></media-tag>
|
||||
|
||||
On crée le disque (qui s'avèrera trop petit, voir la suite) :
|
||||
|
||||
sudo qemu-img create -f qcow2 debian.qcow2 2G
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/d9/d9baa18e4dc17d4d1a12be63b7c00787fca9640e7be2f52a" data-crypto-key="cryptpad:JsxrbrbfwH0bfenUenvk3KZDswQjcqk5vvPIpmJRUqU="></media-tag>
|
||||
|
||||
On lance l'installation avec ***virt-install*** :
|
||||
|
||||
sudo virt-install \
|
||||
--name debianVM \
|
||||
--os-variant=debian11 \
|
||||
--ram 2048 \
|
||||
--vcpus 2 \
|
||||
--location /mnt/vms/debian/debian-11.11.0-amd64-netinst.iso \
|
||||
--disk debian.qcow2 \
|
||||
--graphics none \
|
||||
--console pty,target_type=serial \
|
||||
--extra-args='console=ttyS0,115200n8 serial'
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/41/4186b87fe73e5996c19a4e44630631c4eefd1d791cc429ef" data-crypto-key="cryptpad:n85CcKoSA02D2icTzUrCeavaAMJ1RXPbigI09mD16U0="></media-tag>
|
||||
|
||||
On a manqué de place pour l'installation, donc on rajoute deux disques de 4Go au raid et au LVM pour recommencer :
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/ba/ba799c916d57a0c60d87413e3d40f4bb045c7395b0c85e5d" data-crypto-key="cryptpad:dIgiQfo8mDCeDWiG0+kl+jFliFqqD3Mg2u2rdAaer2w="></media-tag>
|
||||
|
||||
|
||||
On ajoute nos deux disques au RAID (Après le reboot le md1 a été renommé par le système en md127) :
|
||||
|
||||
sudo mdadm --add /dev/md127 /dev/sdf /dev/sdg
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/78/781ba4595e2eaf843e67e9b011044fed1e56f66e13960f98" data-crypto-key="cryptpad:FnScioCuM2cPk34phyf8kg17xi/LDtZMhR4PZJCdaOM="></media-tag>
|
||||
|
||||
On oublie pas cette commande, sinon nos disques seront juste en spare :
|
||||
|
||||
sudo mdadm --grow /dev/md127 --raid-devices=5
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/d9/d9349cdaaed4b7f69a709fbf2f37419c9c35159d8855b383" data-crypto-key="cryptpad:9VNUEYRjDnIpv0aqsl6e++BsNDMpGI/QVYxeKvdcV1s="></media-tag>
|
||||
|
||||
*Et ensuite il faut bien sûr étendre le LVM (**après avoir attendu que le reshape du RAID ait fini**)*
|
||||
|
||||
On commence par resize le pv :
|
||||
|
||||
sudo pvresize /dev/md127
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/de/de6710544f95f3ed6863d47d7a22c586a6f6f154f919aaee" data-crypto-key="cryptpad:2YOBmZhXlD1DFv1PGsV1MNbbLAxv5jmJPkquMLP0SMA="></media-tag>
|
||||
|
||||
On étend ensuite notre volume dédié au VM pour lui accorde 100% du nouvel espace libre :
|
||||
|
||||
sudo lvextend -l +100%FREE --resizefs /dev/mapper/eval-vms
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/af/af1454927752414639c8583694ccabfff5e151de5ec044e1" data-crypto-key="cryptpad:gyVGn4TWL5w7Tzs0503zfbejDT+sbS1/XhBHBsfBw5E="></media-tag>
|
||||
|
||||
Ensuite on undefine le debianVM créé précédemment pour refaire l'installation à zéro :
|
||||
|
||||
*(Cette étape est nécessaire pour pouvoir utiliser le disque avec le même nom qu'avant, sinon virt croit que le disque est déjà utilisé par une autre VM)*
|
||||
|
||||
sudo virsh undefine debianVM
|
||||
|
||||
Puis on supprime le disque :
|
||||
|
||||
sudo rm debian.qcow2
|
||||
|
||||
Et on le recrée avec une plus grande taille :
|
||||
|
||||
sudo qemu-img create -f qcow2 debian.qcow2 5G
|
||||
|
||||
Et on refait l'installation avec la commande virt-install utilisée au-dessus, voici le résultat :
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/1e/1e4b5cf1dedc44937084cb725f9f7add1b2a6b7551a9b590" data-crypto-key="cryptpad:imkCtErKM8sLwX2TS/GrD2vILyp9ugnvvYEuzjxHpk8="></media-tag>
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/fc/fca279a55474fe6d4e68b2eb683cad42b412db3784617b5d" data-crypto-key="cryptpad:RhvA2BEHKPxsCjYv/qfqIs5B4YkPGf1f/HnUzzvGqkI="></media-tag>
|
||||
|
||||
### 3.2.2 La VM Ubuntu
|
||||
|
||||
On commence à créer un dossier dans lequel on rangera le disque de la VM (ainsi que son iso au passage) :
|
||||
|
||||
sudo mkdir /mnt/vms/ubuntu
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/e4/e4d92d09be3a521db140229e5beb0cfea8abf2a0c0c4d412" data-crypto-key="cryptpad:rTGMAPCavmig2pKE/p3n5hyquc1BdwMXifZj75RlXdc="></media-tag>
|
||||
|
||||
On télécharge le fichier iso :
|
||||
|
||||
sudo wget https://cdimage.ubuntu.com/ubuntu-legacy-server/releases/20.04/release/ubuntu-20.04.1-legacy-server-amd64.iso
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/f4/f450926458dac5270e72c6fa79bb6d22803215ffe506cdeb" data-crypto-key="cryptpad:qFDOYX7aL/CAf65jW1bXpD92WIoVbB38KGJ07k9C/Zs="></media-tag>
|
||||
|
||||
On créé notre disque de 6Go :
|
||||
|
||||
sudo qemu-img create -f qcow2 ubuntu.qcow2 6G
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/20/203f8565203dcc2d49323c885d4fcc015b9e514eaa291ca4" data-crypto-key="cryptpad:CsydruhHoV3VKjfGjEjGc88HgJBV5JZHBf3V277dsWU="></media-tag>
|
||||
|
||||
On lance l'installation :
|
||||
|
||||
sudo virt-install \
|
||||
--name ubuntuVM \
|
||||
--os-variant=ubuntu20.04 \
|
||||
--ram 4096 \
|
||||
--vcpus 4 \
|
||||
--location /mnt/vms/ubuntu/ubuntu-20.04.1-legacy-server-amd64.iso \
|
||||
--disk ubuntu.qcow2 \
|
||||
--graphics none \
|
||||
--console pty,target_type=serial \
|
||||
--extra-args='console=ttyS0,115200n8 serial'
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/f0/f0148c74a643715c2b3290ba19a2dfab50226c0296532792" data-crypto-key="cryptpad:b6iZnvO4SW/bT5OcVw4u04BMMBHB/M26VSHtciZMOVw="></media-tag>
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/d9/d9ea5dd8171e6e315f39892595286a4154acffbd45255480" data-crypto-key="cryptpad:ryP22LbOuAtRfQakA+miZI0MGeEHowhC6LoRFcoAaeM="></media-tag>
|
||||
|
||||
L'installation du ubuntu va jusqu'au bout, mais après on a un écran "noir" comme mentionné par le formateur, donc impossible d'aller plus loin :
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/b0/b055a09b6a3fa8a7d0eda8d8d9e526579e4538a4828ece0b" data-crypto-key="cryptpad:C27BL+GZSyKOWENfzuW+entS+91eLKtTHhHFMMoLM1I="></media-tag>
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/5c/5ccaa2ae0762544b9b5be2d107f942f8673eafd940860dc2" data-crypto-key="cryptpad:z/Gt2mqiT505XOJ5iOl2KdDHhtCQT+a0SKBA9hRjOFY="></media-tag>
|
||||
|
||||
Mais on a réussi à y accéder grâce à SSH et au final tout fonctionne :
|
||||
|
||||
sudo nmap 192.168.122.0/24 -sP # pour trouver l'ip de la VM ubuntu
|
||||
|
||||
<media-tag src="https://files.cryptpad.fr/blob/85/8562e2daf46bc7a62282c0a3c48820d76b72846b06a19328" data-crypto-key="cryptpad:K1z83sJcK3K1MyDf6dSw3EahvlVOzSoNwqTknFH9uak="></media-tag>
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user