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




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

2022-07-20 21:05:24 网络知识 官方管理员

  GlusterFS因有很好的扩展性,使用的用户很多,使用GlusterFS能够解决网络存储、冗余备份等问题,那么在Linux下要如何安装GlusterFS呢?今天小编以CentOS6.4为例,给大家介绍下CentOS6.4安装配置GlusterFS的方法。

CentOS,GlusterFS

  环境介绍:

  OS:CentOS6.4x86_64Minimal

  Servers:sc2-log1,sc2-log2,sc2-log3,sc2-log4

  Client:sc2-ads15

  具体步骤:

  1.在sc2-log{1-4}上安装GlusterFS软件包:

  代码如下

  #wget-P/etc/yum.repos.dhttp://download.gluster.org/pub/gluster/glusterfs/LATEST/CentOS/glusterfs-epel.repo

  #yuminstall-yglusterfs-3.4.2-1.el6glusterfs-server-3.4.2-1.el6glusterfs-fuse-3.4.2-1.el6

  #/etc/init.d/glusterdstart

  #chkconfigglusterfsdon

  2.在sc2-log1上配置整个GlusterFS集群:

  代码如下

  [root@sc2-log1~]#glusterpeerprobesc2-log1

  1peerprobe:success:onlocalhostnotneeded

  [root@sc2-log1~]#glusterpeerprobesc2-log2

  1peerprobe:success

  [root@sc2-log1~]#glusterpeerprobesc2-log3

  1peerprobe:success

  [root@sc2-log1~]#glusterpeerprobesc2-log4

  1peerprobe:success

  [root@sc2-log1~]#glusterpeerstatus

  01NumberofPeers:3

  02

  03Hostname:sc2-log2

  04Port:24007

  05Uuid:399973af-bae9-4326-9cbd-b5b05e5d2927

  06State:PeerinCluster(Connected)

  07

  08Hostname:sc2-log3

  09Port:24007

  10Uuid:833a7b8d-e3b3-4099-baf9-416ee7213337

  11State:PeerinCluster(Connected)

  12

  13Hostname:sc2-log4

  14Port:24007

  15Uuid:54bf115a-0119-4021-af80-7a6bca137fd9

  16State:PeerinCluster(Connected)

  3.在sc2-log{1-4}上创建数据存放目录:

  代码如下

  #mkdir-p/usr/local/share/{models,geoip,wurfl}

  #ls-l/usr/local/share/

  1total24

  2drwxr-xr-x2rootroot4096Apr112:19geoip

  3drwxr-xr-x2rootroot4096Apr112:19models

  4drwxr-xr-x2rootroot4096Apr112:19wurfl

  4.在sc2-log1上创建GlusterFS磁盘

  代码如下

  [root@sc2-log1~]#glustervolumecreatemodelsreplica4sc2-log1:/usr/local/share/modelssc2-log2:/usr/local/share/modelssc2-log3:/usr/local/share/modelssc2-log4:/usr/local/share/modelsforce

  1volumecreate:models:success:pleasestartthevolumetoaccessdata

  [root@sc2-log1~]#glustervolumecreategeoipreplica4sc2-log1:/usr/local/share/geoipsc2-log2:/usr/local/share/geoipsc2-log3:/usr/local/share/geoipsc2-log4:/usr/local/share/geoipforce

  1volumecreate:geoip:success:pleasestartthevolumetoaccessdata

  [root@sc2-log1~]#glustervolumecreatewurflreplica4sc2-log1:/usr/local/share/wurflsc2-log2:/usr/local/share/wurflsc2-log3:/usr/local/share/wurflsc2-log4:/usr/local/share/wurflforce

  1volumecreate:wurfl:success:pleasestartthevolumetoaccessdata

  [root@sc2-log1~]#glustervolumestartmodels

  1volumestart:models:success

  [root@sc2-log1~]#glustervolumestartgeoip

  1volumestart:geoip:success

  [root@sc2-log1~]#glustervolumestartwurfl

  1volumestart:wurfl:success

  [root@sc2-log1~]#glustervolumeinfo

  01VolumeName:models

  02Type:Replicate

  03VolumeID:b29b22bd-6d8c-45c0-b199-91fa5a76801f

  04Status:Started

  05NumberofBricks:1x4=4

  06Transport-type:tcp

  07Bricks:

  08Brick1:sc2-log1:/usr/local/share/models

  09Brick2:sc2-log2:/usr/local/share/models

  10Brick3:sc2-log3:/usr/local/share/models

  11Brick4:sc2-log4:/usr/local/share/models

  12

  13VolumeName:geoip

  14Type:Replicate

  15VolumeID:69b0caa8-7c23-4712-beae-6f536b1cffa3

  16Status:Started

  17NumberofBricks:1x4=4

  18Transport-type:tcp

  19Bricks:

  20Brick1:sc2-log1:/usr/local/share/geoip

  21Brick2:sc2-log2:/usr/local/share/geoip

  22Brick3:sc2-log3:/usr/local/share/geoip

  23Brick4:sc2-log4:/usr/local/share/geoip

  24

  25VolumeName:wurfl

  26Type:Replicate

  27VolumeID:c723a99d-eeab-4865-819a-c0926cf7b88a

  28Status:Started

  29NumberofBricks:1x4=4

  30Transport-type:tcp

  31Bricks:

  32Brick1:sc2-log1:/usr/local/share/wurfl

  33Brick2:sc2-log2:/usr/local/share/wurfl

  34Brick3:sc2-log3:/usr/local/share/wurfl

  35Brick4:sc2-log4:/usr/local/share/wurfl

  5.在sc2-ads15上部署客户端并mountGlusterFS文件系统:

  [sc2-ads15][root@sc2-ads15~]#wget-P/etc/yum.repos.dhttp://download.gluster.org/pub/gluster/glusterfs/LATEST/CentOS/glusterfs-epel.repo

  [sc2-ads15][root@sc2-ads15~]#yuminstall-yglusterfs-3.4.2-1.el6glusterfs-fuse-3.4.2-1.el6

  [sc2-ads15][root@sc2-ads15~]#mkdir-p/mnt/{models,geoip,wurfl}

  [sc2-ads15][root@sc2-ads15~]#mount-tglusterfs-orosc2-log3:models/mnt/models/

  [sc2-ads15][root@sc2-ads15~]#mount-tglusterfs-orosc2-log3:geoip/mnt/geoip/

  [sc2-ads15][root@sc2-ads15~]#mount-tglusterfs-orosc2-log3:wurfl/mnt/wurfl/

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

  1FilesystemSizeUsedAvailUse%Mountedon

  2/dev/mapper/vg_t-lv_root

  359G7.7G48G14%/

  4tmpfs3.9G03.9G0%/dev/shm

  5/dev/xvda1485M33M428M8%/boot

  6sc2-log3:models98G8.6G85G10%/mnt/models

  7sc2-log3:geoip98G8.6G85G10%/mnt/geoip

  8sc2-log3:wurfl98G8.6G85G10%/mnt/wurfl

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

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

  代码如下

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

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

  [sc2-ads15][root@sc2-ads15~]#echoThisissc2-ads15》/mnt/models/hello.txt

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

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

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

  1hello.txttestdir

  结果:数据写入成功

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

  代码如下

  [root@sc2-log1~]#echoThisissc2-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

  1hello.txttestdir

  结果:数据写入失败

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

  代码如下

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

  [root@sc2-log1~]#echoThisissc2-log1》/mnt/models/hello.3.txt

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

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

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

  1hello.2.txthello.3.txthello.txttest2test3testdir

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

  最终结论:

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

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

  7.其它操作笔记:

  删除GlusterFS磁盘:

  代码如下

  #glustervolumestopmodels

  #glustervolumedeletemodels

  卸载GlusterFS磁盘:

  代码如下

  sc2-log4

  ACL访问控制:

  代码如下

  #glustervolumesetmodelsauth.allow10.60.1.*,10.70.1.*

  添加GlusterFS节点:

  代码如下

  #glusterpeerprobesc2-log5

  #glusterpeerprobesc2-log6

  #glustervolumeadd-brickmodelssc2-log5:/data/glustersc2-log6:/data/gluster

  迁移GlusterFS磁盘数据:

  代码如下

  #glustervolumeremove-brickmodelssc2-log1:/usr/local/share/modelssc2-log5:/usr/local/share/modelsstart

  #glustervolumeremove-brickmodelssc2-log1:/usr/local/share/modelssc2-log5:/usr/local/share/modelsstatus

  #glustervolumeremove-brickmodelssc2-log1:/usr/local/share/modelssc2-log5:/usr/local/share/modelscommit

  修复GlusterFS磁盘数据(例如在sc2-log1宕机的情况下):

  代码如下

  #glustervolumereplace-brickmodelssc2-log1:/usr/local/share/modelssc2-log5:/usr/local/share/modelscommit-force

  #glustervolumehealmodelsfull

  通过本文的介绍,想必你已经对GlusterFS在CentOS6.4的安装配置有了一定的了解,除此之外,本文还介绍了GlusterFS的其他操作方法。


发表评论:

最近发表
网站分类
标签列表