5.4. 分散ボリュームの作成
このタイプのボリュームは、ファイルをボリュームのブリック全体に分散します。
図5.1 分散ボリュームの図
警告
分散ボリュームは、ボリュームのブリック全体に無作為に分散されるため、ディスクまたはサーバーの障害時に大きなデータ損失が発生する可能性があります。そのため、実稼働環境で使用する前にアーキテクチャーレビューが必要になります。
アーキテクチャーレビューについては、配布されるボリュームのみを使用するように Red Hat アカウントチームまでお問い合わせください。
冗長性が重要ではない場合や、他のハードウェアやソフトウェア層から提供される分散ボリュームのみを使用します。その他の場合は、分散レプリケーションのボリュームなど、冗長性を提供するボリューム種別の 1 つを使用します。
分散ボリュームのみの制限には、以下が含まれます。
- インサービスのアップグレードなし: アップグレード時に分散されるボリュームのみオフラインでなければなりません。
- 時折発生するディレクトリーエントリーと inode の一時的な不整合。
- I/O 操作は、ノードが利用不可または結果として生じるノードの障害によりブロックまたは失敗します。
- データの永久損失。
分散ボリュームの作成
gluster volume create コマンドを使用して異なる種別のボリュームを作成し、gluster volume info コマンドを使用してボリュームが正常に作成されていることを確認します。
前提条件
- 「信頼できるストレージプールへのサーバーの追加」 の説明に従って、信頼できるストレージプールが作成されている。
- 「ボリュームの起動」 の説明に従って、ボリュームを起動および停止する方法を理解している。
- gluster volume create コマンドを実行して、分散ボリュームを作成。構文は gluster volume create NEW-VOLNAME [transport tcp | rdma (Deprecated) | tcp,rdma] NEW-BRICK... です。transport のデフォルト値は
tcp
です。auth.allow
やauth.reject
などの他のオプションを渡すことができます。パラメーターの全一覧は、「ボリュームオプションの設定」 を参照してください。このオプションによりパフォーマンスが低下する可能性があるため、Red Hat は、分散ボリュームでperformance.client-io-threads
オプションを無効にすることを推奨します。以下のコマンドを実行してperformance.client-io-threads
を無効にします。# gluster volume set VOLNAME performance.client-io-threads off
例5.1 2 つのストレージサーバーを使用した分散ボリューム
# gluster v create glustervol server1:/rhgs/brick1 server2:/rhgs/brick1 volume create: glutervol: success: please start the volume to access data
例5.2 4 サーバーを使用した InfiniBand への分散ボリューム
# gluster v create glustervol transport rdma server1:/rhgs/brick1 server2:/rhgs/brick1 server3:/rhgs/brick1 server4:/rhgs/brick1 volume create: glutervol: success: please start the volume to access data
- # gluster volume start VOLNAME を実行してボリュームを起動します。
# gluster v start glustervol volume start: glustervol: success
- gluster volume info コマンドを実行して、必要に応じてボリューム情報を表示します。以下の出力は 例5.1「2 つのストレージサーバーを使用した分散ボリューム」 の結果です。
# gluster volume info Volume Name: test-volume Type: Distribute Status: Created Number of Bricks: 2 Transport-type: tcp Bricks: Brick1: server1:/rhgs/brick Brick2: server2:/rhgs/brick