序章

The mdadm ユーティリティは、LinuxのソフトウェアRAID機能を使用してストレージアレイを作成および管理するために使用できます。 管理者は、個々のストレージデバイスを調整し、パフォーマンスまたは冗長性の特性が優れた論理ストレージデバイスを作成する際に大きな柔軟性を備えています。

このガイドでは、Ubuntu18.04サーバーを使用してセットアップできるさまざまなRAID構成について説明します。

前提条件

このガイドの手順を完了するには、次のものが必要です。

  • Ubuntu 18.04サーバーでsudo権限を持つroot以外のユーザー:このガイドの手順は、 sudo ユーザー。 これらの権限でアカウントを設定する方法については、Ubuntu18.04初期サーバー設定ガイドに従ってください。
  • RAIDの用語と概念の基本的な理解:このガイドでは、いくつかのRAIDの用語に触れますが、より完全な理解は非常に役立ちます。 RAIDの詳細と、自分に適したRAIDレベルをよりよく理解するには、RAIDの概要に関する記事をお読みください。
  • サーバーで利用可能な複数のrawストレージデバイス:サーバーでさまざまなタイプのアレイを構成する方法を示します。 そのため、構成するにはいくつかのドライブが必要になります。 DigitalOceanを使用している場合は、ブロックストレージボリュームを使用してこの役割を果たすことができます。 アレイの種類に応じて、少なくとも 2〜4台のストレージデバイスが必要になります。 これらのドライブは、このガイドに従う前にフォーマットする必要はありません。

既存のRAIDデバイスのリセット

このガイド全体を通して、さまざまなRAIDレベルを作成する手順を紹介します。 フォローしたい場合は、各セクションの後でストレージデバイスを再利用することをお勧めします。 このセクションを参照して、新しいRAIDレベルをテストする前にコンポーネントストレージデバイスをすばやくリセットする方法を学ぶことができます。 アレイをまだ設定していない場合は、このセクションをスキップしてください。

警告:このプロセスは、アレイとそれに書き込まれたデータを完全に破棄します。 正しいアレイで操作していること、およびアレイを破棄する前に保持する必要のあるデータをコピーしたことを確認してください。

でアクティブなアレイを見つけます /proc/mdstat 次のように入力してファイルを作成します。

  1. cat /proc/mdstat
Output
Personalities : [raid0] [linear] [multipath] [raid1] [raid6] [raid5] [raid4] [raid10] md0 : active raid0 sdc[1] sdd[0] 209584128 blocks super 1.2 512k chunks unused devices: <none>

ファイルシステムからアレイをアンマウントします。

  1. sudo umount /dev/md0

次に、次のように入力して、アレイを停止して削除します。

  1. sudo mdadm --stop /dev/md0

次のコマンドを使用して、アレイの構築に使用されたデバイスを検索します。

警告:次の点に注意してください /dev/sd* 名前は再起動するたびに変更される可能性があります。 毎回それらをチェックして、正しいデバイスで操作していることを確認してください。

  1. lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Output
NAME SIZE FSTYPE TYPE MOUNTPOINT sda 100G disk sdb 100G disk sdc 100G linux_raid_member disk sdd 100G linux_raid_member disk vda 25G disk ├─vda1 24.9G ext4 part / ├─vda14 4M part └─vda15 106M vfat part /boot/efi

アレイの作成に使用されたデバイスを検出したら、スーパーブロックをゼロにしてRAIDメタデータを削除し、通常の状態にリセットします。

  1. sudo mdadm --zero-superblock /dev/sdc
  2. sudo mdadm --zero-superblock /dev/sdd

配列への永続的な参照をすべて削除する必要があります。 編集します /etc/fstab ファイルを作成してコメントアウトするか、配列への参照を削除します。

  1. sudo nano /etc/fstab
/ etc / fstab
. . .
# /dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0

また、配列定義をコメントアウトするか、から削除します。 /etc/mdadm/mdadm.conf ファイル:

  1. sudo nano /etc/mdadm/mdadm.conf
