Visualiser une révision

[Tuto/HowTo] [Ubuntu/Debian] Créer un JBOD (raid0 non strip) avec btrfs

TutoMaker : révision n°3 (21 septembre 2017 14:45:03)

Introduction
============

Parmi toutes les méthodes que j'ai testé (entre autre : [mdadm](https://www.0rion.netlib.re/forum4/viewtopic.php?f=94&t=356), [zfs](https://www.0rion.netlib.re/forum4/viewtopic.php?f=94&t=289#p755), [glusterfs](https://www.0rion.netlib.re/forum4/viewtopic.php?f=94&t=289#p763), [mhddfs](https://www.0rion.netlib.re/forum4/viewtopic.php?f=94&t=289#p748)), [btrfs](https://fr.wikipedia.org/wiki/Btrfs) offre la méthode la plus simple de mise en place.
Voyons ensemble comment créer un JBOD.
Pour rappel un JBOD est un agrégat (une addition) de plusieurs disques. [Btrfs](https://fr.wikipedia.org/wiki/Btrfs) accepte de commencer avec un seul disque et d'en ajouter par la suite.
Les méta-données sont dupliquées sur chaque disque, les données ne sont ni découpées (strip) ni dupliquées (mirror).
Le côté dommage est qu'au niveau du montage il y a un [point of failure](https://fr.wikipedia.org/wiki/Point_individuel_de_d%C3%A9faillance). En effet dans votre fichier _/etc/fstab_ pour effectuer le montage vous devrez indiquer un seul des disques de la partition JBOD. Si ce disque plante la partition ne sera plus montable sans modifier le fichier /etc/fstab. (ndlr: ce problème doit pouvoir être hacké via script bash)


Mise en place
=============

**Installez les pré-requis**

```
apt install -y btrfs-tools
```

**Listez les disques**

```
fdisk -l
```

**Récupérez les chemins de vos disques (par exemple _/dev/sdb_ et _/dev/sdc_).**

* **Créez la "partition" btrfs sur un ou plusieurs disques (vous pourrez en ajouter par la suite)**

```
mkfs.btrfs -d single /dev/sdb /dev/sdc
```

* l'option _**-d single**_ indique que l'on ne veut pas dupliquer les datas

![screenshot-2017_08_11-Tuto-BTRFS-Creation_JBOD_01](https://framapic.org/j2eTz7zpnAz2/e5FqDZjnDYfh.png)


**Création du point de montage**

```
mkdir /media/mountPoint
```

**Montez la "partition" btrfs (vous pouvez choisir n'importe quel disque de la "partition")**

```
mount /dev/sdb /media/mountPoint
```

**Récupérez l'UID de n'importe lequel de vos disques participant à "la grappe"**

```
blkid | grep "btrfs" | grep -E " UUID=\"([0-9a-z]{1,}[\-]{0,}){0,}\""
```

**Éditez le fichier _/etc/fstab_**

```
nano /etc/fstab
```

**Adaptez puis ajoutez la ligne suivante**

```
UUID=blablabla-uid-de-votre-disque-blablabla /media/mountPoint           btrfs   defaults,rw      0  0
```


Suppléments
===========

Ajouter un disque
-----------------

**Lancez la commande suivante**

```
btrfs device add /dev/sdc /media/mountPoint
```

* **Note :** le volume doit être monté 



Retirer un disque
-----------------

**Lancez la commande suivante**

```
btrfs device delete /dev/sdc /media/mountPoint
```

* **Note :** le volume doit être monté 


Farm Link
=========

* [Btrfs - JBOD (tutoriel d'origine)](https://www.0rion.netlib.re/forum4/viewtopic.php?f=94&t=654#p1492) (tutoriel d'origine)
* [Using Btrfs with Multiple Devices](https://btrfs.wiki.kernel.org/index.php/Using_Btrfs_with_Multiple_Devices)