在CentOS 6.x上安装GlusterFS

本文主要介绍如何在CentOS 6.x上快速安装GlusterFS。
GlusterFS是一个开源的分布式文件系统,它可以将分散的存储空间聚合在一起,形成一个虚拟的存储池。它支持横向扩展(Scale-Out),可通过增加存储节点来提升整个系统的容量或性能,存储容量可扩展至PB级。这一扩展机制是目前的存储技术热点,能有效应对容量、性能等存储需求。GlusterFS除了支持分散存储(Distributed,将不同的文件放在不同的存储节点)之外,还支持镜像存储(Replicated,同一个文件存放在两个以上的存储节点) 和分片存储(Stripped,将一个文件分划分为多个固定长度的数据,分散存放在所有存储节点)。

  1. 事前准备

  2. 准备三台机器(物理机或者虚拟机均可)用于安装和测试GlusterFS,其中两台用作服务器,一台用作客户端,主机名分别为:

    server1.quenywell.com
    server2.quenywell.com
    client.quenywell.com
  3. 安装GlusterFS

    1. 在每台机器上安装GlusterFS的源(repo):

    2. wget -P /etc/yum.repos.d http://download.gluster.org/pub/gluster/glusterfs/LATEST/CentOS/glusterfs-epel.repo
    3. 在服务器server1和server2上安装服务端软件:

    4. # yum -y install glusterfs-server glusterfs glusterfs-fuse

      启动GlusterFS服务:

      # /etc/init.d/glusterd start

      设置GlusterFS随系统启动:

      # chkconfig glusterd on
    5. 在client上安装客户端软件:

    6. # yum -y install glusterfs glusterfs-fuse
  4. GlusterFS服务器设置

    1. 加入可信存储池(Trusted Storage Pool)

    2. 在server1上运行以下命令:

      # gluster peer probe server2
      Probe successful

      查看状态:

      # gluster peer status
      Number of Peers: 1
      
      Hostname: server2.quenywell.com
      Uuid: c191b17b-ab9d-4b15-a70d-dcc92be067c9
      State: Peer in Cluster (Connected)
      
    3. 创建GlusterFS逻辑卷(Volume)

    4. 在server1和server2分别建立/data目录:

      # mkdir /data

      然后执行以下命令(只需要在其中一台服务器上执行即可,本例使用server1):

      # gluster volume create gv0 replica 2 server1:/data server2:/data
      Creation of volume gv0 has been successful. Please start the volume to access data.

      这条命令的意思是使用Replicated的方式,建立一个名为gv0的卷(Volume),存储块(Brick)为2个,分别为server1:/data和server2:/data。
      启用GlusterFS逻辑卷:

      # gluster volume start gv0
      Starting volume gv0 has been successful

      查看逻辑卷状态:

      # gluster volume info
       
      Volume Name: gv0
      Type: Replicate
      Volume ID: 5429d6c1-44e5-43ad-a495-0a1f5b6d774b
      Status: Started
      Number of Bricks: 1 x 2 = 2
      Transport-type: tcp
      Bricks:
      Brick1: server1.quenywell.com:/data
      Brick2: server2.quenywell.com:/data
      
  5. GlusterFS客户端连接

  6. 在客户端client.quenywell.com上使用mount命令,把服务器上新建的GlusterFS逻辑卷gv0挂载到本地目录/mnt/glusterfs上:

    # mkdir /mnt/glusterfs
    mount -t glusterfs server1.quenywell.com:/gv0 /mnt/glusterfs

    确认挂载结果:

    # mount -t fuse.glusterfs

    出现以下类似信息即表示挂载成功:

    server1.quenywell.com:/gv0 on /mnt/glusterfs type fuse.glusterfs (rw,default_permissions,allow_other,max_read=131072)

    如果希望系统重启后可以自动挂载,在/etc/fstab文件中加入此行:

    server1.quenywell.com:/data /mnt/glusterfs glusterfs defaults,_netdev 0 0
  7. 客户端测试

  8. client端成功挂载逻辑卷之后,在挂载目录/mnt/glusterfs建立文件以测试GlusterFS是否正常工作。

    # cd /mnt/glusterfs
    # touch file1 file2 file3
    # ls -l
    -rw-r--r-- 1 root root          0 Nov  11 14:31 file1
    -rw-r--r-- 1 root root          0 Nov  11 14:31 file2
    -rw-r--r-- 1 root root          0 Nov  11 14:31 file3
    

    因为创建卷gv0的时候使用的是镜像存储(Replicated),所以在gv0上写入的文件应该同时出现在两个服务器的/data目录上。
    在server1和server2查看/data目录,可以看到两个服务器均出现这三个文件:

    [root@server1]# ls -l
    -rw-r--r-- 1 root root          0 Nov  11 14:31 file1
    -rw-r--r-- 1 root root          0 Nov  11 14:31 file2
    -rw-r--r-- 1 root root          0 Nov  11 14:31 file3
    
    [root@server2]# ls -l
    -rw-r--r-- 1 root root          0 Nov  11 14:31 file1
    -rw-r--r-- 1 root root          0 Nov  11 14:31 file2
    -rw-r--r-- 1 root root          0 Nov  11 14:31 file3
    

自此GlusterFS快速安装过程结束。如果需要了解更多有关GlusterFS的知识,敬请关注科威网后续相关文章。
(完)


除非注明,科威网文章均为原创。转载请以链接形式标明本文地址。
本文地址:https://quenywell.com/install-glusterfs-on-centos-6-x/

Leave a Comment

您的电子邮箱地址不会被公开。 必填项已用 * 标注