展示自己、证明自己
分类: C/C++
2014-04-22 19:39:35
Gluster 分布式文件系统概述请查看我之前转载的文章 http://blog.csdn.net/zonelan/article/details/8468383
操作系统:Ubuntuserver 12.04.1 LTS 64bit
分布式文件系统:Gluster
测试服务器:4台ip:192.168.1.1-192.168.1.4
1、安装软件包:
apt-get install glusterfs-server glusterfs-common glusterfs-client glusterfs-dbg glusterfs-examples
2、建立分区或磁盘挂在目录
mkdir-p /export/brick1 (在所有存储节点建立)
3、挂在分区或磁盘到目录
mount/dev/sda1/export/brick1(所有节点执行挂载,分区或磁盘容量要尽量一致(对于replica模式的卷尤为重要,这种模式下会以容量小的分区或磁盘为准))
4、修改/etc/hosts文件,加入各节点机器名与IP对应关系,内容如下:
test01 192.168.1.1
test02 192.168.1.2
test03 192.168.1.3
test04 192.168.1.4
在其他节点做相同操作
5、ssh密钥登录(192.168.1.1上操作)
ssh-kengen
ssh-copy-id-i .ssh/id_rsa.pub root@192.168.1.2
ssh-copy-id-i .ssh/id_rsa.pub root@192.168.1.3
ssh-copy-id-i .ssh/id_rsa.pub root@192.168.1.4
其他节点做相同操作,除自身ip
6、建立peer关系(192.168.1.1上操作)
gluster
gluster>peer probe 192.168.1.2 192.168.1.3 192.168.1.4(此操作在一台服务器上操作即可,状态将同步到其他服务器)
gluster>peer probe (ip)(后续增加节点时使用)
gluster>peer detach (ip) (后续删除节点时使用)
gluster>peer status对等体状态
Numberof Peers: 3
Hostname:192.168.1.2
Uuid:67d37243-4332-4324-b497-92cf3d4fa2c1
State:Peer in Cluster (Connected)
Hostname:192.168.1.3
Uuid:0e8f17ba-c061-4537-ac3a-f625600c6663
State:Peer in Cluster (Connected)
Hostname:192.168.1.4
Uuid:66149333-6235-4bcc-82ae-b2fd011794db
State:Peer in Cluster (Connected)
7、建立卷(192.168.1.1上操作)
gluster
gluster>volume create gv0 replica 2 192.168.1.1:/export/brick1192.168.1.2:/export/brick1
建立卷时有三种模式:Stripe(RAID0)、Replicate(RAID1)和DHT(分布式Hash),默认是DHT,后边跟的数字意思是几个为1组,此示例中为2个为一组建立replica卷,类似RAID1。
8、向卷中添加brick(192.168.1.1上操作)
gluster>volume add-brick gv0 192.168.1.3:/export/brick1192.168.1.4:/export/brick1
可在动态在线增加brick
在线增加brick后,还需重新平衡各节点数据。
gluster>volume rebalance gv0 start开始平衡
startingrebalance on volume gv0 has been successful
gluster>volume rebalance gv0 status
rebalancestep 1: layout fix in progress
gluster>volume rebalance gv0 status
rebalancecompleted重新平衡完成
9、启动卷
gluster>volume start gv0
10、客户端挂载,由于安装包时,安装了gluster客户端,所以测试机同时担当客户端/服务器的角色,
也建议在分布式文件系统这样使用。
Mount-t glusterfs 192.168.1.1:/gv0 /mnt各节点均可挂载自己ip地址,这也符合gluster的设计思想,无元数据服务器,无单点故障。