Merge branch 'disques' into 'master'
Draft: Changeent d’un disque d’Hyperviseur See merge request nounous/documentation!43merge-requests/43/merge
commit
12080f4219
|
|
@ -0,0 +1,126 @@
|
|||
# Changer un disque d’un hyperviseur
|
||||
|
||||
Cette fiche a pour vocation de documenter le changement d’un disque pour un
|
||||
**hyperviseur**.
|
||||
|
||||
## Disposition actuelle
|
||||
|
||||
Actuellement, chaque hyperviseur a deux disques de 1 à 2 To, en redondance. Il
|
||||
faut noter que la redondance boot est gérée par Proxmox, la redondance donnée
|
||||
est quant à elle gérée par ZFS. Ils sont partitionnés comme suit :
|
||||
|
||||
- Partition d’espacement, du secteur 2014 secteurs de 34 à 2047. Parfois de
|
||||
2048 à 4095. Cette partition ne contient aucune données, elle ne sert que comme
|
||||
espacement avant la première « vraie » partition ???
|
||||
|
||||
- Partition de boot, cette partition s’occupe du démarrage du système, elle
|
||||
est entièremnt gérée par Proxmox. Elle occupe 512 Mo à partir du secteur 2048 /
|
||||
4096. C’est une partition EFI.
|
||||
|
||||
- Le reste du disque est occupée par la partiton de donnée (par exemple 1 To),
|
||||
c’est une partiton en miroir gérée par ZFS, elle a le type `Solaris /usr & Apple
|
||||
ZFS`. Il est important de noter que **ZFS ne s’occupe du miroir que d’une unique
|
||||
partition et non du disque entier**.
|
||||
|
||||
Cette table de partition est donnée à titre indicative, et peut varier ou être
|
||||
amené à évoluer. En cas de changement de disque, il est préférable de copier le
|
||||
partitionnement de l’autre disque le plus fidélement possible.
|
||||
|
||||
## Changement physique du disque
|
||||
|
||||
Identifier le disque à changer grâce à la LED de statut, et procéder au
|
||||
changement physique du disque. De nombreux bugs de compatibilité ou physique
|
||||
peuvent survenir qu’il faudra malheuresement traiter au cas pour cas. Les
|
||||
conseils de débuggage de la fiche en question s’appliquent, notamment `dmesg -T`
|
||||
qui journalise les évènement disques notamment.
|
||||
|
||||
## Partitionnement du nouveau disque
|
||||
|
||||
Cette étape peut se faire sur un ordinateur en amont ou directement sur la
|
||||
machine si elle fonctionne. Cette étape peut se faire via l’utilitaire `fdisk`
|
||||
préinstallé sur les serveurs.
|
||||
|
||||
Pour lister les disques actuellement présents et leurs table de partionnement
|
||||
faites :
|
||||
|
||||
```
|
||||
fdisk -l
|
||||
```
|
||||
|
||||
Une fois le disque identifié (nous supposerons dans la suite que vous souhaitez
|
||||
repartitionner le disque /dev/sdx), pour commencer l’édition, tapez :
|
||||
|
||||
```
|
||||
fdisk /dev/sdx
|
||||
```
|
||||
|
||||
Cela ouvre une interface interractive afin de gérer le partionnement, les
|
||||
changements seront mis en cache, et il faut les valider à la fin.
|
||||
|
||||
Tapez `p` pour afficher la table de partitionnement courante. Et `m` pour la
|
||||
liste des commandes.
|
||||
|
||||
La première étape est de (re)faire une table de partitionnement. Nous
|
||||
utiliserons le format `GPT`. Tapez `g` pour créer une table vierge.
|
||||
|
||||
Il faut maintenat créer les partitions. Nous commençons par la partition
|
||||
d’espacement. Tapez `n` pour ajouter une nouvelle partition. Donnez lui
|
||||
l’identifiant `1`. Mettez le premier secteur à `34` ou `2048` en fonction de
|
||||
ce que permet le disque. Entrez ensuite le dernier secteur `2047` ou `4095`.
|
||||
Il faut ensute changer le type de la partition avec `t` en `BIOS boot` (numéro
|
||||
`4`). L’auteur de ces lignes se demande si cette partition est vraiment utile ?
|
||||
|
||||
Nous allons créer la partition. Créer une partition `2` en tapant `n`. Faites
|
||||
la commencer après la premiére (option par défaut). Donnez lui, 512 Mo en tapant
|
||||
`+512M`. Puis changer le type via `t` en `EFI System` (numéro `1`).
|
||||
|
||||
Il faut maintenant créer la partition de données. Créer une partition `3` avec
|
||||
`n`. Faites la commencer après (défaut). Laissez là prendre toute la fin du
|
||||
disque (option par défaut) ou faites la correspondre à la taille de l’autre
|
||||
disque (en donnant `+nombre de secteur` par exemple). Changer le type en
|
||||
`Solaris /usr & Apple ZFS` via `t` (numéro `163`).
|
||||
|
||||
La table de partitionnement est maintenant complète, vérifiez-là une dernière
|
||||
fois avec `p` avant de l’enregistrer avec `w`.
|
||||
|
||||
## Redondance boot
|
||||
|
||||
Nous allons configurer la deuxième partition EFI pour le démarrage du système.
|
||||
Cela nécessite d’utiliser l’utilitaire `proxmox-boot-tool`. Je suppose dans la
|
||||
suite que cette partition est `/dev/sdx2`. La documentation officielle est
|
||||
https://pve.proxmox.com/wiki/Host_Bootloader.
|
||||
|
||||
Pour afficher les disques de démarrage, faites `proxmox-boot-tool status`. Si
|
||||
des anciens disques sont toujours présents, il est possible de néttoyer avec
|
||||
`proxmox-boot-tool clean` (à vérifier).
|
||||
|
||||
Nous allons commencer par formater la partition avec `proxmox-boot-tool format
|
||||
/dev/sdx2`.
|
||||
|
||||
Ensuite nous initialisons le système avec `proxmox-boot-tool init /dev/sdx2`.
|
||||
|
||||
Le disque doit maintenant apparaître dans `proxmox-boot-tool status`.
|
||||
|
||||
## Miroir ZFS
|
||||
|
||||
Il faut maintenant configurer le miroir zfs de la partition de données que je
|
||||
supposerais être `/dev/sdx3`. Je suppose ici que la pool zfs est configuré et
|
||||
qu’il s’agit d’un simple changement de disque.
|
||||
|
||||
Faites `zpool status` pour voit l’état de la pool. Un des disques doit être dans
|
||||
l’état `REMOVED` ou `OFFLINE`. Notez sont nom, cela peut-être soit l’identifiant
|
||||
de l’ancien disque ou un numéro quelquonque.
|
||||
|
||||
Il faut identifier le nom du nouveau disque, par exemple via `ls
|
||||
-l /dev/disk/by-id`. Notez le nom de la partition, par exemple
|
||||
`ata-ST2000XX000-xxxxxx_XXXXXXXX-part3`. Attention ! Contrairement au disques
|
||||
de stockage, nous nous intéressons seulement à synchroniser la partition de
|
||||
données, **remarquez le -part3**.
|
||||
|
||||
Nous pouvons maintenant lancer le remplacement avec `zpool replace rpool <ancien
|
||||
disque> <nouveau disque>-part3` où `rpool` est le nom de la pool où effectuer le
|
||||
changement (on n’oublie pas le `-part3` !). La commande peut prendre quelques
|
||||
minutes à s’éxécuter.
|
||||
|
||||
ZFS va maintenant procéder à la synchronisation du miroir. Cette opération peut
|
||||
prendre quelques heures à une journée.
|
||||
Loading…
Reference in New Issue