/etc/mdadm/mdadm.conf
. . .
# ARRAY /dev/md0 metadata=1.2 name=mdadmwrite:0 UUID=7261fb9c:976d0d97:30bc63ce:85e76e91

最後に、 initramfs 再度、アーリーブートプロセスが使用できないアレイをオンラインにしようとしないようにします。

  1. sudo update-initramfs -u

この時点で、ストレージデバイスを個別に、または別のアレイのコンポーネントとして再利用する準備ができているはずです。

RAID0アレイの作成

RAID 0アレイは、データをチャンクに分割し、使用可能なディスク全体にストライピングすることで機能します。 これは、各ディスクにデータの一部が含まれており、情報を取得するときに複数のディスクが参照されることを意味します。

  • 要件:最低2つのストレージデバイス
  • 主な利点:パフォーマンス
  • 注意事項:機能的なバックアップがあることを確認してください。 単一のデバイスに障害が発生すると、アレイ内のすべてのデータが破壊されます。

コンポーネントデバイスの識別

開始するには、使用するrawディスクの識別子を見つけます。

  1. lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Output
NAME SIZE FSTYPE TYPE MOUNTPOINT sda 100G disk sdb 100G disk vda 25G disk ├─vda1 24.9G ext4 part / ├─vda14 4M part └─vda15 106M vfat part /boot/efi

上記のように、ファイルシステムのない2つのディスクがあり、それぞれのサイズは100Gです。 この例では、これらのデバイスに /dev/sda/dev/sdb このセッションの識別子。 これらは、アレイの構築に使用する生のコンポーネントになります。

アレイの作成

これらのコンポーネントを使用してRAID0アレイを作成するには、それらをに渡します。 mdadm --create 指図。 作成するデバイス名を指定する必要があります(/dev/md0 この場合)、RAIDレベル、およびデバイスの数:

  1. sudo mdadm --create --verbose /dev/md0 --level=0 --raid-devices=2 /dev/sda /dev/sdb

RAIDが正常に作成されたことを確認するには、 /proc/mdstat ファイル:

  1. cat /proc/mdstat
Output
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0 : active raid0 sdb[1] sda[0] 209584128 blocks super 1.2 512k chunks unused devices: <none>

強調表示された行でわかるように、 /dev/md0 デバイスは、RAID0構成で /dev/sda/dev/sdb デバイス。

ファイルシステムの作成とマウント

次に、アレイ上にファイルシステムを作成します。

  1. sudo mkfs.ext4 -F /dev/md0

新しいファイルシステムを接続するためのマウントポイントを作成します。

  1. sudo mkdir -p /mnt/md0

次のように入力して、ファイルシステムをマウントできます。

  1. sudo mount /dev/md0 /mnt/md0

次のように入力して、新しいスペースが使用可能かどうかを確認します。

  1. df -h -x devtmpfs -x tmpfs
Output
Filesystem Size Used Avail Use% Mounted on /dev/vda1 25G 1.4G 23G 6% / /dev/vda15 105M 3.4M 102M 4% /boot/efi /dev/md0 196G 61M 186G 1% /mnt/md0

新しいファイルシステムがマウントされ、アクセス可能になります。

アレイレイアウトの保存

起動時にアレイが自動的に再構築されるようにするには、調整する必要があります /etc/mdadm/mdadm.conf ファイル。 次のように入力すると、アクティブなアレイを自動的にスキャンしてファイルを追加できます。

  1. sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf

その後、initramfsまたは初期RAMファイルシステムを更新して、初期の起動プロセス中にアレイを使用できるようにすることができます。

  1. sudo update-initramfs -u

新しいファイルシステムのマウントオプションをに追加します /etc/fstab 起動時に自動マウントするためのファイル:

  1. echo '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab

これで、RAID 0アレイが自動的に組み立てられ、ブートごとにマウントされます。

RAID1アレイの作成

