MIRACLE

メールサービス申込 ユーザー登録&ログイン パートナー情報
お問い合わせ FAQ サイトマップ
MIRACLE LINUXの特長 製品紹介 サービス案内 購入 サポート 技術フォーラム

テクノロジー情報


Linux技術トレーニング 基本管理コース II

第2章 ディスク管理〜上級

  1. RAWデバイス
  2. ソフトウェアRAID
  3. LVM(Logical Volume Manager)
    3-1.LVM(Logical Volume Manager)
     (1)LVMについて
     (2)物理ボリュームの作成
     (3)ボリュームグループの作成
     (4)論理ボリュームの作成・利用
     (5)スナップショット
     (6)LVMディスクの追加
     (7)LVMディスクの交換
     (8)LVMディスクの開放

2.ソフトウェアRAID
2-1. ソフトウェアRAIDについて
  • 安価なディスクを組み合わせた信頼性の高い大容量ディスクアレイの形成
  • RAIDコントローラーなどのハードウェアがなくても構築可能
  • RAIDには次の種類があります
    • リニアモード
    • RAID-0
    • RAID-1
    • RAID-5

ソフトウェアRAID

RAIDは「Redundant Array of Inexpensive Disks」の略で、安価なディスクを組み合わせて、信頼性の高い大容量ディスクアレイを形成しようというものです。実際の機能としては、パーティションを組み合わせてRAID構成を作るわけですが、1台のディスクを複数パーティションに分けて組み合わせても意味はありません。高性能、高信頼性を得るためには、複数台のディスクでRAIDシステムを構成してください。

ここで説明するソフトウェアRAIDは、RAIDの機能をカーネルで実現します。したがってRAIDコントローラーなどのハードウェアがない場合にも利用することが可能です。ただし、RAIDコントローラーでRAIDの機能を実現しているハードウェアRAIDと比較すると、ソフトウェアRAIDではI/O処理においてRAID機能の処理のために余分にCPUを使用しますので、I/Oパフォーマンスが低下することがあります。

RAIDの種類

RAIDの種類にはリニアモードとRAIDレベルというものがあります。以下にLinuxのソフトウェアRAIDでサポートしているものについて説明します。

・リニアモード
複数のディスクを単純に結合して、大容量のディスクを作成します。一台のディスクが壊れるとすべてのデータを失う恐れがあるので、信頼性は低く、また性能向上もほとんど望めません。
・RAID-0
「ストライピング」と呼ばれ、データを分割して複数ディスクに書き込みます。これによりI/Oがディスクに分散されるのでI/O性能が向上します。しかし、一台のディスクが壊れるとすべてのデータを失うことになります。
・RAID-1
「ミラーリング」と呼ばれ、一台のディスクの完全なコピーを他のディスクに保持します。信頼性は高くなりますが、I/Oの性能は一台のディスクよりも低下します。
・RAID-5
データの書込み時にデータのパリティ情報も書込み、データとパリティ情報を複数のディスクに分散して書き込みます。三台以上のディスクで構成され、一台のディスクが壊れてもデータを復旧できます。

2-2. ソフトウェアRAIDの作成
  • ソフトウェアRAIDは以下の手順で作成できます
    • RAIDを構成する対象パーティションの作成
    • /etc/mdadm.confを編集
    • RAIDデバイスの作成
  • ソフトウェアRAIDの運用
    • RAIDデバイスの起動・停止
    • RAIDデバイスの状態確認
    • RAIDデバイスの使用
通常のパーティションのように扱うことができます
 ファイルシステムの構築
 自動的にマウントするために/etc/fstabにデバイスの設定を追加

RAIDを構成する対象パーティションの作成

まず少なくとも、2つのパーティションを用意します。RAID-5であれば、最低3つのパーティションが必要となります。実際の運用では、それらのパーティションが、それぞれ別のディスク上になければ意味がありませんが、ソフトウェアRAIDのテストであれば、同じディスク上であっても特に問題はありません。それぞれのパーティションサイズが同じである必要はありませんが、異なるサイズのパーティションを利用した場合、利用されない領域が発生するので、ディスク領域を効率よく利用するためにはサイズが等しいことが望ましいでしょう。

ソフトウェアRAIDとして利用するパーティションは、パーティションのIDを0xFDに設定しておくと起動時に自動的にソフトウェアRAID用のパーティションとして認識されます。/sbin/fdiskでパーティションを作成する時点でパーティションのIDを0xFDに設定しておきましょう。次頁にその方法をご紹介します。

/etc/sysconfig/rawdevicesファイルを設定

システム起動時に自動的にRAWデバイスをバインドするためには、etc/sysconfig/rawdevicesファイルへの設定が必要です。例えば以下のように設定します。

・該当パーティションのIDを0xFDにする方法
# /sbin/fdisk /dev/sdd
コマンド (m でヘルプ): p
Disk /dev/sdd: 1073 MB, 1073741824 bytes
64 heads, 32 sectors/track, 1024 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes
デバイス ブート    始点   終点     ブロック  ID  システム
/dev/sdd1       1     102    104432  83  Linux

