お知らせ!! 「jpcmoh.myds.me」から「mohlog.com」へ変更しました
PR

RAID1 Ubuntu Server障害発生リハーサル その1

アイキャッチ RAID1リハーサルその1 Linuxをつかおう!!
記事内に広告が含まれています。
スポンサーリンク

はじめに

前回、2台のSSDを使ってRAID1にし、そこにUbuntuサーバーをインストールしました。

今回、障害が発生したと想定して、再構築のリハーサルをやってみます。

NOTE

Ubuntu Server は、24.04.2LTSを使用しています。

スポンサーリンク

再構築のリハーサル

まずは、簡単なところから始めました。
SSDが故障したのではなく、起動時にSSDが一台外れてしまっていて、そのまま起動したという想定です。
便宜上、2台をそれぞれSSD1, SSD2と呼びます。

まずは正常な状態のおさらい

正常時

青字が注目点

mohlog@qe3csvr:~$ cat /proc/mdstat <- RAIDの状態確認
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdb2[1] sda2[0]
116050944 blocks super 1.2 [2/2] [UU]
bitmap: 1/1 pages [4KB], 65536KB chunk
unused devices:

SSD2を外して起動

正常運用時は、/dev/sdb として接続される方のSSD2をはずして起動してみました。

SSD2外し

正常に起動しました。
cat /proc/mdstat でRAIDの状態を調べると、赤字部分が変わってます。

mohlog@qe3csvr:~$ cat /proc/mdstat <- RAIDの状態確認
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md0 : active raid1 sda2[0]
      116050944 blocks super 1.2 [2/1] [U_]
      bitmap: 1/1 pages [4KB], 65536KB chunk

正常時 [UU] ー> [U_]となって、RAID1の片側がなくなっているのがわかります。
そこで、再びSSD2を接続しますが、何もしなくても復旧される、ことはありません。
以下のように復旧させます。

mohlog@qe3csvr:~$ sudo mdadm --add /dev/md0 /dev/sdb2 <- RAID構成にsdb2を加える
mdadm: re-added /dev/sdb2

mohlog@qe3csvr:~$ cat /proc/mdstat <- RAIDの状態確認
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sda2[0] sdb2[1]
116050944 blocks super 1.2 [2/2] [UU]
bitmap: 1/1 pages [4KB], 65536KB chunk

これでもとに戻りました。

SSD1を外して起動

正常運用時は、/dev/sda として接続される方のSSD1をはずして起動してみました。

SSD1外し

起動途中で、なにかやってます。


結構待たされましたが、正常に起動しました。

cat /proc/mdstat でRAIDの状態を調べると、正常な状態から、赤字部分が変わってます。

mohlog@qe3csvr:~$ cat /proc/mdstat <- RAIDの状態確認
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md0 : active raid1 sda2[1] <- SSD1があったときは、sdb2だった
      116050944 blocks super 1.2 [2/1] [_U]
      bitmap: 1/1 pages [4KB], 65536KB chunk

正常時 [UU] ー> [_U]となって、RAID1の片側がなくなっているのがわかります。
そこで、再びSSD1を接続しますが、やはり何もしなければ、復旧されません。
いったん再起動したあと、以下のように復旧させます。再起動するのは、SSD2を正常時と同じ、sdbと認識させるため。

mohlog@qe3csvr:~$ cat /proc/mdstat <- RAIDの状態確認
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md0 : active raid1 sdb2[1] <- 再起動するとsdb2に戻っている
      116050944 blocks super 1.2 [2/1] [_U]
      bitmap: 1/1 pages [4KB], 65536KB chunk

@qe3csvr:~$ sudo mdadm --add /dev/md0 /dev/sda2 <- RAID構成にsda2を加える
mdadm: re-added /dev/sda2

mohlog@qe3csvr:~$ cat /proc/mdstat <- RAIDの状態確認
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sda2[0] sdb2[1]
116050944 blocks super 1.2 [2/2] [UU]
bitmap: 1/1 pages [4KB], 65536KB chunk

これでもとに戻りました。

スポンサーリンク

おわりに

まずは、簡単なところから始めましたが、今後問題になる点も見つかりました。
それぞれのSSDの第1パーティションには、起動に必要な情報が入っているのですが、ここはRAID1になってません。

RAID用SSDの構成
SSD1外し

そして、SSD1の第1パーティションのみが、/boot/efi にマウントされるようになってます。
その結果、SSD2のみ(SSD1をはずして)で起動したときは、以下のようになってしまい、その影響で、起動に時間がかかっていたようです。

正常時とSSD1のみ(SSD2をはずして)で起動したとき
mohlog@qe3csvr:~$ df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 769M 1.5M 768M 1% /run
efivarfs 192K 68K 120K 37% /sys/firmware/efi/efivars
/dev/md0p1 109G 6.6G 97G 7% /
tmpfs 3.8G 0 3.8G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/sda1 1.1G 6.2M 1.1G 1% /boot/efi
tmpfs 769M 12K 769M 1% /run/user/1000
SSD2のみ(SSD1をはずして)で起動したとき
mohlog@qe3csvr:~$ df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 769M 1.5M 768M 1% /run
efivarfs 192K 68K 120K 37% /sys/firmware/efi/efivars
/dev/md0p1 109G 6.6G 97G 7% /
tmpfs 3.8G 0 3.8G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 769M 12K 769M 1% /run/user/1000

これは、SSD1が故障した場合、なんとかする必要がありそうです。

次回はそのあたりも一緒に考えたいと思います。

コメント

タイトルとURLをコピーしました