CentOS 6.4如何安装及设置GlusterFS以解决网络存储的问题

2020-01-30 14:21:10刘景俊

  [sc2-ads15][root@sc2-ads15 ~]# df -h

  1 Filesystem Size Used Avail Use% Mounted on

  2 /dev/mapper/vg_t-lv_root

  3 59G 7.7G 48G 14% /

  4 tmpfs 3.9G 0 3.9G 0% /dev/shm

  5 /dev/xvda1 485M 33M 428M 8% /boot

  6 sc2-log3:models 98G 8.6G 85G 10% /mnt/models

  7 sc2-log3:geoip 98G 8.6G 85G 10% /mnt/geoip

  8 sc2-log3:wurfl 98G 8.6G 85G 10% /mnt/wurfl 

  6. 相关数据读写可用性测试:

  在sc2-ads15挂载点上写入数据:

  代码如下

  [sc2-ads15][root@sc2-ads15 ~]# umount /mnt/models

  [sc2-ads15][root@sc2-ads15 ~]# mount -t glusterfs sc2-log3:models /mnt/models/

  [sc2-ads15][root@sc2-ads15 ~]# echo “This is sc2-ads15” 》 /mnt/models/hello.txt

  [sc2-ads15][root@sc2-ads15 ~]# mkdir /mnt/testdir

  在sc2-log1数据目录中进行查看:

  [root@sc2-log1 ~]# ls /usr/local/share/models/

  1 hello.txt testdir

  结果: 数据写入成功

  在sc2-log1数据目录中直接写入数据:

  代码如下

  [root@sc2-log1 ~]# echo “This is sc2-log1” 》 /usr/local/share/models/hello.2.txt

  [root@sc2-log1 ~]# mkdir /usr/local/share/models/test2

  在sc2-ads15挂载点上进行查看:

  [sc2-ads15][root@sc2-ads15 ~]# ls /mnt/models

  [sc2-ads15][root@sc2-ads15 ~]# ls -l /mnt/models

  1 hello.txt testdir

  结果: 数据写入失败

  在sc2-log1挂载点上写入数据:

  代码如下

  [root@sc2-log1 ~]# mount -t glusterfs sc2-log1:models /mnt/models/

  [root@sc2-log1 ~]# echo “This is sc2-log1” 》 /mnt/models/hello.3.txt

  [root@sc2-log1 ~]# mkdir /mnt/models/test3

  在sc2-ads15挂载点上进行查看:

  [sc2-ads15][root@sc2-ads15 models]# ls /mnt/models

  1 hello.2.txt hello.3.txt hello.txt test2 test3 testdir

  结果: 数据写入成功,同时之前写入失败的数据也成功加载了。

  最终结论:

  在数据目录中直接写入数据,会导致其它节点因为得不到通知而使数据同步失败。

  正确的做法是所有的读写操作都通过挂载点来进行。

  7. 其它操作笔记:

  删除GlusterFS磁盘:

  代码如下

  # gluster volume stop models

  # gluster volume delete models

  卸载GlusterFS磁盘:

  代码如下

  sc2-log4

  ACL访问控制:

  代码如下

  # gluster volume set models auth.allow 10.60.1.*,10.70.1.*

  添加GlusterFS节点:

  代码如下

  # gluster peer probe sc2-log5

  # gluster peer probe sc2-log6