コマンド (m でヘルプ): t
Selected partition 1
16進数コード (L コマンドでコードリスト表示): fd
領域のシステムタイプを 1 から fd (Linux raid 自動検出) に変更しました
コマンド (m でヘルプ): p
Disk /dev/sdd: 1073 MB, 1073741824 bytes
64 heads, 32 sectors/track, 1024 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes
デバイス ブート    始点   終点     ブロック  ID  システム
/dev/sdd1      1      102     104432  fd  Linux raid 自動検出
/etc/mdadm.confの編集

次の例は、/dev/sdb1, /dev/sdc1, /dev/sdd1を使用してRAIDを構成するための設定です。

DEVICE  /dev/sdb1   /dev/sdc1       /dev/sdd1
ARRAY   /dev/md0    devices=/dev/sdb1,/dev/sdc1,/dev/sdd1

ソフトウェアRAIDとして構成したいデバイスのデバイスファイル名は、通常は/dev/md0, /dev/md1という順番で割り当てていきます。設定内容の詳細に関してはmdadm.confのオンラインマニュアルを参照してください。

RAIDデバイスの作成

/etc/mdadm.confの記述が完了したら、/sbin/mdadmコマンドを使用しRAIDデバイスを作成します。次の例は、/dev/sdb1,/dev/sdc1,/dev/sdd1を使用してRAID-5を構成するためのコマンドです。

# /sbin/mdadm -C /dev/md0 -l 5 -n 3 /dev/sdb1 /dev/sdc1 /dev/sdd1

ここで「 -C」 は新規作成を表します。 「/dev/md0」はRAIDデバイスファイル名を表します。
「 -l 5」についてはRAIDのレベルが5であることを示してます。「-n 3」はアレイ内のデバイスの数が3であることを示しています。「 /dev/sdb1 /dev/sdc1 /dev/sdd1 」はアレイ内のデバイスのリストです。他にも様々なパラメータがあります。詳細は/sbin/mdadmのオンラインマニュアルを参照してください。

RAIDデバイスの起動・停止

次のコマンドで定義済みのRAIDデバイスを編成し、起動することができます。

# /sbin/mdadm -A /dev/md0

また、次のコマンドでRAIDデバイスを停止し、すべてのリソースを開放することができます。

# /sbin/mdadm -S /dev/md0
RAIDデバイスの状態確認

ソフトウェアRAIDの状態を調べるには以下のコマンドを使用します。

・/proc/mdstatの参照
# /bin/cat /proc/mdstat
Personalities : [raid5]
md0 : active raid5 sdd1[2] sdc1[1] sdb1[0]
         196352 blocks   level 5, 64k   chunk, algorithm  2 [3/3]  [UUU]
unused devices: <none>
・「/sbin/mdadm -D」コマンド
# /sbin/mdadm  -D  /dev/md0
/dev/md0:
          Version : 00.90.01
    Creation Time : Tue Jul 19 18:17:28 2005    
       Raid Level : raid5
       Array Size : 196352 (191.75 MiB 201.06 MB)
      Device Size : 98176 (95.88 MiB 100.53 MB)
     Raid Devices : 3
    Total Devices : 3
  Preferred Minor : 0
      Persistence : Superblock is persistent

      Update Time : Tue Jul 19 18:18:54 2005
            State : clean
   Active Devices : 3
  Working Devices : 3
   Failed Devices : 0
    Spare Devices : 0

           Layout : left-symmetric
       Chunk Size : 64K

    Number  Major   Minor   RaidDevice  State
        0    3       65        0        active sync /dev/sdb1
        1    3       66        1        active sync /dev/sdc1
        2    3       67        2        active sync /dev/sdd1
             UUID : 5a9fe0cd:e89a279b:29b60829:ec3065d2
           Events : 0.64
RAIDデバイスの使用

mdadmで初期化が完了したRAIDデバイスは、通常のパーティションのように扱うことができます。次のコマンドは/dev/md0に割り当てられたRAIDデバイスに、ext3ファイルシステムを構築しています。

# /sbin/mkfs  -t  ext3  /dev/md0

MIRACLE LINUXでは、カーネルの起動時に自動的にRAIDデバイスを検出して、ソフトウェアRAIDを起動します。ただし、パーティションのIDを0xFDにすることを忘れないでください。
システム起動時にパーティションを自動的にマウントするためには、/etc/fstabにソフトウェアRAIDデバイスを追加します。

/dev/md0  /mnt/raid  ext3     defaults     1 2

第2章 1へ 第2章 3へ

■この資料の評価をお願いします。
とても参考になった
参考になった
どちらでもない
あまり参考にならなかった
まったく参考にならなかった

コメントがある場合は以下に記述してください。技術資料として取り上げてほしいテーマも受け付けています。

以下は任意です。

お名前(フルネーム) :
会社名 :
メールアドレス :
 

会社情報 採用情報 個人情報保護方針 情報セキュリティ基本方針 商標等取り扱い事項 English
Copyright(c)2000-2015 MIRACLE LINUX CORPORATION. All Rights Reserved.