前提条件

In document 管理ガイド (Page 195-200)

第 8 章 スナップショットの管理

8.1. 前提条件

この機能を使用する前に、以下の前提条件を満たしていることを確認してください。

スナップショットは、シンプロビジョニングされた LVM に基づいています。ボリュームが LVM2 をベースとしていることを確認します。Red Hat Gluster Storage は、Red Hat

Enterprise Linux 6.7 以降および Red Hat Enterprise Linux 7.1 以降でサポートされています。

Red Hat Enterprise Linux のこれらのバージョンはいずれも、デフォルトで LVM2 をベースにし ています。詳細はを参照してください。

https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Logical_Volume_Manager_Administration/thinprovisioned_volumes.html

各ブリックは、独立したシンプロビジョニング論理ボリューム(LV)でなければなりません。

ブリックを含む論理ボリュームには、ブリック以外のデータを含めることはできません。

Red Hat Gluster Storage でサポートされるのはリニア LVM のみです。詳細はを参照してくだ さい。

https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/4/html-single/Cluster_Logical_Volume_Manager/#lv_overview 推奨されるセットアップ

推奨されるセットアップ

スナップショットの使用に推奨される設定は以下のとおりです。また、スナップショットのパフォーマ ンスを向上させる 19章パフォーマンスチューニングために必ず読み込む必要があります。

各ボリュームブリックについて、ボリュームと、そのボリューム(シン)のシンプールを記載 した専用のシンプールを作成します。現在の thin-p 設計では、異なる Red Hat Gluster Storage ボリュームを同じシンプールに配置しないようにしてください。これにより、スナップショッ トの削除などのスナップショット操作のパフォーマンスが、関連していない他のボリュームに 低下するためです。

推奨されるシンプールチャンクサイズは 256 KB です。お客様のワークロードに関する詳細な 情報がある場合には、例外が発生する場合があります。

チャンクサイズが 256 KB 以上の場合、推奨されるプールメタデータサイズは、シンプールサ

イズの 0.1% です。特別なケースでは、256 KB 未満のチャンクサイズを推奨します。プールメ

タデータサイズは、シンプールサイズの 0.5% を使用します。

例 例

デバイス /dev/sda1 からブリックを作成する場合。

1. pvcreate コマンドを使用して、物理ボリューム(PV)を作成します。

pvcreate /dev/sda1

デバイスに基づいて正しい dataalignment オプションを使用します。詳細は、以下を参照して ください。「ブリックの設定」

2. 以下のコマンドを使用して、PV からボリュームグループ(VG)を作成します。

vgcreate dummyvg /dev/sda1

3. 以下のコマンドを使用して、シンプールを作成します。

# lvcreate size 1T thin dummyvg/dummypool chunksize 256k poolmetadatasize 16G --zero n

256 KB のチャンクサイズを使用して、サイズ 1 TB のシンプールが作成されます。最大プール

メタデータサイズ 16 G が使用されます。

4. 以下のコマンドを使用して、以前作成したプールからシンプロビジョニングされたボリューム を作成します。

# lvcreate --virtualsize 1G --thin dummyvg/dummypool --name dummylv

5. これ上にファイルシステム(XFS)を作成します。シン論理ボリュームに XFS ファイルシステム を作成する場合は、推奨されるオプションを使用します。

例:

mkfs.xfs -f -i size=512 -n size=8192 /dev/dummyvg/dummylv

6. この論理ボリュームをマウントし、マウントパスをブリックとして使用します。

mount /dev/dummyvg/dummylv /mnt/brick1

8.2. スナップショットの作成

スナップショットを作成する前に、以下の前提条件を満たしていることを確認してください。

Red Hat Gluster Storage ボリュームが存在し、ボリュームの Started 状態でなければなりませ ん。

ボリュームのすべてのブリックは、独立したシン論理ボリューム(LV)上になければなりませ ん。

スナップショット名は、クラスターで一意である必要があります。

n >= 3 の n 方向レプリケーションではない限り、ボリュームのブリックはすべて稼働している

必要があります。このような場合は、クォーラムを満たす必要があります。詳細はを参照して ください。 8章スナップショットの管理

などの他のボリューム操作は rebalance add-brick、ボリューム上では実行しないでください。

ボリュームのスナップショットの合計数は、effective snap-max-hard-limit と同等ではありま せん。詳細は、「『スナップショットの動作の設定』」を参照してください。

geo レプリケーションを設定している場合は、以下のコマンドを実行して geo レプリケーショ ンセッションを実行している場合は一時停止します。

# gluster volume geo-replication MASTER_VOL SLAVE_HOST::SLAVE_VOL pause 例:

# gluster volume geo-replication master-vol example.com::slave-vol pause

Pausing geo-replication session between master-vol example.com::slave-vol has been successful

マスターボリュームのスナップショットを作成してから、スレーブボリュームのスナップ ショットを作成してください。

ボリュームのスナップショットを作成するには、以下のコマンドを実行します。

# gluster snapshot create <snapname> <volname> [no-timestamp] [description <description>] [force]

ここで、

snapname - 作成されるスナップショットの名前

