jrldc 发表于 2017-7-19 16:51:04

CENTOS7下 GlusterFS简单配置

CENTOS7下 GlusterFS简单配置

1.准备工作
准备三台机器(centos7)用于安装和测试GlusterFS,其中两台用作服务器,一台用作客户端,主机名分别为:
192.168.99.117 master
192.168.99.118 node1
192.168.99.119 node2

关闭iptables和selinux
2.安装glusterFS服务器
yum install centos-release-gluster -y// 安装GlusterFSyum install -y glusterfs glusterfs-fuse glusterfs-server xfsprogs
启动glusterFS服务:
systemctl enable glusterfsd.servicesystemctl enable glusterd.servicesystemctl start glusterdsystemctl start glusterfsd
3.配置GlusterFS集群
3.1添加节点到GlusterFS集群
//添加节点到存储池,在其中一个节点上操作
# gluster peer probe 192.168.99.117
peer probe: success. Probe on localhost not needed
# gluster peer probe 192.168.99.118
peer probe: success.
# gluster peer probe 192.168.99.119
peer probe: success.
//移除节点:
gluster peer detach192.168.99.118

//查看各个节点状态
# gluster peer status
Number of Peers: 2
Hostname: 192.168.99.118
Uuid: d80cd2ce-7905-436a-a019-260df6b9263f
State: Peer in Cluster (Connected)
Hostname: 192.168.99.119
Uuid: 6baf2a39-c8b9-41bc-aea4-0819342fd8de
State: Peer in Cluster (Connected)

3.2创建GlusterFS逻辑卷(Volume)

在118、119分别建立/data/gfsdata目录:
mkdir -p /data/gfsdata

3.3然后执行以下命令(只需要在其中一台服务器上执行即可,本例使用118):
# gluster volume create gv0 replica 2 192.168.99.118:/data/gfsdata 192.168.99.119:/data/gfsdatavolume create: gv0: success: please start the volume to access data
这条命令的意思是使用Replicated的方式,建立一个名为gv0的卷(Volume),存储块(Brick)为2个,分别为server1:/data/gfsdata和server2:/data/gfsdata

volume create: testglustervol: failed: The brick 192.168.21.19:/data0/gluster1/brick1 is being created in the root partition. It is recommended that you don't use the system's root partition for storage backend. Or use 'force' at the end of the command if you want to override this behavior.
发现报错了,这是因为我们创建的brick在系统盘,这个在gluster的默认情况下是不允许的,生产环境下也尽可能的与系统盘分开,如果必须这样请使用force

# gluster volume create gv0 replica 2 192.168.99.118:/data/gfsdata 192.168.99.119:/data/gfsdata forcevolume create: gv0: success: please start the volume to access data
//条带化
gluster volume create gv0 stripe 2192.168.99.118:/data/gfsdata 192.168.99.119:/data/gfsdata


3.4启用GlusterFS逻辑卷:
# gluster volume start gv0
volume start: gv0: success
# gluster volume info
Volume Name: gv0
Type: Replicate
Volume ID: fcdb6b69-f5b0-44d7-be73-5544dd85a91c
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: 192.168.99.118:/data/gfsdata
Brick2: 192.168.99.119:/data/gfsdata
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
//GlusterFS逻辑卷当前信息
# gluster volume info
Volume Name: gv0
Type: Distribute
Volume ID: f7e47eef-f1e3-44b6-af78-4e4f5329e7f8
Status: Started
Snapshot Count: 0
Number of Bricks: 3
Transport-type: tcp
Bricks:
Brick1: 192.168.99.118:/data/gfsdata
Brick2: 192.168.99.119:/data/gfsdata
Brick3: 192.168.99.117:/data/glusterfs
Options Reconfigured:
nfs.disable: on
transport.address-family: inet

# gluster volume status gv0
Status of volume: gv0
Gluster process                           TCP PortRDMA PortOnlinePid
------------------------------------------------------------------------------
Brick 192.168.99.118:/data/gfsdata          49153   0          Y       19843
Brick 192.168.99.119:/data/gfsdata          49153   0          Y       4848

Task Status of Volume gv0
------------------------------------------------------------------------------
There are no active volume tasks

3.5清除glusterfs配置
通过查看/etc/glusterfs/glusterd.vol可以得知glusterfs的工作目录是在/var/lib/glusterd中
#cat /etc/glusterfs/glusterd.vol
volume management
    type mgmt/glusterd
    option working-directory /var/lib/glusterd
    option transport-type socket,rdma
    option transport.socket.keepalive-time 10
    option transport.socket.keepalive-interval 2
    option transport.socket.read-fail-log off
    option ping-timeout 0
    option event-threads 1
#   option transport.address-family inet6
#   option base-port 49152
end-volume
//如果需要清除glusterfs配置,将工作目录删除后重启服务即可
# rm -rf /var/lib/glusterd/
# /etc/init.d/glusterd restart
删除卷
gluster volume stop gv0 gluster volume delete gv0
# 卷扩容(由于副本数设置为2,至少要添加2(4、6、8..)台机器)
gluster peer probe 192.168.99.117 # 加节点 gluster volume add-brick gv0 192.168.99.117:/data/glusterfs #合并卷

# 收缩卷(收缩卷前gluster需要先移动数据到其他位置)
gluster volume remove-brick gv0 192.168.99.117:/data/glusterfs start # 开始迁移 gluster volume remove-brick gv0 192.168.99.117:/data/glusterfs status # 查看迁移状态 gluster volume remove-brick gv0 192.168.99.117:/data/glusterfs commit # 迁移完成后提交



//挂载与卸载
mount -t glusterfs 192.168.99.117:/gv0 /mnt
umount /mnt
# mount -t glusterfs 192.168.99.119:/gv0 /mnt/
# df -h
192.168.99.119:/gv0      150G   31G120G21% /mnt
# umount -t glusterfs 192.168.99.119:/gv0
或# umount/mnt

//创建四种卷
(1) 分布式卷(哈希卷)
~]# gluster volume create dht server01:/Data/dht1 server02:/Data/dht2 server03:/Data/dht3 server04:/Data/dht4 force// 创建一个名为dht的哈希卷
(2) 复制卷
~]# gluster volume create afr replica 2 server01:/Data/afr1 server02:/Data/afr2 server03:/Data/afr3 server04:/Data/afr4 force   // 创建一组备份为2的复制卷
(3) 条带卷
Data]# gluster volume create stp stripe 2 server01:/Data/stp1 server02:/Data/stp2 server03:/Data/stp3 server04:/Data/stp4 force// 创建一个条带卷
(4) 哈希+复制卷
~]# gluster volume create dht_afr replica 2 server01:/Data/dht_afr1 server02:/Data/dht_afr2 server03:/Data/dht_afr3 server04:/Data/dht_afr4 server01:/Data/dht_afr5 server02:/Data/dht_afr6 server03:/Data/dht_afr7 server04:/Data/dht_afr8 force   // 创建8个brick,2备份的哈希+复制卷
//开机自动启动挂载
@client ~]# vi /etc/fstab
最后添加如下内容
server01:/dht    /mnt/dht   glusterfs defaults,_netdev 0 0
server01:/afr    /mnt/afr   glusterfs defaults,_netdev 0 0
server01:/stp    /mnt/stp   glusterfs defaults,_netdev 0 0
server01:/dht_afr /mnt/dht_afr glusterfs defaults,_netdev 0 0



页: [1]
查看完整版本: CENTOS7下 GlusterFS简单配置