转发:http://quenywell.com/install-glusterfs-on-centos-6-x/

本文主要介绍如何在CentOS 6.x上快速安装GlusterFS。
GlusterFS是一个开源的分布式文件系统,它可以将分散的存储空间聚合在一起,形成一个虚拟的存储池。它支持横向扩展(Scale-Out),可通过增加存储节点来提升整个系统的容量或性能,存储容量可扩展至PB级。这一扩展机制是目前的存储技术热点,能有效应对容量、性能等存储需求。

GlusterFS除了支持

分散存储(Distributed,将不同的文件放在不同的存储节点)之外,

还支持镜像存储(Replicated,同一个文件存放在两个以上的存储节点) 和

分片存储(Stripped,将一个文件分划分为多个固定长度的数据,分散存放在所有存储节点)。

  1. 事前准备

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

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

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

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

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

启动GlusterFS服务:

# /etc/init.d/glusterd start

设置GlusterFS随系统启动:

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

        # yum -y install glusterfs glusterfs-fuse

    1. GlusterFS服务器设置

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

在server1上运行以下命令: #通过hostname访问对端peer,建议配置hostname(若不配置hostname,迁移场景IP变化时,就麻烦了)

# 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)
      1. 创建GlusterFS逻辑卷(Volume)

在server1和server2分别建立/data目录:(两台要一致的目录,否则下面创建volume会不成功,而且不能在 / 下的目录)

# 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
    1. GlusterFS客户端连接

在客户端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
    1. 客户端测试

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的知识,敬请关注科威网后续相关文章。
(完)

【good】在CentOS 6.x上安装GlusterFS的更多相关文章

  1. 在CentOS或RHEL上安装Nux Dextop仓库

    介绍 Nux Dextop是类似CentOS.RHEL.ScientificLinux的第三方RPM仓库(比如:Ardour,Shutter等等).目前,Nux Dextop对CentOS/RHEL ...

  2. CentOS 6.5上安装MySQL-Cluster

    参考博文: CentOS 6.2下MySQL Cluster 7.2 配置数据库集群 CentOS 6.5上安装MySQL-Cluster 7.3.4过程笔记--下一步学习 MySQL Cluster ...

  3. CentOS 6.9上安装mysql-5.6.36

    CentOS 6.9上安装mysql-5.6.36 1.准备数据存放的文件系统 新建一个逻辑卷,并将其挂载至特定目录即可.这里不再给出过程. 这里假设其逻辑卷的挂载目录为/data,而后需要创建/da ...

  4. 记录CentOS 7.4 上安装MySQL&MariaDB&Redis&Mongodb

    记录CentOS 7.4 上安装MySQL&MariaDB&Redis&Mongodb 前段时间我个人Google服务器意外不能用,并且我犯了一件很低级的错误,直接在gcp讲服 ...

  5. [转]在Linux CentOS 6.6上安装Python 2.7.9

    在Linux CentOS 6.6上安装Python 2.7.9 查看python安装版本 python -V yum中最新的也是Python 2.6.6,所以只能下载Python 2.7.9的源代码 ...

  6. 在 CentOS 7.2 上安装 ODOO 10 (2018-10-09 持续更新)

    在 CentOS 7.2 上安装 ODOO 10 更新系统 yum update 安装 EPEL 源 1 yum install -y epel-release 安装依赖组件 yum install ...

  7. CentOS 6.9上安装mysql-5.6.37

    CentOS 6.9上安装mysql-5.6.37 1.准备数据存放的文件系统 新建一个逻辑卷,并将其挂载至特定目录即可.这里不再给出过程. 这里假设其逻辑卷的挂载目录为/data,而后需要创建/da ...

  8. CentOS 6.9上安装Mysql 5.7.18 安装

    CentOS 6.9上安装Mysql 5.7.18 安装 下载地址:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-g ...

  9. 在 CentOS 6.4上安装Erlang

    如何在CentOS 6.4上安装erlang,具体的Erlang版本是R15B03-1. 在安装之前,需要先要安装一些其他的软件,否则在安装中间会出现一些由于没有其依赖的软件模块而失败. 一开始,要是 ...

随机推荐

  1. css布局--垂直居中

    1. 使用table-cell和vertical-align实现垂直居中 html <div class="parent">使用table-cell和vertical- ...

  2. QMAKESPEC环境变量详解

    相关知识 要讲解QMAKESPEC环境变量的知识,先要了解如下知识 qmake .pro项目文件 makefile文件 1.qmake qmake是用来为不同的平台的开发项目创建Makefile的Tr ...

  3. 【转】NO.1、 appium之ios环境搭建

    首先感谢iOS开发同学无私的帮助.   一.环境及版本: xcode:7.1,我是百度下的dmg文件,直接装的,这个太大了,请自行百度,或升级自己的xcode,一般都不需要这一步. appium:1. ...

  4. 如何在 iOS 真机运行 Appium

    使用 gui 启动的 appium 1.2.2 也会有这个问题,所以你要把 deviceconsole 复制到 /Applications/Appium.app/Contents/Resources/ ...

  5. JSP动态产生的代码,点击显示确认操作,根据操作跳转并传值。

    假如有如下一段代码产生了多个选项我们改如何获得点击删除一项中的值? <%List<Theme> themelist=(List<Theme>)request.getAtt ...

  6. 学习总结:gcc/g++ 编译与链接

    gcc/g++ 编译与链接 编译与链接的过程可以分解为四个步骤:预处理.编译.汇编.链接 预处理:源代码文件和相关的头文件,被预处理器cpp预处理成一个后缀为 .i 的文件(选项:-E) 编译:把预处 ...

  7. Java之CountDownLatch ---控制线程执行顺序

    一,类介绍 这是java.util.concurrent包里的一个同步辅助类,它有两个主要的常用方法  countDown()方法以及await()方法.在完成一组正在其他线程中执行的操作之前,它允许 ...

  8. App开发 对生命周期的处理

    //获取到当前所在的视图 - (UIViewController *)presentingVC:(UIApplication *)application{ UIWindow * window = ap ...

  9. 名片管理系统v1.1(main)

    # version: 1.1# author: Mark import cords_tools while True: # 显示界面    cords_tools.show_cords() cords ...

  10. 关于 " +new Date "

    关于 " +new Date " 的个人见解 今天晚上,在一个Javascript的Q群里,有人问下面这种代码是什么意思: var time = +new Date; 这段代码中, ...