# 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 sgdisk -Z /dev/sdi sgdisk -n1:0:0 -t1:fd00 /dev/sdi 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 ```