RAID 1アレイタイプは、使用可能なすべてのディスク間でデータをミラーリングすることによって実装されます。 RAID 1アレイの各ディスクはデータの完全なコピーを取得し、デバイスに障害が発生した場合に冗長性を提供します。

  • 要件:最低2つのストレージデバイス
  • 主な利点:冗長性
  • 注意事項:データの2つのコピーが維持されるため、ディスク領域の半分のみが使用可能になります

コンポーネントデバイスの識別

開始するには、使用するrawディスクの識別子を見つけます。

  1. lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Output
NAME SIZE FSTYPE TYPE MOUNTPOINT sda 100G disk sdb 100G disk vda 25G disk ├─vda1 24.9G ext4 part / ├─vda14 4M part └─vda15 106M vfat part /boot/efi

上記のように、ファイルシステムのない2つのディスクがあり、それぞれのサイズは100Gです。 この例では、これらのデバイスに /dev/sda/dev/sdb このセッションの識別子。 これらは、アレイの構築に使用する生のコンポーネントになります。

アレイの作成

これらのコンポーネントを使用してRAID1アレイを作成するには、それらをに渡します。 mdadm --create 指図。 作成するデバイス名を指定する必要があります(/dev/md0 この場合)、RAIDレベル、およびデバイスの数:

  1. sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sda /dev/sdb

使用しているコンポーネントデバイスがパーティションではない場合 boot フラグを有効にすると、次の警告が表示される可能性があります。 続行するには、yと入力しても安全です。

Output
mdadm: Note: this array has metadata at the start and may not be suitable as a boot device. If you plan to store '/boot' on this device please ensure that your boot-loader understands md/v1.x metadata, or use --metadata=0.90 mdadm: size set to 104792064K Continue creating array? y

The mdadm ツールはドライブのミラーリングを開始します。 これは完了するまでに時間がかかる場合がありますが、この時間中にアレイを使用できます。 ミラーリングの進行状況を監視するには、 /proc/mdstat ファイル:

  1. cat /proc/mdstat
Output
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0 : active raid1 sdb[1] sda[0] 104792064 blocks super 1.2 [2/2] [UU] [====>................] resync = 20.2% (21233216/104792064) finish=6.9min speed=199507K/sec unused devices: <none>

最初に強調表示されている行でわかるように、 /dev/md0 デバイスは、RAID1構成で /dev/sda/dev/sdb デバイス。 2番目に強調表示されている行は、ミラーリングの進行状況を示しています。 このプロセスが完了するまで、ガイドを続けることができます。

ファイルシステムの作成とマウント

次に、アレイ上にファイルシステムを作成します。

  1. sudo mkfs.ext4 -F /dev/md0

新しいファイルシステムを接続するためのマウントポイントを作成します。

  1. sudo mkdir -p /mnt/md0

次のように入力して、ファイルシステムをマウントできます。

  1. sudo mount /dev/md0 /mnt/md0

次のように入力して、新しいスペースが使用可能かどうかを確認します。

  1. df -h -x devtmpfs -x tmpfs
Output
Filesystem Size Used Avail Use% Mounted on /dev/vda1 25G 1.4G 23G 6% / /dev/vda15 105M 3.4M 102M 4% /boot/efi /dev/md0 99G 60M 94G 1% /mnt/md0

新しいファイルシステムがマウントされ、アクセス可能になります。

アレイレイアウトの保存

起動時にアレイが自動的に再構築されるようにするには、調整する必要があります /etc/mdadm/mdadm.conf ファイル。 次のように入力すると、アクティブなアレイを自動的にスキャンしてファイルを追加できます。

  1. sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf

その後、initramfsまたは初期RAMファイルシステムを更新して、初期の起動プロセス中にアレイを使用できるようにすることができます。

  1. sudo update-initramfs -u

新しいファイルシステムのマウントオプションをに追加します /etc/fstab 起動時に自動マウントするためのファイル:

  1. echo '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab

これで、RAID 1アレイが自動的に組み立てられ、ブートごとにマウントされます。

RAID5アレイの作成

