Centos7下 GlusterFS 环境搭建
准备工作
glusterfs-3.6.9.tar.gz
userspace-rcu-master.zip
三台服务器:192.168.133.53、192.168.133.54、192.168.133.55
如果您的环境没有网络,请先阅读centos7 配置本地yum源
以下出现的简写 含义
53 192.168.133.53:主节点
54 192.168.133.54:从节点
55 192.168.133.55:客户端
(53) 仅在53节点操作
(53&54) 53和54两个节点均需操作
(55) 仅在55节点操作
一、安装依赖(53&54)
yum install -y flex bison openssl openssl-devel acl libacl libacl-devel sqlite-devel libxml2-devel python-devel make cmake gcc gcc-c++ autoconf automake libtool unzip zip
注:以上是一条命令

二、安装userspace-rcu-master(53&54)
1)创建software目录并将glusterfs-3.6.9.tar.gz和userspace-rcu-master.zip上传,如下图所示:

2)解压并编译安装,命令如下:

unzip /usr/local/software/userspace-rcu-master.zip -d /usr/local/
cd /usr/local/userspace-rcu-master/
./bootstrap
./configure
make && make install
ldconfig
三、安装userspace-rcu-master(53&54)
1)解压并编译安装,命令如下:

tar -zxvf /usr/local/software/glusterfs-3.6.9.tar.gz -C /usr/local/
cd /usr/local/glusterfs-3.6.9/
./configure --prefix=/usr/local/glusterfs
make && make install
1
2
3
4
2)添加环境变量,命令和示例图如下所示:

vi /etc/profile

#最上面添加如下配置
export GLUSTERFS_HOME=/usr/local/glusterfs
export PATH=$PATH:$GLUSTERFS_HOME/sbin
1
2
3

source /etc/profile #刷新配置使之生效

3)启动glusterfs

/usr/local/glusterfs/sbin/glusterd

4)关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service
四、建立集群(53)
为什么是53节点?没啥为什么,随便选一个。

1)执行以下命令,将192.168.133.54节点加入到集群:

gluster peer probe 192.168.133.54

2)查看集群状态:

gluster peer status

3)查看 volume 信息(由于还没有创建volume所以显示的是暂无信息):

gluster volume info

4)创建数据存储目录(在53和54两个节点上都运行):

mkdir -p /opt/gluster/data

5)创建复制卷 models,指定刚刚创建的目录(replica 2表明存储2个备份,后面指定服务器的存储目录)

gluster volume create models replica 2 192.168.133.53:/opt/gluster/data 192.168.133.54:/opt/gluster/data force

6)再次查看 volume 信息

gluster volume info

7)启动 models

gluster volume start models

8)gluster 性能调优

开启 指定 volume 的配额
gluster volume quota models enable

限制 models 总目录最大使用 5GB 空间(5GB并非绝对,您可根据实际硬盘大小配置)
gluster volume quota models limit-usage / 5GB

设置 cache 大小(128MB并非绝对,您可根据实际硬盘大小配置)

gluster volume set models performance.cache-size 128MB

开启异步,后台操作
gluster volume set models performance.flush-behind on

设置 io 线程 32
gluster volume set models performance.io-thread-count 32

设置 回写 (写数据时间,先写入缓存内,再写入硬盘)
gluster volume set models performance.write-behind on

9)查看调优之后的volume信息

gluster volume info

五、部署客户端并挂载GlusterFS文件系统(55)
到目前为止,大部分工作已经做完了,接下来就是挂载一个目录,然后通过对这个挂载目录操作,实现数据同步至文件系统。写文件试试^_^

1)安装gluster-client,命令如下:

yum install -y glusterfs glusterfs-fuse

2)建立挂载点目录,命令如下:

mkdir -p /opt/gfsmount

3)挂载,命令如下:

mount -t glusterfs 192.168.133.53:models /opt/gfsmount/

4)令检查挂载情况,命令如下:

df -h

5)测试

time dd if=/dev/zero of=/opt/gfsmount/hello bs=10M count=1

mkdir /opt/gfsmount/test

6)查看集群存储情况 (在53和54两个节点上都运行):

cd /opt/gluster/data/ && ll

备注:查看得知gluster服务器的每个节点上都有备份,符合步骤创建复制卷 models,指定刚刚创建的目录(replica 2表明存储2个备份)

六、GlusterFS相关命令
查看GlusterFS中所有的volume:

gluster volume list

启动磁盘:

gluster volume start models //启动名字为 models 的磁盘

停止磁盘:

gluster volume stop models //停止名字为 models 的磁盘

删除磁盘:

gluster volume delete models //删除名字为 models 的磁盘

七、结束语
至此,GlusterFS的分布式环境已经搭建完成。

1.如果机器重启,

glusterFS服务需要启动
磁盘models需要启动
目录/opt/gfsmount/需要重新挂载
挂载完目录/opt/gfsmount/需要重新进入
systemctl stop firewalld.service
gluster volume start models
mount -t glusterfs 192.168.133.53:models /opt/gfsmount/
cd /opt/gfsmount/

注意:两个分区挂到同一个分区,第一个挂的那个不是被覆盖,而是被暂时隐藏。比如:你先挂的mount /dev/sda1 /opt/gfsmount/,又挂的mount /dev/sda2 /opt/gfsmount/,那/dev/sda1内的就暂时被隐藏,你只要umount /dev/sda2,把第二个分区卸载了,在cd /opt/gfsmount/就可以看到挂的第一个分区的内容了。

