アレイの再形成
アレイの再形成とは、アレイの種類の変更などアレイ作成時に指定したアレイの構造に関係する設定を変更することです。アレイの再形成は、「Restriping」や「Reshaping」とも表現されます。
アレイの再形成はアレイの再作成と異なり、データを失うことなく動的にアレイの構造を変更することができます。
アレイの再形成では、以下の変更が可能です。
- 物理ボリュームの数(アレイのスロット数)の変更
- 物理ボリュームのサイズの変更
- チャンクサイズの変更
- RAIDレベルの変更
- ライトインテントビットマップの設定
- データレイアウトの変更
アレイ再形成時の注意
アレイの再形成を行う場合は、操作ミスやソフトウェアのバグ等に備え、事前にデータのバックアップをとっておくことをおすすめします。物理ボリュームの数(アレイのスロット数)の変更
アレイを構成する物理ボリュームの数を変更することができます。例えば物理ボリューム3つで「RAID 1」アレイを作成したとします。
アレイを再形成し、物理ボリュームの数を2つに減らしたり4つに増やすことができます。
この再形成をサポートしているアレイの種類は、以下のとおりです。
- RAID 0
- RAID 1
- RAID 4
- RAID 5
- RAID 6
物理ボリュームの数を増やした時は
物理ボリュームの数を増やすということは、アレイの種類によっては論理ボリュームのサイズが増えるということになります。物理ボリュームの数を増やしても論理ボリューム上のパーティションやファイルシステムのサイズは未変更のままです。
必要に応じて論理ボリューム上のパーティションやファイルシステムのサイズを拡張すると良いでしょう。
物理ボリュームの数を減らす時は
物理ボリュームの数を減らすということは、アレイの種類によっては論理ボリュームの容量が減るということになります。物理ボリュームの数を減らす時は、事前に論理ボリューム上のパーティションやファイルシステムのサイズも縮小しておく必要があります。
さもないとパーティションテーブルに矛盾が生じ、論理ボリューム上のパーティションやファイルシステムにアクセスできなくなります。
論理ボリューム上のパーティションやファイルシステムのサイズを調整した後、論理ボリュームの容量を縮小後のサイズに制限します。
この時点でファイルシステムに問題がないことを確認し、アレイの再形成を行います。
RAID 0の物理ボリュームの数を増やす場合
「RAID 0」アレイの物理ボリュームを増やす場合、「mdadm」は一旦「RAID 0」アレイを「RAID 4」アレイに再形成し物理ボリュームを追加してから「RAID 0」アレイに再形成します。物理ボリュームのサイズの変更
アレイで使用する物理ボリュームのサイズを変更することができます。この再形成をサポートしているアレイの種類は、以下のとおりです。
- RAID 1
- RAID 4
- RAID 5
- RAID 6
- RAID 10
用途の例
例えば「200GiB」と「100GiB」の物理ボリュームで「RAID 1」アレイを作成したとします。この時論理ボリュームのサイズは、最も容量の少ない「100GiB」に合わせられるため、論理ボリュームのサイズは「100GiB」になります。
その後「100GiB」の物理ボリュームを取り外し、新たに「200GiB」の物理ボリュームを用紙したとします。
そのままでは論理ボリュームのサイズは「100GiB」のままですが、アレイを再形成することで「200GiB」の論理ボリュームのサイズに変更することができます。
ライトインテントビットマップは無効にしておく
「ライトインテントビットマップ」が有効な場合、この再形成を行うことができません。アレイの再形成を行う前に「ライトインテントビットマップ」を無効にしておきましょう。
物理ボリュームのサイズを拡大した時は
物理ボリュームのサイズを拡大しても、論理ボリューム上のパーティションやファイルシステムのサイズは未変更のままです。必要に応じて論理ボリューム上のパーティションやファイルシステムのサイズを拡張すると良いでしょう。
物理ボリュームのサイズを縮小する時は
物理ボリュームのサイズを縮小する時は、事前に論理ボリューム上のパーティションやファイルシステムのサイズも縮小しておく必要があります。さもないとパーティションテーブルに矛盾が生じ、論理ボリューム上のパーティションやファイルシステムにアクセスできなくなります。
チャンクサイズの変更
アレイの「チャンクサイズ」を変更することができます。この再形成をサポートしているアレイの種類は、以下のとおりです。
- RAID 0
- RAID 4
- RAID 5
- RAID 6
チャンクサイズを変更する時は
「チャンクサイズ」を変更する時は、物理ボリュームのサイズが変更後のチャンクサイズの倍数になっていなければなりません。例えば「96KiB」の物理ボリュームがあるとして、これを64KiBのチャンクサイズに変更しようとすると、「96KiB」は「64KiB」の倍数ではないためチャンクサイズは変更できません。
物理ボリュームに空き容量があるなら、先に物理ボリュームのサイズを最低でも128KiBに拡張しておく必要があります。
「チャンクサイズ」を変更する時は、事前に物理ボリュームのサイズを調整しておく必要があります。