RAID 5アレイタイプは、使用可能なデバイス間でデータをストライピングすることによって実装されます。 各ストライプの1つのコンポーネントは、計算されたパリティブロックです。 デバイスに障害が発生した場合、パリティブロックと残りのブロックを使用して、欠落しているデータを計算できます。 パリティブロックを受信するデバイスは、各デバイスがバランスの取れた量のパリティ情報を持つようにローテーションされます。

  • 要件:最低3つのストレージデバイス
  • 主な利点:より多くの使用可能な容量を備えた冗長性。
  • 注意事項:パリティ情報が配布されている間、1ディスク分の容量がパリティに使用されます。 RAID 5は、劣化状態の場合、パフォーマンスが非常に低下する可能性があります。

コンポーネントデバイスの識別

開始するには、使用するrawディスクの識別子を見つけます。

  1. lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Output
NAME SIZE FSTYPE TYPE MOUNTPOINT sda 100G disk sdb 100G disk sdc 100G disk vda 25G disk ├─vda1 24.9G ext4 part / ├─vda14 4M part └─vda15 106M vfat part /boot/efi

上記のように、ファイルシステムのない3つのディスクがあり、それぞれのサイズは100Gです。 この例では、これらのデバイスに /dev/sda, /dev/sdb、 と /dev/sdc このセッションの識別子。 これらは、アレイの構築に使用する生のコンポーネントになります。

アレイの作成

これらのコンポーネントを使用してRAID5アレイを作成するには、それらをに渡します。 mdadm --create 指図。 作成するデバイス名を指定する必要があります(/dev/md0 この場合)、RAIDレベル、およびデバイスの数:

  1. sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sda /dev/sdb /dev/sdc

The mdadm ツールはアレイの構成を開始します(パフォーマンス上の理由から、実際にはリカバリプロセスを使用してアレイを構築します)。 これは完了するまでに時間がかかる場合がありますが、この時間中にアレイを使用できます。 ミラーリングの進行状況を監視するには、 /proc/mdstat ファイル:

  1. cat /proc/mdstat
Output
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] md0 : active raid5 sdc[3] sdb[1] sda[0] 209584128 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_] [===>.................] recovery = 15.6% (16362536/104792064) finish=7.3min speed=200808K/sec unused devices: <none>

最初に強調表示されている行でわかるように、 /dev/md0 デバイスは、RAID5構成で /dev/sda, /dev/sdb/dev/sdc デバイス。 2番目に強調表示されている行は、ビルドの進行状況を示しています。

警告:その方法のため mdadm RAID 5アレイを構築しますが、アレイがまだ構築されている間、アレイ内のスペアの数は不正確に報告されます。 これは、アレイを更新する前に、アレイの組み立てが完了するのを待つ必要があることを意味します。 /etc/mdadm/mdadm.conf ファイル。 アレイの構築中に構成ファイルを更新すると、システムはアレイの状態に関する誤った情報を持ち、起動時に正しい名前で自動的にアセンブルできなくなります。

このプロセスが完了するまで、ガイドを続けることができます。

ファイルシステムの作成とマウント

次に、アレイ上にファイルシステムを作成します。

  1. sudo mkfs.ext4 -F /dev/md0

新しいファイルシステムを接続するためのマウントポイントを作成します。

  1. sudo mkdir -p /mnt/md0

次のように入力して、ファイルシステムをマウントできます。

  1. sudo mount /dev/md0 /mnt/md0

次のように入力して、新しいスペースが使用可能かどうかを確認します。

  1. df -h -x devtmpfs -x tmpfs
Output
Filesystem Size Used Avail Use% Mounted on /dev/vda1 25G 1.4G 23G 6% / /dev/vda15 105M 3.4M 102M 4% /boot/efi /dev/md0 197G 60M 187G 1% /mnt/md0

新しいファイルシステムがマウントされ、アクセス可能になります。

アレイレイアウトの保存

起動時にアレイが自動的に再構築されるようにするには、調整する必要があります /etc/mdadm/mdadm.conf ファイル。

