分布式文件系统---GlusterF
1.1 分布式文件系统
1.1.1 什么是分布式文件系统
相对于本机端的文件系统而言,分布式文件系统(英语:Distributed file system, DFS),或是网络文件系统(英语:Network File System),是一种允许文件通过网络在多台主机上分享的文件系统,可让多机器上的多用户分享文件和存储空间。
在这样的文件系统中,客户端并非直接访问底层的数据存储区块,而是通过网络,以特定的通信协议和服务器沟通。借由通信协议的设计,可以让客户端和服务器端都能根据访问控制清单或是授权,来限制对于文件系统的访问。
1.1.2 glusterfs是什么
Gluster是一个分布式文件系统。它是各种不同的存储服务器之上的组合,这些服务器由以太网或无限带宽技术Infiniband以及远程直接内存访问RDMA互相融汇,最终所形成的一个大的并行文件系统网络。
它有包括云计算在内的多重应用,诸如:生物医药科学,文档存储。Gluster是由GNU托管的自由软件,证书是AGPL。Gluster公司是Gluster的首要商业赞助商,且提供商业产品以及基于Gluster的解决方案。
1.2 快速部署GlusterFS
1.2.1 环境说明
注意:最少需要拥有两块硬盘
系统环境说明
glusterfs01信息
[root@glusterfs01 ~]# hostname glusterfs01 [root@glusterfs01 ~]# uname -r 3.10.0-693.el7.x86_64 [root@glusterfs01 ~]# sestatus SELinux status: disabled [root@glusterfs01 ~]# systemctl status firewalld.service ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:firewalld(1) [root@glusterfs01 ~]# hostname -I 10.0.0.120 172.16.1.120
glusterfs02信息
[root@glusterfs02 ~]# uname -r 3.10.0-693.el7.x86_64 [root@glusterfs02 ~]# sestatus SELinux status: disabled [root@glusterfs02 ~]# systemctl status firewalld.service ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:firewalld(1) [root@glusterfs02 ~]# hostname -I 10.0.0.121 172.16.1.121
注意配置好hosts解析
1.2.2 前期准备
gluster01主机挂载磁盘
[root@glusterfs01 ~]# mkfs.xfs /dev/sdb [root@glusterfs01 ~]# mkdir -p /data/brick1 [root@glusterfs01 ~]# echo '/dev/sdb /data/brick1 xfs defaults 0 0' >> /etc/fstab [root@glusterfs01 ~]# mount -a && mount
gluster02主机挂载磁盘
[root@glusterfs02 ~]# mkfs.xfs /dev/sdb [root@glusterfs02 ~]# mkdir -p /data/brick1 [root@glusterfs02 ~]# echo '/dev/sdb /data/brick1 xfs defaults 0 0' >> /etc/fstab [root@glusterfs02 ~]# mount -a && mount
1.3 部署GlusterFS
1.3.1 安装软件
在两个节点上操作
yum install centos-release-gluster -y # 修改镜像源加速 sed -i 's#http://mirror.centos.org#https://mirrors.shuosc.org#g' /etc/yum.repos.d/CentOS-Gluster-3.12.repo yum install -y glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma
软件版本
[root@glusterfs01 ~]# rpm -qa glusterfs glusterfs-3.12.5-2.el7.x86_64
1.3.2 启动GlusterFS
在两个节点上都进行操作
[root@glusterfs01 ~]# systemctl start glusterd.service [root@glusterfs01 ~]# systemctl status glusterd.service ● glusterd.service - GlusterFS, a clustered file-system server Loaded: loaded (/usr/lib/systemd/system/glusterd.service; disabled; vendor preset: disabled) Active: active (running) since 三 2018-02-07 21:02:44 CST; 2s ago Process: 1923 ExecStart=/usr/sbin/glusterd -p /var/run/glusterd.pid --log-level $LOG_LEVEL $GLUSTERD_OPTIONS (code=exited, status=0/SUCCESS) Main PID: 1924 (glusterd) CGroup: /system.slice/glusterd.service └─1924 /usr/sbin/glusterd -p /var/run/glusterd.pid --log-level INFO 2月 07 21:02:44 glusterfs01 systemd[1]: Starting GlusterFS, a clustered file-system server... 2月 07 21:02:44 glusterfs01 systemd[1]: Started GlusterFS, a clustered file-system server. Hint: Some lines were ellipsized, use -l to show in full.
1.3.3 配置互信(可信池)
在glusterfs01上操作
[root@glusterfs01 ~]# gluster peer probe glusterfs02 peer probe: success.
在glusterfs02上操作
[root@glusterfs02 ~]# gluster peer probe glusterfs01 peer probe: success.
注意:一旦建立了这个池,只有受信任的成员可能会将新的服务器探测到池中。新服务器无法探测池,必须从池中探测。
1.3.4 检查对等状态
[root@glusterfs01 ~]# gluster peer status Number of Peers: 1 Hostname: 10.0.0.121 Uuid: 61d043b0-5582-4354-b475-2626c88bc576 State: Peer in Cluster (Connected) Other names: glusterfs02
注意:看到的UUID应不相同。
[root@glusterfs02 ~]# gluster peer status Number of Peers: 1 Hostname: glusterfs01 Uuid: e2a9367c-fe96-446d-a631-194970c18750 State: Peer in Cluster (Connected)
1.3.5 建立一个GlusterFS卷
在两个节点上操作
mkdir -p /data/brick1/gv0
在任意一个节点上执行
[root@glusterfs01 ~]# gluster volume create gv0 replica 2 glusterfs01:/data/brick1/gv0 glusterfs02:/data/brick1/gv0 Replica 2 volumes are prone to split-brain. Use Arbiter or Replica 3 to avoid this. See: http://docs.gluster.org/en/latest/Administrator%20Guide/Split%20brain%20and%20ways%20to%20deal%20with%20it/. Do you still want to continue? (y/n) y volume create: gv0: success: please start the volume to access data
启用存储卷
[root@glusterfs01 ~]# gluster volume start gv0 volume start: gv0: success
查看信息
[root@glusterfs01 ~]# gluster volume info Volume Name: gv0 Type: Replicate Volume ID: 865899b9-1e5a-416a-8374-63f7df93e4f5 Status: Started Snapshot Count: 0 Number of Bricks: 1 x 2 = 2 Transport-type: tcp Bricks: Brick1: glusterfs01:/data/brick1/gv0 Brick2: glusterfs02:/data/brick1/gv0 Options Reconfigured: transport.address-family: inet nfs.disable: on performance.client-io-threads: off
至此,服务端配置结束
1.4 客户端测试
1.4.1 安装客户端工具
挂载测试
[root@clsn6 ~]# yum install centos-release-gluster -y [root@clsn6 ~]# yum install -y glusterfs glusterfs-fuse
注意:要配置好hosts文件,否则连接会出错
[root@clsn6 ~]# mount.glusterfs glusterfs01:/gv0 /mnt [root@clsn6 ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 19G 2.2G 16G 13% / tmpfs 238M 0 238M 0% /dev/shm /dev/sda1 190M 40M 141M 22% /boot glusterfs01:/gv0 100G 33M 100G 1% /mnt
1.4.2 复制文件测试
[root@clsn6 ~]# for i in `seq -w 1 100`; do cp -rp /var/log/messages /mnt/copy-test-$i; done
客户端检查文件
[root@clsn6 ~]# ls -lA /mnt/copy* | wc -l 10
服务节点检查文件
[root@glusterfs01 ~]# ls -lA /data/brick1/gv0/copy* |wc -l 100
服务节点检查文件
[root@glusterfs02 ~]# ls -lA /data/brick1/gv0/copy* |wc -l 100
至此Glusterfs简单配置完成
分布式文件系统---GlusterF的更多相关文章
- 【架构设计】分布式文件系统 FastDFS的原理和安装使用
本文地址 分享提纲: 1.概述 2. 原理 3. 安装 4. 使用 5. 参考文档 1. 概述 1.1)[常见文件系统] Google了一下,流行的开源分布式文件系统有很多,介绍如下: -- mo ...
- 网站文件系统发展&&分布式文件系统fastDFS
网站文件系统发展 1.单机时代的图片服务器架构 初创时期由于时间紧迫,开发人员水平也很有限等原因.所以通常就直接在website文件所在的目录下,建立1个upload子目录,用于保存用户上传的图片文件 ...
- 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署
少啰嗦,直接装 看过上一篇分布式文件系统 - FastDFS 简单了解一下的朋友应该知道,本次安装是使用目前余庆老师开源的最新 V5.05 版本,是余庆老师放在 Github 上的,和目前你能在网络上 ...
- 分布式文件系统 - FastDFS 简单了解一下
别问我在哪里 也许我早已不是我自己,别问我在哪里,我一直在这里. 突然不知道说些什么了... 初识 FastDFS 记得那是我刚毕业后进入的第一家公司,一个技术小白进入到当时的项目组后,在开发中上传用 ...
- 分布式文件系统 - FastDFS 配置 Nginx 模块及上传测试
也不说废话,直接干 上一篇 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署 中安装了 FastDFS 后,并配置启动了 Tracker 和 Storage 服务,已经可以上传文件 ...
- 【从零开始学习Hadoop】--2.HDFS分布式文件系统
1. 文件系统从头说2. Hadoop的文件系统3. 如何将文件复制到HDFS3.1 目录和文件结构3.2 FileCopy.java文件的源代码3.3 编译3.4打包3.5 运行3.6 检查结果 1 ...
- Hadoop学习笔记【分布式文件系统学习笔记】
分布式文件系统介绍 分布式文件系统:Hadoop Distributed File System,简称HDFS. 一.HDFS简介 Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(c ...
- HDFS分布式文件系统资源管理器开发总结
HDFS,全称Hadoop分布式文件系统,作为Hadoop生态技术圈底层的关键技术之一,被设计成适合运行在通用硬件上的分布式文件系统.它和现有的分布式文件系统有很多共同点,但同时,它和其他的分布式 ...
- Hadoop 分布式文件系统:架构和设计
引言 Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统.它和现有的分布式文件系统有很多共同点.但同时,它和其他的分布式文件系统 ...
随机推荐
- 【洛谷P1966】火柴排队
火柴排队 题目链接 ∑(ai−bi)^2=∑ai^2-2*∑ai*bi+∑bi^2 显然∑ai^2+∑bi^2是不变的,我们要让 2*∑ai*bi最大,才能使原式最小 然后我们一眼就可以看出来, ...
- UGUI防止点击穿透
if (!IsPointerOverGameObject(Input.mousePosition)) { } public static bool IsPointerOverGameObject(Ve ...
- SpeedTree制作超真实老宅
- git submodule update --init --recursive
最近在跑好几个模型,视频检测,物体检测,搭建mxnet时,有点问题,记录一下. 视频检测,mxnet需要用指定版本,git 切换到指定版本后,update了,但是依然提示说有些库找不到.想了想,应该是 ...
- Docker官方文档翻译1
转载请标明出处: https://blog.csdn.net/forezp/article/details/80098675 本文出自方志朋的博客 本系列教程翻译于docker文档,文档地址:http ...
- Django-rest-framework(一)简单入门使用
简单的使用 Django-rest-framework 建成DRF,可以帮助我们快速构建出 django的rest full 风格的api接口. 其源码容易理解,所以我们可以很方便的使用. 安装 pi ...
- js数组去重方法整理
1.思路:定义一个新数组,并存放原数组的第一个元素,然后将原数组的项和新数组的元素一一对比,若不同则存放在新数组中. function unique(arr){ var res = [arr[0]]; ...
- ABAP术语-Error Message
Error Message 原文:http://www.cnblogs.com/qiangsheng/archive/2008/01/30/1058283.html Information from ...
- 关于parseInt的看法
前面在看题目的时候 偶然看到 使用parseInt 来进行整数判断 但是这里的parseInt是错误示范 之后了解了一下 发现这和函数 很有研究 先看看 w3c怎么说这个的 parseInt() ...
- 基于pyecharts的IT各行业薪资展示
我们的项目是一个信息采集系统,采集的是51job招聘网站,我爬取了Python,Java,C++,PHP还有北京各地区的职位数量,以及经验要求,和学历要求等等. 网页头; <!DOCTYPE h ...