前書き

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

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

前提条件

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

  • * Ubuntu 16.04サーバーで `+ sudo `権限を持つ非ルートユーザー*:このガイドの手順は ` sudo +`ユーザーで完了します。 これらの権限でアカウントを設定する方法については、https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-18-04 [Ubuntu 18.04初期サーバー設定ガイド]に従ってください。

  • * RAIDの用語と概念の基本的な理解*:このガイドでは、いくつかのRAIDの用語について触れますが、より完全な理解は非常に役立ちます。 RAIDの詳細を学び、どのRAIDレベルが適切かを理解するには、https://www.digitalocean.com/community/tutorials/an-introduction-to-raid-terminology-and-concepts [ RAIDの紹介記事]。

  • サーバーで利用可能な複数のRAWストレージデバイス:サーバーでさまざまなタイプのアレイを構成する方法を示します。 そのため、構成するにはいくつかのドライブが必要になります。 DigitalOceanを使用している場合、https://www.digitalocean.com/community/tutorials/how-to-use-block-storage-on-digitalocean [ブロックストレージボリューム]を使用してこの役割を果たすことができます。 アレイのタイプに応じて、少なくとも* 2〜4つのストレージデバイス*が必要です。 これらのドライブは、このガイドに従う前にフォーマットする必要はありません。

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

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

次のように入力して、 `+ / proc / mdstat +`ファイルでアクティブな配列を見つけます。

cat /proc/mdstat
OutputPersonalities : [raid0] [linear] [multipath] [raid1] [raid6] [raid5] [raid4] [raid10]
: active raid0 sdc[1] sdd[0]
     209584128 blocks super 1.2 512k chunks

           unused devices: <none>

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

sudo umount /dev/

次に、次のように入力して、配列を停止して削除します。

sudo mdadm --stop /dev/

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

lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
OutputNAME     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

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

sudo mdadm --zero-superblock /dev/
sudo mdadm --zero-superblock /dev/

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

sudo nano /etc/fstab

/ etc / fstab