上記のように、構成を調整する前に、アレイの組み立てが完了していることを再度確認してください。アレイを構築する前にこの手順を完了すると、システムが再起動時にアレイを正しく組み立てることができなくなります。

  1. cat /proc/mdstat
Output
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] md0 : active raid5 sdc[3] sdb[1] sda[0] 209584128 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU] unused devices: <none>

上記の出力は、再構築が完了したことを示しています。 これで、アクティブなアレイを自動的にスキャンし、次のように入力してファイルを追加できます。

  1. sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf

その後、initramfsまたは初期RAMファイルシステムを更新して、初期の起動プロセス中にアレイを使用できるようにすることができます。

  1. sudo update-initramfs -u

新しいファイルシステムのマウントオプションをに追加します /etc/fstab 起動時に自動マウントするためのファイル:

  1. echo '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab

これで、RAID 5アレイが自動的に組み立てられ、ブートごとにマウントされます。

RAID6アレイの作成

RAID 6アレイタイプは、使用可能なデバイス間でデータをストライピングすることによって実装されます。 各ストライプの2つのコンポーネントは、計算されたパリティブロックです。 1つまたは2つのデバイスに障害が発生した場合、パリティブロックと残りのブロックを使用して、欠落しているデータを計算できます。 パリティブロックを受信するデバイスは、各デバイスがバランスの取れた量のパリティ情報を持つようにローテーションされます。 これはRAID5アレイに似ていますが、2台のドライブに障害が発生する可能性があります。

  • 要件:最低4つのストレージデバイス
  • 主な利点:より多くの使用可能な容量を備えた2倍の冗長性。
  • 注意事項:パリティ情報が配信されている間、2ディスク分の容量がパリティに使用されます。 RAID 6は、劣化状態の場合、パフォーマンスが非常に低下する可能性があります。

コンポーネントデバイスの識別

開始するには、使用するrawディスクの識別子を見つけます。

  1. lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Output
NAME SIZE FSTYPE TYPE MOUNTPOINT sda 100G disk sdb 100G disk sdc 100G disk sdd 100G disk vda 25G disk ├─vda1 24.9G ext4 part / ├─vda14 4M part └─vda15 106M vfat part /boot/efi

上記のように、ファイルシステムのない4つのディスクがあり、それぞれのサイズは100Gです。 この例では、これらのデバイスに /dev/sda, /dev/sdb, /dev/sdc、 と /dev/sdd このセッションの識別子。 これらは、アレイの構築に使用する生のコンポーネントになります。

アレイの作成

これらのコンポーネントを使用してRAID6アレイを作成するには、それらをに渡します。 mdadm --create 指図。 作成するデバイス名を指定する必要があります(/dev/md0 この場合)、RAIDレベル、およびデバイスの数:

  1. sudo mdadm --create --verbose /dev/md0 --level=6 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd

The mdadm ツールはアレイの構成を開始します(パフォーマンス上の理由から、実際にはリカバリプロセスを使用してアレイを構築します)。 これは完了するまでに時間がかかる場合がありますが、この時間中にアレイを使用できます。 ミラーリングの進行状況を監視するには、 /proc/mdstat ファイル:

  1. cat /proc/mdstat
Output
Personalities : [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid1] [raid10] md0 : active raid6 sdd[3] sdc[2] sdb[1] sda[0] 209584128 blocks super 1.2 level 6, 512k chunk, algorithm 2 [4/4] [UUUU] [>....................] resync = 0.6% (668572/104792064) finish=10.3min speed=167143K/sec unused devices: <none>

最初に強調表示されている行でわかるように、 /dev/md0 デバイスは、RAID6構成で /dev/sda, /dev/sdb, /dev/sdc/dev/sdd デバイス。 2番目に強調表示されている行は、ビルドの進行状況を示しています。 このプロセスが完了するまで、ガイドを続けることができます。

ファイルシステムの作成とマウント

次に、アレイ上にファイルシステムを作成します。

  1. sudo mkfs.ext4 -F /dev/md0

新しいファイルシステムを接続するためのマウントポイントを作成します。

  1. sudo mkdir -p /mnt/md0