VOLNAME(S) - スナップショットを作成するボリュームの名前。サポートは単一ボリュームの

スナップショットの作成のみをサポートします。

説明: これは、スナップと共に保存されるスナップの説明を表示するのに使用できるオプション のフィールドです。

force - ブリックがダウンした場合、スナップショットの作成は失敗します。n-way で複製され

た Red Hat Gluster Storage ボリュームでは、一部のブリックがダウンしても、n >= 3 スナップ ショットが許可されます。このような場合、クォーラムがチェックされます。クォーラム

は、force オプションが指定されている場合にのみチェックされます。そうでない場合は、ブ

リックがダウンすると、スナップショットの作成は失敗します。クォーラムの詳細は、「『概 要』」セクションを参照してください。

no-timestamp: デフォルトでは、タイムスタンプがスナップショット名に追加されます。タイ

ムスタンプを追加しない場合は、no-timestamp を引数として渡します。

注記 注記

スナップショットは、デフォルトでは作成時にアクティベートされません。この動作を 今後すべてのスナップショット作成で有効にするには、activate-on-create パラメー ターをに設定し enabledます。

例 1:

# gluster snapshot create snap1 vol1 no-timestamp

snapshot create: success: Snap snap1 created successfully 例 2 の場合:

# gluster snapshot create snap1 vol1

snapshot create: success: Snap snap1_GMT-2015.07.20-10.02.33 created successfully

Red Hat Gluster Storage ボリュームのスナップショットは、読み取り専用の Red Hat Gluster Storage ボリュームを作成します。このボリュームは、元の / 親ボリュームと同じ設定を持ちます。この新しく 作成されたスナップショットのブリックは、としてマウントされ /var/run/gluster/snaps/<snap-volume-name>/brick<bricknumber>ます。

たとえば、スナップボリューム名があり、2 つのブリックを持つスナップショットには 0888649a92ea45db8c00a615dfc5ea35、以下の 2 つのマウントポイントがあります。

/var/run/gluster/snaps/0888649a92ea45db8c00a615dfc5ea35/brick1 /var/run/gluster/snaps/0888649a92ea45db8c00a615dfc5ea35/brick2 これらのマウントは、df または mount コマンドを使用して表示できます。

注記 注記

スナップショットの作成後に geo レプリケーションを設定している場合は、以下のコマ ンドを実行して geo レプリケーションセッションを再開します。

# gluster volume geo-replication MASTER_VOL SLAVE_HOST::SLAVE_VOL resume 例:

# gluster volume geo-replication master-vol example.com::slave-vol resume

Resuming geo-replication session between master-vol example.com::slave-vol has been successful

ボリュームのスナップショットを作成すると、LVM メタデータのコピーを含むブロックのスナップ ショットプールが作成されます。スナップショットの取得後、新規データが gluster ボリュームに書き 込まれると、スナップショットプールが上書きされ、変更はメインの gluster ボリュームにコピーされ ます。その結果、スナップショットの取得後のデータが変更される場合、スナップショットプールはよ り多くのメタデータ領域を消費します。

8.3. スナップショットのクローン作成

クローンまたは書き込み可能なスナップショットは、特定のスナップショットから作成される新規ボ リュームです。

スナップショットのクローンを作成するには、以下のコマンドを実行します。

# gluster snapshot clone <clonename> <snapname>

ここで、

clonename - これは、作成されるクローンの名前である e(新規ボリューム)です。

snapname - クローンされるスナップショットの名前です。

注記 注記

スナップショットの復元とは異なり、元のスナップショットのクローン作成後も 保持されます。

スナップショットはアクティベート状態である必要があり、クローンを作成する 前に、すべてのスナップショットのスナップショットが実行中である必要があり ます。また、サーバーノードはクォーラムにある必要があります。

これは領域効率の高いクローンであるため、クローン(新しいボリューム)とス ナップショット LVM の両方が同じ LVM バックエンドを共有します。LVM の領 域消費は、スナップショットからの新規ボリューム(クローン)の迂回により増 大します。

例:

# gluster snapshot clone clone_vol snap1

snapshot clone: success: Clone clone_vol created successfully

新たにクローンしたスナップショットのステータスを確認するには、以下のコマンドを実行します。

# gluster vol info <clonename>

例:

# gluster vol info clone_vol Volume Name: clone_vol Type: Distribute

Volume ID: cdd59995-9811-4348-8e8d-988720db3ab9 Status: Created

Number of Bricks: 1 Transport-type: tcp Bricks:

Brick1: 10.00.00.01:/var/run/gluster/snaps/clone_vol/brick1/brick3 Options Reconfigured:

performance.readdir-ahead: on

この例では、新規作成されたボリュームと同様に、クローンが Created 状態にあることが確認されてい ます。このボリュームは、このボリュームの使用を明示的に開始する必要があります。

8.4. 利用可能なスナップショットの一覧表示

特定のボリューム用に作成されたスナップショットの一覧を表示するには、以下のコマンドを実行しま す。

# gluster snapshot list [VOLNAME]

ここで、

In document 管理ガイド (Page 195-200)