LoginSignup
10
13

More than 5 years have passed since last update.

ubuntu 14.04でのraid1作成、復旧手順(その1)

Posted at

サーバOSをubuntu使えと言われて、一生懸命勉強中のみゅみゅです。
サーバとして使うためには障害復旧の手順の確立が第一ということで、HDD障害を想定してubuntuでのraid 1の構築、障害発生から復旧まで流れを自分の為にまとめていきます。

raid 1でのインストール

実マシンでやると大変なのでVirtualBox上でやります。
20150520-1.png
こんな感じで、HDDを二つ用意してインストール開始
何も考えずにHDDのパーティション作成のところで自動でリターンを押していったら、raidを作らずにそのまま進んだので失敗。。。
(途中で戻るとか駆使すればできるのかもしれないけどそこまでやらない。。。)

20150520-2.png
ディスクのパーティショニングで手動を選択

20150520-3.png
こんな感じにsda、sdbにボリュームを作成してソフトウェアRAIDの設定

20150520-4.png
MDデバイスの作成を選択して

20150520-5.png
ミラーリングで耐障害性を上げるのでRAID 1を選択

20150520-6.png
HDDを二つ接続するので、2と選択

20150520-7.png
スペアのディスクは設定しないので0と

20150520-8.png
raid 1を設定するディスクを選択
ここでは sda sdbが該当

で、また最初のmd作成に戻るので完了と
これで
20150520-9.png

RAID1デバイスが作成されました。
これでガイドによるパーティショニングを選択して

ガイド - ディスク全体を使い LVMをセットアップする

を選択して、ディスクの選択を先ほど作成したRAID1デバイスを選択しパーティションを切ってもらいます。
※LVMを使わなくてもいいと思いますが、HDDを増やすとかその為に。。。
20150520-10.png

最終的には、こんな感じのパーティションとなりました。
20150520-11.png

LVMでルートとスワップ
これで【パーティショニングの終了とディスクへの書き込み】でRAID1の設定を終え、普通にパッケージやらなんやらのインストールを行いました。

起動するとError: diskfilter writes are not supportedとエラーが出ますが、LVMのバグだそうなので気にしないことだそうです。
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1274320/comments/34

起動しましたのraidの状態の確認

root@raidtest:~# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdb1[1] sda1[0]
      8382400 blocks super 1.2 [2/2] [UU]

unused devices: <none>

sba1、sdb1にraid1が出来て、名前がmd0ですね
md0の詳細を確認

root@raidtest:~# ls -al /dev/md*
brw-rw---- 1 root disk   9, 0  5月 20 11:31 /dev/md0
brw-rw---- 1 root disk 259, 0  5月 20 11:23 /dev/md0p1
brw-rw---- 1 root disk 259, 1  5月 20 11:23 /dev/md0p2
brw-rw---- 1 root disk 259, 2  5月 20 11:23 /dev/md0p5

/dev/md:
合計 0
drwxr-xr-x  2 root root  120  5月 20 11:22 .
drwxr-xr-x 17 root root 4240  5月 20 11:23 ..
lrwxrwxrwx  1 root root    6  5月 20 11:31 0 -> ../md0
lrwxrwxrwx  1 root root    8  5月 20 11:23 0p1 -> ../md0p1
lrwxrwxrwx  1 root root    8  5月 20 11:23 0p2 -> ../md0p2
lrwxrwxrwx  1 root root    8  5月 20 11:23 0p5 -> ../md0p5

実態は【/dev/md0??】でリンクで【/dev/md/???】があるとわかります。
/dev/md0のパーティションの中身は

root@raidtest:~# parted /dev/md0
GNU Parted 2.3
/dev/md0 を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) print
モデル: Linux Software RAID Array (md)
ディスク /dev/md0: 8584MB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: msdos

番号  開始    終了    サイズ  タイプ    ファイルシステム  フラグ
 1    32.3kB  255MB   255MB   primary   ext2
 2    255MB   8579MB  8324MB  extended
 5    255MB   8579MB  8324MB  logical                     lvm

パーティションが1,2,5と設定されていてます。
2番が実領域、5番がlvmの論理領域 1番はいつものごとく/bootですね

lvm構成の確認です。
ホスト名は【raidtest】という名前でその名前がそのままボリューム名に使われてます。

root@raidtest:~# pvdisplay
  --- Physical volume ---
  PV Name               /dev/md0p5
  VG Name               raidtest-vg
  PV Size               7.75 GiB / not usable 2.34 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              1984
  Free PE               6
  Allocated PE          1978
  PV UUID               DqvWTQ-CN0G-k0z8-8dhv-SnrM-rUDL-0SXomy

root@raidtest:~# vgdisplay
  --- Volume group ---
  VG Name               raidtest-vg
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               7.75 GiB
  PE Size               4.00 MiB
  Total PE              1984
  Alloc PE / Size       1978 / 7.73 GiB
  Free  PE / Size       6 / 24.00 MiB
  VG UUID               YChiaQ-RgQ2-QJjM-Y3hW-hU1H-l6l2-xYVmne

root@raidtest:~# lvdisplay
  --- Logical volume ---
  LV Path                /dev/raidtest-vg/root
  LV Name                root
  VG Name                raidtest-vg
  LV UUID                CZHD85-Jglp-N6mI-1mT1-VQHK-sWic-Bzblni
  LV Write Access        read/write
  LV Creation host, time raidtest, 2015-05-20 11:01:58 +0900
  LV Status              available
  # open                 1
  LV Size                7.23 GiB
  Current LE             1851
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:0

  --- Logical volume ---
  LV Path                /dev/raidtest-vg/swap_1
  LV Name                swap_1
  VG Name                raidtest-vg
  LV UUID                KJNf1E-cdHO-I3Eb-8pww-magB-R1u4-KixN1g
  LV Write Access        read/write
  LV Creation host, time raidtest, 2015-05-20 11:01:58 +0900
  LV Status              available
  # open                 2
  LV Size                508.00 MiB
  Current LE             127
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:1

よくわからないので図に書いてみると
20150520-12.png
こんな感じですね。
LVMのボリューム名がホスト名になってるところが余計に混乱しそうですね。

Ubuntu14.04をRAID1でインストールするとこんな感じのパーティション構成になるのがわかりました。
次は、実際にHDDを止めた時の挙動を見てみたいと思います。

10
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
13