CentOS6にGlusterFSを構築
GlusterFSについて
- 分散ファイルシステム。詳細は以下がとても参考になりました。
ボリュームについて
- distributed
- ファイル単位でボリューム内のbrickに分散させる
- GlusterFSのデフォルトの動作モード
- replicated
- ファイルを複製してbrickに割り当てる。そのため可能性が高まる。
- 要はRAID1
- 実運用はこれだろな。
- striped
- ファイルをサーバ間で分割してbrickに格納する
- 要はRAID0
- 今回はreplicatedで構築(というかdistributedやstriped単品でやることは考えられないよなー)
環境
- OSはCentOS6系
- サーバ側は2台(cluster1とcluster2)
- brickは「/home/data/vol1」
サーバ側
インストール
# cd /etc/yum.repos.d # http://download.gluster.org/pub/gluster/glusterfs/LATEST/EPEL.repo/glusterfs-epel.repo # yum install glusterfs-server
起動
# /etc/init.d/glusterd start
初期設定
- peerにサーバを追加
# gluster peer probe cluster2
- 確認
# gluster peer status Number of Peers: 1 Hostname: cluster2 Port: 24007 Uuid: 75162d8d-eaed-4800-9703-56ee60f7fd78 State: Peer in Cluster (Connected)
- ボリューム作成
# gluster volume create vol1 replica 2 cluster1:/home/data/vol1 cluster2:/home/data/vol1
replicaで。
- ボリューム起動
# gluster volume start vol1
- 確認
# gluster volume info Volume Name: vol1 Type: Replicate Volume ID: f5455845-92c4-4880-ab84-931e7b1a7730 Status: Started Number of Bricks: 1 x 2 = 2 Transport-type: tcp Bricks: Brick1: cluster1:/home/data/vol1 Brick2: cluster2:/home/data/vol1
クライアント側
インストール
# cd /etc/yum.repos.d # http://download.gluster.org/pub/gluster/glusterfs/LATEST/EPEL.repo/glusterfs-epel.repo # yum install glusterfs-fuse
マウント
- GlusterFSのネイティブクライアント
# mount -t glusterfs cluster1:/vol1 /home/data/vol1
クライアント側で適当なファイル作って両方のサーバでファイルが作成されることを確認。
- NFSマウントも試してみたんだけどなぜかうまくできず。。
簡単にr/wの速度も出してみたので今度書きます。