8
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Ubuntu ServerでOS起動するSATAソフトウェアRAID構成を構築してみた

Last updated at Posted at 2020-01-03

背景

ベアメタルサーバーにて、ストレージ2台でソフトウェアRAID1(ミラー)構成でOS起動する設定メモ、個人的にまとめて検証してみた。
RHELやCentOSの情報は見掛けるけど、Ubuntu環境でも試してLinux環境の汎用性のある情報としたいかなと思っています。
ハードウェアRAIDカードが導入簡単だけど安くはないのでSATAで簡単にソフトウェアRAIDで冗長化しましょう。

動作環境

この手の情報はネットで検索するとVirtualboxで試したページはよくあるけど、実機のベアメタルサーバーで実際に動作するかは、メーカーや機種によってBIOSの動作も違ってくるので一概に言えないのでご了承下さい。あくまで参考までに。
今回は皆さんの自宅ラックに数台はよくある、FUJITSUのPRIMERGYシリーズの中古ラックマウントサーバーの実機で検証しました。

BIOS設定

最初にベアメタルサーバーの実機のBIOS設定をします。[F2]や[DEL]キーでBIOS画面を表示させます。
IMG_4025 (2).jpg
IMG_4027 (2).jpg
ここでBIOS設定のSATAモードは[RAID Mode]ではなく[AHCI Mode]に設定します。
この[RAID Mode]はいわゆるFakeRAIDとも言われているWindows OSのドライバーソフトが前提のソフトウェアRAID設定です。
この種のFakeRAIDはLinuxではドライバーソフトが不足しているので原則として使用不可です。一部にはRHELのドライバーソフトがある場合があります。

Ubuntu Server インストーラー

ubuntuのソフトウェアRAID環境をインストールする時は、「Desktop」版や通常の「Server(Live)」版ではインストールがうまく出来ないので、必ず「Alternative Ubuntu Server installer」版を使用しましょう。

今回は「Ubuntu Server 18.04.3 LTS」を使用しました。

言語設定

日本語を選択すると途中で止まってしまうので、英語のままでインストールします。
IMG_4029.jpg
ただしキーボードや地域設定は日本語でも問題はありませんでした。

ストレージのパーティション構成

今回は単体のストレージ全体として2つのパーティションを作成します。ひとつはOS起動用、もうひとつがOSやユーザー用です。
それを2台「/dev/sda」「/dev/sdb」でRAID1(ミラー)構成にしますので、合計4つのパーティションになります。
IMG_4030 (2).jpg
そのパーティションではRAID属性のパーティション上にExt4のファイルフォーマットを構築します。
なおLVMについては今回は使用しません。

OS起動用パーティション作成

ストレージの最初にOS起動用のパーティションを作成します。
サイズは1GBもあれば十分です。2台のストレージにそれぞれ「/dev/sda1」「/dev/sdb1」作成します。
パーティションはRAID属性に設定します。また必ずOS起動フラグ(bootable flag:)を有効(on)にしましょう。
IMG_4031 (2).jpg
IMG_4032.jpg
Ext4のファイルフォーマットはRAIDを構成した後なのでここでは設定しません。間違えないように。

OSやユーザー用パーティション作成

ストレージの残りの空き領域はOSやユーザー用として、2台のストレージにそれぞれ「/dev/sda2」「/dev/sdb2」作成します。
またパーティションはRAID属性に設定します。
IMG_4033.jpg
Ext4のファイルフォーマットはRAIDを構成した後なのでここでは設定しません。間違えないように。

RAID構成デバイスMDを作成

RAID構成ストレージはMDデバイスとして認識されます。2台のストレージに作成したRAID属性のパーティションをそれぞれ組み合わせて、MDデバイスを作成します。

  • 最初に作成したOS起動用の容量1GBのRAID属性パーティション「/dev/sda1」「/dev/sdb1」を組み合わせて「md0」のRAIDデバイスを作成
    IMG_4035 (2).jpg

  • 残りの「/dev/sda2」「/dev/sdb2」を組み合わせて、「md1」のRAIDデバイスを作成
    IMG_4037 (2).jpg

もしも作成後に画面表示内容が変わらない場合は、1つ画面を戻して再認識させると表示されます。

Ext4ファイルフォーマット設定

作成されたRAIDのMDデバイスにExt4ファイルフォーマットのパーティションを作成します。

  • OS起動用の「md0」のマウント位置は「/boot」に設定
    IMG_4040 (2).jpg

  • OSやユーザー用の「md1」のマウント位置は「/」に設定
    IMG_4042.jpg

パーティション作成の最終確認

ストレージのソフトウェアRAID構成が想定通りかよく確認して、インストールのパーティション作成を実行します。
特にOS起動用RAIDパーティションのOS起動フラグを忘れていないか確認しましょう。
これで最後までインストールが無事に完了して再起動出来ると思います。

OS起動確認

再起動後、RAIDの同期設定が進行しているので確認してみます。

$ cat /proc/mdstat

RAID同期が完了したら、それぞれのストレージ単独でOS起動するか確認してみましょう。

参考

CentOSにてRAIDストレージの障害発生HDD交換の作業メモ

8
12
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
8
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?