●構成 移動前: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を元に戻す手順(上までの手順の続き)†移動前: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の移動は完了です。
|