次のように入力して、ファイルシステムをマウントできます。

  1. sudo mount /dev/md0 /mnt/md0

次のように入力して、新しいスペースが使用可能かどうかを確認します。

  1. df -h -x devtmpfs -x tmpfs
Output
Filesystem Size Used Avail Use% Mounted on /dev/vda1 25G 1.4G 23G 6% / /dev/vda15 105M 3.4M 102M 4% /boot/efi /dev/md0 197G 60M 187G 1% /mnt/md0

新しいファイルシステムがマウントされ、アクセス可能になります。

アレイレイアウトを保存する

起動時にアレイが自動的に再構築されるようにするには、調整する必要があります /etc/mdadm/mdadm.conf ファイル。 アクティブなアレイを自動的にスキャンし、次のように入力してファイルを追加できます。

  1. sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf

その後、initramfsまたは初期RAMファイルシステムを更新して、初期の起動プロセス中にアレイを使用できるようにすることができます。

  1. sudo update-initramfs -u

新しいファイルシステムのマウントオプションをに追加します /etc/fstab 起動時に自動マウントするためのファイル:

  1. echo '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab

これで、RAID 6アレイが自動的に組み立てられ、ブートごとにマウントされます。

複雑なRAID10アレイの作成

RAID 10アレイタイプは、従来、RAID1アレイのセットで構成されるストライプRAID0アレイを作成することによって実装されていました。 このネストされたアレイタイプは、大量のディスクスペースを犠牲にして、冗長性と高性能の両方を提供します。 The mdadm ユーティリティには独自のRAID10タイプがあり、柔軟性が向上した同じタイプの利点を提供します。 これは、配列をネストすることによって作成されたではなくですが、同じ特性と保証の多くを備えています。 を使用します mdadm ここにRAID10があります。

  • 要件:最低3つのストレージデバイス
  • 主な利点:パフォーマンスと冗長性
  • 注意事項:アレイの容量削減量は、保持することを選択したデータコピーの数によって定義されます。 で保存されるコピーの数 mdadm スタイルRAID10は構成可能です。

デフォルトでは、各データブロックの2つのコピーが、いわゆる「ニア」レイアウトで保存されます。 各データブロックの保存方法を決定する可能なレイアウトは次のとおりです。

  • near :デフォルトの配置。 各チャンクのコピーは、ストライピング時に連続して書き込まれます。つまり、データブロックのコピーは、複数のディスクの同じ部分に書き込まれます。
  • far :最初と後続のコピーは、アレイ内のストレージデバイスのさまざまな部分に書き込まれます。 たとえば、最初のチャンクはディスクの先頭近くに書き込まれ、2番目のチャンクは別のディスクの途中に書き込まれる場合があります。 これにより、書き込みパフォーマンスを犠牲にして、従来の回転ディスクの読み取りパフォーマンスをいくらか向上させることができます。
  • offset :各ストライプがコピーされ、1つのドライブによってオフセットされます。 これは、コピーが互いにオフセットされているが、ディスク上で互いに接近していることを意味します。 これにより、一部のワークロードでの過度のシークを最小限に抑えることができます。

これらのレイアウトの詳細については、この「RAID10」セクションを確認してください。 man ページ:

  1. man 4 md

あなたもこれを見つけることができます man オンラインページこちら

コンポーネントデバイスの識別

開始するには、使用するrawディスクの識別子を見つけます。

  1. lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Output
NAME SIZE FSTYPE TYPE MOUNTPOINT sda 100G disk sdb 100G disk sdc 100G disk sdd 100G disk vda 25G disk ├─vda1 24.9G ext4 part / ├─vda14 4M part └─vda15 106M vfat part /boot/efi

上記のように、ファイルシステムのない4つのディスクがあり、それぞれのサイズは100Gです。 この例では、これらのデバイスに /dev/sda, /dev/sdb, /dev/sdc、 と /dev/sdd このセッションの識別子。 これらは、アレイの構築に使用する生のコンポーネントになります。

アレイの作成

