Glusterfs

 ●構成
 移動前:SVR01←同期→SVR02 SVR03
 移動後:SVR01←同期→SVR03 SVR02
 # SVR03にGlusterfsをインストールする。
 ●Peerの追加:Replace対象のbrickのあるサーバーにて
 SVR02 # gluster peer probe SVR03
 SVR02 # peer status   <--- 2台接続されていることを確認。
 ●Replaceの実行
 SVR02 # volume replace-brick gluster_vol SVR02:/glusterfs/brick00 SVR03:/glusterfs/brick00 start
 replace-brick started successfully
 SVR02 # gluster volume info   
 
 Volume Name: gluster_vol
 Type: Replicate
 Volume ID: 720ad6af-8283-4381-8f48-3a01a9163c9b
 Status: Started
 Number of Bricks: 1 x 2 = 2
 Transport-type: tcp
 Bricks:
 Brick1: SVR01:/glusterfs/brick00
 Brick2: SVR02:/glusterfs/brick00 <--- 現状ではまだ移行は完了していないが、データは同期されている。
 SVR03 # ls /glusterfs/brick00
 →自動的にSVR03の「/glusterfs」配下に「brick00」が作成されていてデータがコピーされていることを確認。
 →SVR01のデータ領域でファイルを作成して、SVR03に同期されることを確認。
 SVR03 # mount -t glusterfs SVR01:gluster_vol /var/www/html
 SVR03 # cd /var/www/html   <--- ファイルの作成などして、データが同期されることを確認。
 SVR02 # volume replace-brick gluster_vol SVR02:/glusterfs/brick00 SVR03:/glusterfs/brick00 commit
 replace-brick commit successful
 →Replaceの実行を確定
 SVR02 # volume info
 Volume Name: gluster_vol
 Type: Replicate
 Volume ID: 720ad6af-8283-4381-8f48-3a01a9163c9b
 Status: Started
 Number of Bricks: 1 x 2 = 2
 Transport-type: tcp
 Bricks:
 Brick1: SVR01:/glusterfs/brick00
 Brick2: SVR03:/glusterfs/brick00   <--- Brickの移行が完了していることを確認。
 SVR02 # ls /glusterfs/brick00   <--- データが同期されなくなることを確認。※同期対象ディレクトリ上ではリンクファイル?は作成されるので、一見同期されているように見える。
 SVR02 # umount /var/www/html <--- 同期されていたディレクトリをアンマウント
 SVR03 # peer status
 SVR03 # peer detach SVR02  <--- どちらか一方のサーバーで実行することで、2台からpeerが外される。

以上で、移動作業は完了。

 ●glusterfsのアンインストール SVR02での手順
 # service glusterd stop
 # yum remove glusterfs*
 # cd /var/lib/
 # rm -rf ./glusterfs

移動したBrickを元に戻す手順(上までの手順の続き) [#kc81e88f]

 移動前:SVR01←同期→SVR03 SVR02:対応完了
 移動後:SVR01←同期→SVR02 SVR03
 
 
 SVR02 # Glusterdをインストール
 SVR02 # service glusterd start
 SVR03 # peer probe SVR02
 Probe successful
 SVR03 # peer status
 Number of Peers: 2
 
 Hostname: SVR01
 Uuid: 93969f43-d235-4c30-b53c-484818f77664
 State: Peer in Cluster (Connected)
 
 Hostname: SVR02
 Uuid: 758be52c-4d91-4afc-bbb0-96531699f543
 State: Peer in Cluster (Connected)
 SVR03 # volume replace-brick gluster_vol SVR03:/glusterfs/brick00 SVR03:/glusterfs/brick00 start
 replace-brick started successfully
 SVR03 # volume replace-brick gluster_vol SVR03:/glusterfs/brick00 SVR03:/glusterfs/brick00 status
 Number of files migrated = 82        Migration complete 
 SVR-3 # volume info
 Volume Name: gluster_vol
 Type: Replicate
 Volume ID: 720ad6af-8283-4381-8f48-3a01a9163c9b
 Status: Started
 Number of Bricks: 1 x 2 = 2
 Transport-type: tcp
 Bricks:
 Brick1: SVR01:/glusterfs/brick00
 Brick2: SVR03:/glusterfs/brick00  <--- 現状ではまだ移行は完了していないが、データは同期されている。
 SVR03 # gluster> volume replace-brick gluster_vol SVR03:/glusterfs/brick00 SVR02:/glusterfs/brick00 commit
 replace-brick commit successful
 SVR03 # volume info
 Volume Name: gluster_vol
 Type: Replicate
 Volume ID: 720ad6af-8283-4381-8f48-3a01a9163c9b
 Status: Started
 Number of Bricks: 1 x 2 = 2
 Transport-type: tcp
 Bricks:
 Brick1: SVR01:/glusterfs/brick00
 Brick2: SVR02:/glusterfs/brick00 <--- brickが移動していることを確認。
 SVR02 # mount -t glusterfs SVR02:gluster_vol /var/www/html
 SVR03 # umount /var/www/html
 SVR03 # service glusterd stop

以上で、3台の中の2台間でbrickの移動は完了です。