. . .
/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0

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

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 +`を再度更新して、初期ブートプロセスが使用不可のアレイをオンラインにしようとしないようにします。

sudo update-initramfs -u

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

RAID 0アレイの作成

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

  • 要件:最小* 2台のストレージデバイス*

  • 主な利点:パフォーマンス

  • 留意事項:機能的なバックアップがあることを確認してください。 1つのデバイスに障害が発生すると、アレイ内のすべてのデータが破壊されます。

コンポーネントデバイスの特定

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

lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
OutputNAME     SIZE FSTYPE TYPE MOUNTPOINT


vda       25G        disk
├─vda1  24.9G ext4   part /
├─vda14    4M        part
└─vda15  106M vfat   part /boot/efi

上記からわかるように、ファイルシステムのない2つのディスクがあり、それぞれのサイズは100Gです。 この例では、これらのデバイスには、このセッションの `+ / dev / sda `および ` / dev / sdb +`識別子が与えられています。 これらは、配列を構築するために使用する未加工のコンポーネントになります。

配列を作成する

これらのコンポーネントでRAID 0アレイを作成するには、それらを + mdadm --create +`コマンドに渡します。 作成するデバイス名(この例では `+ / dev / md0 +)、RAIDレベル、およびデバイスの数を指定する必要があります。

sudo mdadm --create --verbose /dev/md0 --level=0 --raid-devices=2 /dev/ /dev/

`+ / proc / mdstat +`ファイルをチェックすることで、RAIDが正常に作成されたことを確認できます:

cat /proc/mdstat
OutputPersonalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]

     209584128 blocks super 1.2 512k chunks

           unused devices: <none>

ハイライトされた行でわかるように、 `+ / dev / sda `および ` / dev / sdb `デバイスを使用して、RAID 0構成で ` / dev / md0 +`デバイスが作成されています。

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

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

sudo mkfs.ext4 -F /dev/md0

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

sudo mkdir -p /mnt/md0

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

sudo mount /dev/md0 /mnt/md0

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

df -h -x devtmpfs -x tmpfs
OutputFilesystem      Size  Used Avail Use% Mounted on
/dev/vda1        25G  1.4G   23G   6% /
/dev/vda15      105M  3.4M  102M   4% /boot/efi

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

配列レイアウトの保存

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

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

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

sudo update-initramfs -u

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

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

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

RAID 1アレイの作成

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

  • 要件:最小* 2台のストレージデバイス*

  • 主な利点:冗長性

  • 留意事項:データのコピーが2つ保持されるため、使用可能なディスク領域は半分になります

コンポーネントデバイスの特定

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

lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
OutputNAME     SIZE FSTYPE TYPE MOUNTPOINT


vda       25G        disk
├─vda1  24.9G ext4   part /
├─vda14    4M        part
└─vda15  106M vfat   part /boot/efi

上記からわかるように、ファイルシステムのない2つのディスクがあり、それぞれのサイズは100Gです。 この例では、これらのデバイスには、このセッションの `+ / dev / sda `および ` / dev / sdb +`識別子が与えられています。 これらは、配列を構築するために使用する未加工のコンポーネントになります。

配列を作成する

これらのコンポーネントでRAID 1アレイを作成するには、それらを + mdadm --create +`コマンドに渡します。 作成するデバイス名(この例では `+ / dev / md0 +)、RAIDレベル、およびデバイスの数を指定する必要があります。

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

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

Outputmdadm: 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?

`+ mdadm `ツールはドライブのミラーリングを開始します。 これを完了するにはしばらく時間がかかりますが、この時間中に配列を使用できます。 ` / proc / mdstat +`ファイルをチェックすることで、ミラーリングの進行状況を監視できます:

cat /proc/mdstat
OutputPersonalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]

     104792064 blocks super 1.2 [2/2] [UU]


unused devices: <none>

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

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

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

sudo mkfs.ext4 -F /dev/md0

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

sudo mkdir -p /mnt/md0

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

sudo mount /dev/md0 /mnt/md0

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

df -h -x devtmpfs -x tmpfs
OutputFilesystem      Size  Used Avail Use% Mounted on
/dev/vda1        25G  1.4G   23G   6% /
/dev/vda15      105M  3.4M  102M   4% /boot/efi

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

配列レイアウトの保存

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

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

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

sudo update-initramfs -u

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

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

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

RAID 5アレイの作成

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

  • 要件:最小* 3台のストレージデバイス*

  • 主な利点:より多くの使用可能な容量による冗長性。

  • 留意事項:パリティ情報は配信されますが、1つのディスクに相当する容量がパリティに使用されます。 RAID 5は、劣化状態の場合、パフォーマンスが非常に低下する可能性があります。

コンポーネントデバイスの特定

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

lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
OutputNAME     SIZE FSTYPE TYPE MOUNTPOINT



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 +」が割り当てられています。 これらは、配列を構築するために使用する未加工のコンポーネントになります。

配列を作成する

これらのコンポーネントでRAID 5アレイを作成するには、それらを + mdadm --create +`コマンドに渡します。 作成するデバイス名(この例では `+ / dev / md0 +)、RAIDレベル、およびデバイスの数を指定する必要があります。

sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/ /dev/ /dev/

`+ mdadm `ツールは、アレイの設定を開始します(パフォーマンス上の理由から、実際にはリカバリプロセスを使用してアレイを構築します)。 これを完了するにはしばらく時間がかかりますが、この時間中に配列を使用できます。 ` / proc / mdstat +`ファイルをチェックすることで、ミラーリングの進行状況を監視できます:

cat /proc/mdstat
OutputPersonalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]

     209584128 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_]


unused devices: <none>

最初に強調表示された行でわかるように、 + / dev / sda ++ / dev / sdb +`および `+ / dev /を使用して、RAID 5構成で + / dev / md0 + `デバイスが作成されています。 sdc + `デバイス。 2番目に強調表示された行は、ビルドの進行状況を示しています。

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

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

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

sudo mkfs.ext4 -F /dev/md0

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

sudo mkdir -p /mnt/md0

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

sudo mount /dev/md0 /mnt/md0

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

df -h -x devtmpfs -x tmpfs
OutputFilesystem      Size  Used Avail Use% Mounted on
/dev/vda1        25G  1.4G   23G   6% /
/dev/vda15      105M  3.4M  102M   4% /boot/efi

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

配列レイアウトの保存

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

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

cat /proc/mdstat
OutputPersonalities : [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>

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

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

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

sudo update-initramfs -u

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

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

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

RAID 6アレイの作成

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

  • 要件:最小* 4台のストレージデバイス*

  • 主な利点:使用可能な容量が増える二重の冗長性。

  • 注意事項:パリティ情報は配信されますが、パリティには2つのディスクの容量が使用されます。 RAID 6は、劣化状態の場合、パフォーマンスが非常に低下する可能性があります。

コンポーネントデバイスの特定

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

lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
OutputNAME     SIZE FSTYPE TYPE MOUNTPOINT




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 +」の識別子が与えられています。 これらは、配列を構築するために使用する未加工のコンポーネントになります。

配列を作成する

これらのコンポーネントでRAID 6アレイを作成するには、それらを + mdadm --create +`コマンドに渡します。 作成するデバイス名(この例では `+ / dev / md0 +)、RAIDレベル、およびデバイスの数を指定する必要があります。

sudo mdadm --create --verbose /dev/md0 --level=6 --raid-devices=4 /dev/ /dev/ /dev/ /dev/

`+ mdadm `ツールは、アレイの設定を開始します(パフォーマンス上の理由から、実際にはリカバリプロセスを使用してアレイを構築します)。 これを完了するにはしばらく時間がかかりますが、この時間中に配列を使用できます。 ` / proc / mdstat +`ファイルをチェックすることで、ミラーリングの進行状況を監視できます:

cat /proc/mdstat
OutputPersonalities : [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid1] [raid10]

     209584128 blocks super 1.2 level 6, 512k chunk, algorithm 2 [4/4] [UUUU]


unused devices: <none>

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

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

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

sudo mkfs.ext4 -F /dev/md0

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

sudo mkdir -p /mnt/md0

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

sudo mount /dev/md0 /mnt/md0

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

df -h -x devtmpfs -x tmpfs
OutputFilesystem      Size  Used Avail Use% Mounted on
/dev/vda1        25G  1.4G   23G   6% /
/dev/vda15      105M  3.4M  102M   4% /boot/efi

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

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

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

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

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

sudo update-initramfs -u

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

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

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

複雑なRAID 10アレイの作成

RAID 10アレイタイプは、従来、RAID 1アレイのセットで構成されるストライプ化されたRAID 0アレイを作成することで実装されています。 このネストされた配列タイプは、冗長性と高いパフォーマンスの両方を提供しますが、大量のディスクスペースを犠牲にします。 + mdadm +`ユーティリティには独自のRAID 10タイプがあり、柔軟性を高めながら同じタイプの利点を提供します。 配列をネストすることで作成されたものではありませんが、多くの同じ特性と保証があります。 ここでは、 `+ mdadm + RAID 10を使用します。

  • 要件:最小* 3台のストレージデバイス*

  • 主な利点:パフォーマンスと冗長性

  • 留意事項:アレイの容量削減量は、保持することを選択したデータコピーの数によって定義されます。 `+ mdadm +`スタイルのRAID 10で保存されるコピーの数は設定可能です。

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

  • * near *:デフォルトの配置。 各チャンクのコピーは、ストライピング時に連続して書き込まれます。つまり、データブロックのコピーは、複数のディスクの同じ部分に書き込まれます。

  • * far *:最初と後続のコピーは、アレイ内のストレージデバイスの異なる部分に書き込まれます。 たとえば、最初のチャンクはディスクの先頭近くに書き込まれ、2番目のチャンクは別のディスクの途中まで書き込まれます。 これにより、書き込みパフォーマンスを犠牲にして、従来の回転ディスクの読み取りパフォーマンスをいくらか向上させることができます。

  • * offset *:各ストライプがコピーされ、1ドライブ分オフセットされます。 これは、コピーが互いにオフセットされているが、ディスク上で互いに近接していることを意味します。 これにより、一部のワークロード中の過剰なシークを最小限に抑えることができます。

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

man 4 md

この「+ man +」ページはオンラインで見つけることもできますhttp://manpages.ubuntu.com/manpages/bionic/man4/md.4.html[here]。

コンポーネントデバイスの特定

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

lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
OutputNAME     SIZE FSTYPE TYPE MOUNTPOINT




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 +」の識別子が与えられています。 これらは、配列を構築するために使用する未加工のコンポーネントになります。

配列を作成する

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

レイアウトとコピー番号を指定しないことで、ニアレイアウトを使用して2つのコピーを設定できます。

sudo mdadm --create --verbose /dev/md0 --level=10 --raid-devices=4 /dev/ /dev/ /dev/ /dev/

別のレイアウトを使用する場合、またはコピーの数を変更する場合は、レイアウトとコピーIDを使用する `+-layout = +`オプションを使用する必要があります。 レイアウトは、nearの場合は* n 、farの場合は f 、offsetの場合は o *です。 保存するコピーの数は、その後に追加されます。

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

sudo mdadm --create --verbose /dev/md0 --level=10 --layout=o3 --raid-devices=4 /dev/ /dev/ /dev/ /dev/

`+ mdadm `ツールは、アレイの設定を開始します(パフォーマンス上の理由から、実際にはリカバリプロセスを使用してアレイを構築します)。 これを完了するにはしばらく時間がかかりますが、この時間中に配列を使用できます。 ` / proc / mdstat +`ファイルをチェックすることで、ミラーリングの進行状況を監視できます:

cat /proc/mdstat
OutputPersonalities : [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid1] [raid10]

     209584128 blocks super 1.2 512K chunks  [4/4] [UUUU]


unused devices: <none>

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

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

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

sudo mkfs.ext4 -F /dev/md0

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

sudo mkdir -p /mnt/md0

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

sudo mount /dev/md0 /mnt/md0

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

df -h -x devtmpfs -x tmpfs
OutputFilesystem      Size  Used Avail Use% Mounted on
/dev/vda1        25G  1.4G   23G   6% /
/dev/vda15      105M  3.4M  102M   4% /boot/efi

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

配列レイアウトの保存

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

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

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

sudo update-initramfs -u

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

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

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

結論

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

環境に必要なアレイのタイプを決定してデバイスを作成したら、 `+ mdadm `を使用して日常の管理を実行する方法を学習する必要があります。 https://www.digitalocean.com/community/tutorials/how-to-manage-raid-arrays-with-mdadm-on-ubuntu-16-04のガイド[[ mdadm +]をオンにしてRAIDアレイを管理する方法Ubuntu 16.04]は、あなたが始めるのを助けることができます。