これらのコンポーネントを使用してRAID10アレイを作成するには、それらをに渡します。 mdadm --create 指図。 作成するデバイス名を指定する必要があります(/dev/md0 この場合)、RAIDレベル、およびデバイスの数。

レイアウトとコピー数を指定せずに、ニアレイアウトを使用して2つのコピーを設定できます。

  1. sudo mdadm --create --verbose /dev/md0 --level=10 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd

別のレイアウトを使用する場合、またはコピー数を変更する場合は、 --layout= オプション。レイアウトとコピー識別子を取ります。 レイアウトは、近距離の場合は n 、遠距離の場合は f 、オフセットの場合はoです。 保存する部数は後から追加されます。

たとえば、オフセットレイアウトに3つのコピーがある配列を作成するには、コマンドは次のようになります。

  1. sudo mdadm --create --verbose /dev/md0 --level=10 --layout=o3 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd

The mdadm ツールはアレイの構成を開始します(パフォーマンス上の理由から、実際にはリカバリプロセスを使用してアレイを構築します)。 これは完了するまでに時間がかかる場合がありますが、この時間中にアレイを使用できます。 ミラーリングの進行状況を監視するには、 /proc/mdstat ファイル:

  1. cat /proc/mdstat
Output
Personalities : [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid1] [raid10] md0 : active raid10 sdd[3] sdc[2] sdb[1] sda[0] 209584128 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU] [===>.................] resync = 18.1% (37959424/209584128) finish=13.8min speed=206120K/sec unused devices: <none>

最初に強調表示されている行でわかるように、 /dev/md0 デバイスは、RAID10構成で作成されています。 /dev/sda, /dev/sdb, /dev/sdc/dev/sdd デバイス。 2番目に強調表示されている領域は、この例で使用されたレイアウトを示しています(ニア構成では2つのコピー)。 3番目に強調表示されている領域は、ビルドの進行状況を示しています。 このプロセスが完了するまで、ガイドを続けることができます。

ファイルシステムの作成とマウント

次に、アレイ上にファイルシステムを作成します。

  1. sudo mkfs.ext4 -F /dev/md0

新しいファイルシステムを接続するためのマウントポイントを作成します。

  1. sudo mkdir -p /mnt/md0

次のように入力して、ファイルシステムをマウントできます。

  1. sudo mount /dev/md0 /mnt/md0

次のように入力して、新しいスペースが使用可能かどうかを確認します。

  1. df -h -x devtmpfs -x tmpfs
Output
Filesystem Size Used Avail Use% Mounted on /dev/vda1 25G 1.4G 23G 6% / /dev/vda15 105M 3.4M 102M 4% /boot/efi /dev/md0 197G 60M 187G 1% /mnt/md0

新しいファイルシステムがマウントされ、アクセス可能になります。

アレイレイアウトの保存

起動時にアレイが自動的に再構築されるようにするには、調整する必要があります /etc/mdadm/mdadm.conf ファイル。 アクティブなアレイを自動的にスキャンし、次のように入力してファイルを追加できます。

  1. sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf

その後、initramfsまたは初期RAMファイルシステムを更新して、初期の起動プロセス中にアレイを使用できるようにすることができます。

  1. sudo update-initramfs -u

新しいファイルシステムのマウントオプションをに追加します /etc/fstab 起動時に自動マウントするためのファイル:

  1. echo '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab

これで、RAID 10アレイが自動的に組み立てられ、ブートごとにマウントされます。

結論

このガイドでは、Linuxを使用してさまざまなタイプのアレイを作成する方法を示しました。 mdadm ソフトウェアRAIDユーティリティ。 RAIDアレイは、複数のディスクを個別に使用するよりも、魅力的な冗長性とパフォーマンスの向上を提供します。

環境に必要なアレイのタイプを決定し、デバイスを作成したら、次のコマンドを使用して日常の管理を実行する方法を学習する必要があります。 mdadm. Ubuntu 16.04 でmdadmを使用してRAIDアレイを管理する方法に関するガイドは、開始するのに役立ちます。