结合ftp、java实现文件上传下载删除等必将锦上添花:Centos7搭建ftp服务器
---------------------
作者:no_ob
来源:CSDN
原文:https://blog.csdn.net/no_ob/article/details/78679031
版权声明:本文为博主原创文章,转载请附上博文链接!

Centos7下GlusterFS 分布式文件系统环境搭建的更多相关文章

  1. [过程记录]Centos7 下 Hadoop分布式集群搭建

    过程如下: 配置hosts vim /etc/hosts 格式: ip hostname ip hostname 设置免密登陆 首先:每台主机使用ssh命令连接其余主机 ssh 用户名@主机名 提示是 ...

  2. centos7下Maven Java selenium3环境搭建

    centos7下Maven Java selenium3环境搭建 一.Jdk安装 我这里用的是open-jdk. [adawang@localhost src]$ sudo yum search op ...

  3. GlusterFS分布式文件系统概述

    一.GlusterFS概述 GlusterFS是一个开源的分布式文件系统,同时也是Scale-Out存储解决方案Gluster的核心,在存储数据方面有强大的横向扩展能力,通过扩展不同的节点可以支持PB ...

  4. Centos7下Java开发基本环境搭建

    一.Centos7安装JDK 首先查看自己的机器上是否已经自带openjdk,命令如下: rpm -qa | grep jdk 如果存在,则按照如下命令进行依次卸载: yum -y remove fi ...

  5. Centos7下rc.local文件开机不执行…

    在Centos7下,rc.local文件,开机默认是不执行的 /etc/rc.local链接的是  /etc/rc.d/rc.local文件,该文件默认不开机启动,官方建议添加一个service来实现 ...

  6. CentOS7.5 GlusterFS 分布式文件系统集群环境搭建

    环境准备: 系统版本:CentOS Linux release 7.5.1804 (Core) glusterfs:3.6.9 userspace-rcu-master: 硬件资源: 10.200.2 ...

  7. Centos7下GlusterFS分布式存储集群环境部署记录

    0)环境准备 GlusterFS至少需要两台服务器搭建,服务器配置最好相同,每个服务器两块磁盘,一块是用于安装系统,一块是用于GlusterFS. 192.168.10.239 GlusterFS-m ...

  8. CentOS7 下 Hadoop 分布式部署

    Hadoop 服务划分 使用三台节点,集群部署规划如下 服务\主机 hadoop1 hadoop2 hadoop3 HDFS NameNode DataNode DataNode SecondaryN ...

  9. centos7+hadoop完全分布式集群搭建

    Hadoop集群部署,就是以Cluster mode方式进行部署.本文是基于JDK1.7.0_79,hadoop2.7.5.  1.Hadoop的节点构成如下: HDFS daemon:  NameN ...

随机推荐

  1. 【oracle入门】SQL的命令动词

      SQL的功能 命令动词 数据定义 CREATE,DROP,ALTER 数据操纵 SELECT,INSERT,UPDATE,DELETE 数据控制 CRANT,REVOKE

  2. Gym101889J. Jumping frog(合数分解+环形dp预处理)

    比赛链接:传送门 题目大意: 一只青蛙在长度为N的字符串上跳跃,“R”可以跳上去,“P”不可以跳上去. 字符串是环形的,N-1和0相连. 青蛙的跳跃距离K的取值范围是[1, N-1],选定K之后不可改 ...

  3. hightcharts详细教程

    1.初始化highcharts var chart = Highcharts.chart('container', options); 2.options 自定义图表的配置项 const option ...

  4. Floyd(求每2个点之间的最短路)

    稍微改变即可求传递闭包,即关心两点之间是否有同路: for(int i=0;i<n;i++) for(int j=0;j<n;j++){ if(i==j) d[i][i]=0; else ...

  5. word2007无法打开.doc

    如果您的WORD2007无法打开.DOC文档,可以试试如下的方法 打开注册表编辑器(开始-运行-输入regedit VISTA中在开始菜单最下方的搜索栏内输入regedit) 展开HKEY_CLASS ...

  6. m个小朋友手拉手站成一个圈,从第k个小朋友开始报数,报到n的那个小朋友退到圈外,然后他的下一位重新报“1”。这样继续下去,直到只剩下一个小朋友,求解这个小朋友原来站什么地方。

    约瑟夫环问题. package pack; import java.util.*; public class demo_2 { static int a[]; public static void m ...

  7. node.js跨域

    先上解决方法:在函数中添加(不要用xhr请求) // 只需要关心第二个参数res.setHeader('Access-Control-Allow-Origin', 'http://localhost: ...

  8. python excle写数据

    #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2019/4/24 10:30 # @File : Excle写.py # @Softw ...

  9. HttpClient设置连接超时时间

    https://www.cnblogs.com/winner-0715/p/7087591.html 使用HttpClient,一般都需要设置连接超时时间和获取数据超时时间.这两个参数很重要,目的是为 ...

  10. 爬取网络图片到C盘存储的PermissionError: [Errno 13] Permission denied

    C盘根目录下不能拷进去文件,但可以新建文件夹的,“发生错误,操作被阻止,客户端没有所需的特权. 因为是系统目录,不要在里面拷贝文件,最好建立一个目录再放在里面. 硬要拷贝的话,可以使用管理员权限打开e ...