はじめに
LinuxでRAID1にLVMを構成するために調べました。
/dev/sdxのxはOSを起動するたびに替わるのでUUID、またはUUID_SUBで判別します。
パソコンにはSlot0からSlot7まであり、8台のハードディスクが使えます。
Slot0とSlot1のSSDは同型番でOSインストール時にRAID1で作成したのでUUIDで物理的にどちらか判別できません。
SSDの交換時に確認するつもりです。
今回の方法では、使用可能なHDD容量は半分になります。
環境
HDD 4台を使って2台ずつでRAID1を作り、その上にLVMで領域を作りました。
SSD 2台は、OSのインストール時にRAID1で構成しています。
/bootのEFI領域はRAID1にはしていません。
- Debian 12 bookworm - mdadm 4.2-5 - lvm2 2.03.16-2 - SSD 1TB 2台 起動用 RAID1 243M EFI System 931.3G Linux RAID Slot1 Slot2 - HDD 8TB 4台 データ用 RAID1 x 2 Slot4 Slot5 Slot6 Slot7
LVMのインストール
LVMをインストールします。
sudo apt install lvm2
RAID1の構築 md1
2台のHDD(8TB)を取り付けてRAID1、LVMの作成を行います。
2台は異なるメーカー(または型番)とし、UUIDと実物が紐づけられるようにします。
はじめに/dev/sdxとHDDの型番の関連を探します。
今回はsdcとsddでした。
sudo blkid sudo dmesg sudo fdisk -l
2台とも1個のパーティションをパーティションタイプ「Linux RAID(42)」にします。
sudo fdisk /dev/sdc sudo fdisk /dev/sdd gコマンドでGPTにする nコマンドでディスク全体を1個の領域で確保 tコマンドでパーティションタイプを変更(42:Linux RAID) pコマンドで確認 wコマンドで書き込み、終了
使っているmdのデバイス名を確認します。
起動ディスクでmd0を使っていたのでmd1を使います。
cat /proc/mdstat
RAID1のmdアレイを作成します。
sudo mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/sdc1 /dev/sdd1
RAIDの状態を確認します。
cat /proc/mdstat sudo mdadm --detail /dev/md1
mdadmの情報をファイルに記載します。
sudo mdadm --detail --scan md2に関する行を追記します。 su mdadm --detail --scan > /etc/mdadm/mdadm.conf exit
mdadmの情報をアップデートします。
sudo update-initramfs -u
RAID1の状態を確認します。
cat /proc/mdstat
LVMの設定 md1
md1に物理ボリュームを作成します。
sudo pvcreate /dev/md1 sudo pvdisplay sudo pvs
ボリュームグループを作成します。
sudo vgcreate VolGroup /dev/md1 sudo vgdisplay sudo vgs
VGの全容量を使用します。
lvという名前でLVを作成します。
/dev/VolGroup/lv、または/dev/mapper/VolGroup-lvでアクセス可能です。
sudo lvcreate -l +100%FREE VolGroup -n lv
ファイルシステムを作成します。
sudo mkfs -t ext4 /dev/VolGroup/lv
マウントポイントを作成します。
sudo mkdir /LVM
マウントします。
sudo mount -t ext4 /dev/VolGroup/lv /LVM sudo umount /LVM
/etc/fstabに記述します。
sudo vi /etc/fstab
fatabの設定を反映させて、マウントできるか確認します。
sudo systemctl daemon-reload sudo mount /LVM df -h
LVにディレクトリを作成します。
cd /LVM sudo mkdir /data
容量を増やす RAID1の構築 md2
更にHDDを2台追加してmd2を作成し、ボリュームグループに追加します。
最初の2台と同様に/dev/sdxの割り当てを探し、fdiskで領域を作成します。
今回は/dev/sdeと/dev/sdfでした。
sudo fdisk /dev/sde sudo fdisk /dev/sdf sudo fdisk -l sudo mdadm --create /dev/md2 --level=1 --raid-devices=2 /dev/sde1 /dev/sdf1 su mdadm --detail --scan > /etc/mdadm/mdadm.conf exit sudo mdadm --detail /dev/md2 sudo update-initramfs -u cat /proc/mdstat
容量を増やす LVMの構築 md2
md2に物理ボリュームを作成します。
sudo pvcreate /dev/md2
既存のVolGroupに追加します。
sudo vgextend VolGroup /dev/md2 sudo vgdisplay -v VolGroup
LVを拡張します。
sudo lvextend -l +100%FREE /dev/VolGroup/lv
確認します。
sudo vgdisplay -v VolGroup
ファイルシステムを拡張します。
sudo resize2fs /dev/VolGroup/lv
HDDを搭載しているSlot番号とUUIDの対応を調べる
HDDの故障時のためにHDDを搭載しているSlot番号とUUIDの対応を調べておきます。
sudo blkid sudo dmesg | grep sd
Comments