- 安装包
#yum install -y centos-release-gluster
#yum install -y glusterfs-server
- 安装后查看版本
glusterfs -V
- 启动glusterd服务
service glusterd start
- 查看服务启动后的状态
service glusterd status
- 把服务添加到开机启动中并查看
chkconfig glusterd on
chkconfig |grep glusterd
- 把主机添加到信任存储池中
gluster peer probe mystorage2
gluster peer probe mystorage3
gluster peer probe mystorage4
#(例如有4台主机)执行命令的主机本身不添加自己
- 查看存储信任关系(存储池中任意一台主机都可以查看关系)
[root@mystorage1 ~]# gluster peer status
Number of Peers: 3
Hostname: mystorage2
Uuid: 9146cdfc-d394-4311-aca2-a6998e3857ca
State: Peer in Cluster (Connected)
Hostname: mystorage3
Uuid: 65c31174-7ee7-4342-9603-cfb443c9ff10
State: Peer in Cluster (Connected)
Hostname: mystorage4
Uuid: b814c887-f000-4dbc-b554-126e145b0449
State: Peer in Cluster (Connected)
- 安装XFS文件系统工具包
yum install -y xfsprogs
- 查看磁盘状态
fdisk -l
- 把需要做存储的数据盘格式化为xfs
mkfs.xfs -f /dev/sdb
- 创建数据盘挂载目录并挂载数据磁盘(可建多目录挂载多磁盘brick1、brick2),创建磁盘后可不手动加载磁盘,在添加fstab后,执行mount -a自动加载
mkdir -p /storage/brick1
mount /dev/sdb /storage/brick1/
- 执行df-h查看磁盘
[root@mystorage1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 19G 1.6G 16G 9% /
tmpfs 491M 0 491M 0% /dev/shm
/dev/sda1 190M 33M 147M 19% /boot
/dev/sdb 10G 33M 10G 1% /storage/brick1
- 开机自动挂载磁盘,在/etc/fstab 中添加命令
echo "/dev/sdb /storage/brick1 xfs defaults 0 0" >> /etc/fstab
- 如果前面没有手动挂载磁盘,可以在fstab中添加磁盘后,执行mount命令自动加载全部fstab中的磁盘
mount -a
- 创建分布卷(可在任意一台信任主机上执行)
gluster volume create gv1 mystorage1:/storage/brick1 mystorage2:/storage/brick1 force
#gv1 为卷名称 可根据需要更改
- 启动分布卷(可在任意一台信任主机上执行)
gluster volume start gv1
- 查看分布卷状态(可在任意一台信任主机上执行)
gluster volume info
- 创建挂载目录并挂载分布卷
mkdir -p /gv1
mount -t glusterfs 127.0.0.1:/gv1 /gv1
- 查看分布卷
[root@mystorage3 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 19G 1.6G 16G 9% /
tmpfs 491M 0 491M 0% /dev/shm
/dev/sda1 190M 33M 147M 19% /boot
/dev/sdb 10G 33M 10G 1% /storage/brick1
127.0.0.1:/gv1 20G 65M 20G 1% /gv1
- 用NFS方式挂载分布式卷(主机名可以用IP地址替换)
mount -o mountproto=tcp -t nfs mystorage1:/gv1 /mnt/
- 创建分布式复制卷
使用之前未使用的磁盘创建复制卷(replica几份,就要添加几块未使用的磁盘)
gluster volume create gv2 replica 2 mystorage3:/storage/brick1 mystorage4:/storage/brick1 force
- 启动分布式复制卷,查看状态,创建挂载目录,挂载卷
gluster volume start gv2
gluster volume info
mkdir -p /gv2
mount -t glusterfs 127.0.0.1:/gv2 /gv2
- 创建条带式复制卷
gluster volume create gv3 stripe 2 mystorage3:/storage/brick2 mystorage4:/storage/brick2 force
- 启动条带式复制卷,查看状态,创建挂载目录,挂载卷
gluster volume start gv3
gluster volume info
mkdir -p /gv3
mount -t glusterfs 127.0.0.1:/gv3 /gv3
- 扩展现有复制卷:卸载卷,停止卷,扩展卷空间,启动卷,挂载卷,查看卷状态
umount gv2
gluster volume stop gv2
gluster volume add-brick gv2 replica 2 mystorage1:/storage/brick2 mystorage2:/storage/brick2 force
gluster volume start gv2
mount -t glusterfs 127.0.0.1:/gv2 /gv2
df -h
- 扩展复制卷后一定要做磁盘平衡,否则存储文件还会存储到老的磁盘下
gluster volume rebalance gv2 start
#查看磁盘平衡状态
gluster volume rebalance gv2 status