2012-09-19

GlusterFS3.3の挙動を調査してみた

前提条件として
クライアントは1台
GlusterFSクラスタは3つのトラステッドピアから成る
各ピアは1つのブリックを提供している
各ピアはレプリケーションモードでボリュームを構成
$ gluster volume create volume1 replica 3 10.x.x.x:/brick 10.x.x.y:/brick 10.x.x.z:/brick 
$ gluster volume info volume1

Volume Name: volume1
Type: Replicate
Volume ID: xxxxxx
Status: Started
Number of Bricks: 1 x 3 = 3
Transport-type: tcp
Bricks:
Brick1: 10.x.x.x:/brick
Brick2: 10.x.x.y:/brick
Brick3: 10.x.x.z:/brick
gfs.hoge.netのAレコードに3つのトラステッドピアのIPアドレスを登録
$ nslookup gfs.hoge.net

Non-authoritative answer:
Name:   gfs.hoge.net
Address: 10.x.x.x
Name:   gfs.hoge.net
Address: 10.x.x.y
Name:   gfs.hoge.net
Address: 10.x.x.z
クライアント側ではホスト名でマウント
$ mkdir /gfs
$ mount -t glusterfs gfs.hoge.net:/volume1 /gfs
■クライアント側で新しいファイルを作成したときの挙動
クライアントから3つのピアに対してデータが転送された
■クライアントからファイルを読み取った場合の挙動
いずれか1つのピアから転送された
連続して同じファイルを読み取る場合は転送元となるピアは同一であった
連続して同じファイルではない場合は転送元となるピアはランダムに変化した
■ピアが落ちている間にファイルが作成され、ピアが復活した場合
復活後すぐに作成されたファイルと同一名の空っぽのファイルが復活したピアのブリック上に作成される
クライアント側でlsなどのファイル操作を行うといずれかのピアからファイルが転送された
■ピアを新たに追加し、volumeにreplicaモードで追加した場合
追加した瞬間はなにも起こらない
クライアント側でファイルの追加や更新を行うとそのファイルだけ新しいピアにも転送された
クライアント側でlsを行うと既存のピアからクライアント経由で既存のファイル群が転送された

0 件のコメント:

コメントを投稿