-
GlusterFS
2020-12-02 17:31:40<ol><li>Clean install of Openshift Origin (1 * Master, 1 * Infra, 3 * App nodes) with GlusterFS </li><li>Ensure storage class is set once the install is comeplete</li></ol> <pre><code> oc patch ... -
glusterFS
2020-12-24 22:41:03yum -y install glusterfs glusterfs-server gluster-fuse glusterfs-rdma gluster centos-release-gluster 启动服务: systemctl start glusterd.service systemctl enable glusterd.service ...在各个节点服务器上安装包:
-
yum -y install glusterfs glusterfs-server gluster-fuse glusterfs-rdma gluster centos-release-gluster
启动服务:
-
systemctl start glusterd.service
-
systemctl enable glusterd.service
glusterfs 是无中心化的,也叫去中心化的,所以下列的命令可以在四个节点随便一台上执行:
-
gluster peer probe node1
-
gluster peer probe node2
-
gluster peer probe node3
-
gluster peer probe node4
查看状态:
gluster peer status
构建分布式卷:
-
gluster volume create dis-volume node1:/e6 node2:/e6 force
-
注:用node1的 e6 和 node2的e6 构建分布式卷。
-
gluster volume start dis-volume
构建条带卷
-
gluster volume create stripe-volume stripe 2 node1:/d5 node2:/d5 force
-
注:用node1的 d5 和 node3的 d5 构建条带卷。(centos7.5系统不支持,可能会报错)
-
gluster volume start stripe-volume
构建复制卷:
-
gluster volume create rep-volume replice 2 node2:/d5 node4:/d5 force
-
注:用node2的 d5 和 node4的 d5 构建复制卷。
-
gluster volume start rep-volume
客户机测试(挂载):
-
需要安装:
-
yum -y install glusterfs glusterfs-fuse centos-release-gluster
-
-
mount -t glusterfs node1:dis-volume /test/dis 分布式卷
-
mount -t glusterfs node1:rep-volume /test/rep 复制卷
-
mount -t glusterfs node1:dis-rep /test_and_rep 分布式复制卷
-
-
GlusterFs
2020-06-06 23:14:31yum install -y glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma 2.启动gluster服务 systemctl start glusterd.service systemctl enable glusterd.service 3将自己和node-2加入集群 gluster peer ...1.软件包安装(两台都执行)
yum install centos-release-gluster yum clean all yum install -y glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma
2.启动gluster服务
systemctl start glusterd.service systemctl enable glusterd.service
3将自己和node-2加入集群
gluster peer probe 2.1.1.120 gluster peer probe 2.1.1.121
#创建复制卷
[root@abcabc ~]# gluster volume create app-data replica 2 2.1.1.120:/bbc/datat/ 2.1.1.121:/bbc/datat/ force volume create: app-data: success: please start the volume to access data
#启动卷
[root@abcabc ~]# gluster volume start app-data volume start: app-data: success
查看卷信息
[root@abcabc ~]# gluster volume info Volume Name: app-data Type: Replicate Volume ID: 50fc4c11-3f63-431b-ad9a-e4d4a3a34dc2 Status: Started Snapshot Count: 0 Number of Bricks: 1 x 2 = 2 Transport-type: tcp Bricks: Brick1: 2.1.1.120:/bbc/datat Brick2: 2.1.1.121:/bbc/datat Options Reconfigured: transport.address-family: inet storage.fips-mode-rchecksum: on nfs.disable: on performance.client-io-threads: off
-
glusterfs
2019-09-13 10:31:29glusterfs https://www.gluster.org/ https://docs.gluster.org/en/latest/Install-Guide/Setup_virt/ glusterfs概述 1. 什么是Gluster Gluster是一个横向扩展的分布式文件系统,可将来自多个服务器的磁盘存储...QQ: 1226032602
E-mail: 1226032602@qq.comglusterfs
https://www.gluster.org/
https://docs.gluster.org/en/latest/Install-Guide/Setup_virt/glusterfs概述
1. 什么是Gluster
Gluster是一个横向扩展的分布式文件系统,可将来自多个服务器的磁盘存储资源整合到一个全局名称空间中,可以根据存储消耗需求快速调配额外的存储。它将自动故障转移作为主要功能
当您修复发生故障的服务器并使其恢复联机状态时,除了等待外,您无需执行任何操作即可恢复数据。与此同时,您的数据的最新副本继续从仍在运行的节点获取。
Gluster数据可以从几乎任何地方访问,可以使用传统的NFS,Windows客户端的SMB / CIFS或我们自己的本地GlusterFS(客户机上需要一些附加软件包)
2. 企业应用场景
媒体数据:文档、图片、音频、视频
共享存储:云储存、虚拟化存储、HPC(高性能计算)
大数据:日志文件、RFID(射频识别)数据3. 优点
缩放到几PB
处理数千个客户
POSIX兼容
可以使用任何支持扩展属性的ondisk文件系统
使用NFS和SMB等行业标准协议访问
提供复制,配额,地理复制,快照和bitrot检测
允许优化不同的工作量
开源4. 缺点
不适用于存储大量小文件的场景,因为GlusterFS的设计之初就是用于存储大数据的,对小文件的优化不是很好,推荐保存单个文件至少1MB以上的环境,如果是大量小文件的场景建议使用FastDFS、MFS等
gluster安装配置
https://docs.gluster.org/en/latest/Quick-Start-Guide/Quickstart/
https://wiki.centos.org/SpecialInterestGroup/Storage/gluster-Quickstart环境准备
两台名为server1和server2的服务器上的CentOS 7
两个虚拟磁盘,一个用于OS安装(sda),另一个用于服务GlusterFS存储(sdb)格式化磁盘
CentOS6需要安装
yum install xfsprogs
在两个节点上都执行
mkfs.xfs -i size=512 /dev/sdb mkdir -p /bricks/brick1
/etc/fstab
[root@server1 ~]# tail -1 /etc/fstab /dev/sdb /bricks/brick1 xfs defaults 0 0
挂载
mount -a
安装GlusterFS并启动
三台服务器上都安装
安装gluster源yum install centos-release-gluster
安装glusterfs
yum install glusterfs-server
启动
systemctl start glusterd.service
hosts解析
三台都做
/etc/hosts10.0.0.201 server1 10.0.0.202 server2
172.16.1.51 db01 172.16.1.31 nfs01 172.16.1.41 backup
添加服务器
nfs01:
gluster peer probe backup gluster peer probe db01
backup:
gluster peer probe nfs01 gluster peer probe db01
db01:
gluster peer probe nfs01 gluster peer probe backup
查看对等状态
gluster peer status
删除服务器
gluster peer detach <server>
查看服务器列表
gluster pool list
gluster UUID
[root@server1 ~]# cat /var/lib/glusterd/glusterd.info UUID=9c8f138a-d502-4b69-9b84-61bd81286ea6 operating-version=31202
建立GlusterFS卷
https://docs.gluster.org/en/latest/CLI-Reference/cli-main/
三台机器都执行
mkdir /bricks/brick1/gv0 mkdir /bricks/brick1/gv1
任意一台机器执行
创建复制卷gluster volume create gv0 replica 2 nfs01:/bricks/brick1/gv0 db01:/bricks/brick1/gv0 gluster volume create gv1 replica 3 nfs01:/bricks/brick1/gv1 db01:/bricks/brick1/gv1 backup:/bricks/brick1/gv1 gluster volume create gv1 replica 3 arbiter 1 nfs01:/bricks/brick1/gv1 db01:/bricks/brick1/gv1 backup:/bricks/brick1/gv1
启动卷
gluster volume start gv0 gluster volume start gv1
查看信息
gluster volume info
日志
tail -f /var/log/glusterfs/glusterd.log
https://docs.gluster.org/en/latest/Administrator%20Guide/
glusterfs客户端
安装gluster源
yum install centos-release-gluster
安装
yum install glusterfs glusterfs-fuse glusterfs-rdma
hosts解析
/etc/hosts10.0.0.201 server1 10.0.0.202 server2
172.16.1.51 db01 172.16.1.31 nfs01 172.16.1.41 backup
挂载
mount -t glusterfs server1:/gv0 /mnt/ mount -t glusterfs nfs01:/gv1 /mnt/ mount -t glusterfs backup:/gv1 /mnt/
gluster Volume Commands
volume create volname [options] bricks 创建卷 volume start volname [force] 启动卷 volume stop volname 停止卷 volume info [volname] 查看卷信息 volumes status[volname] 查看卷状态 volume list 查看卷列表 volume add-brick brick-1 ... brick-n 扩容 volume remove-brick brick-1 ... brick-n \<start|stop|status|commit|force> 缩减 volume delete volname 删除卷
glusterfs volume 模式
默认模式
默认模式,既DHT, 也叫 分布卷: 将文件已hash算法随机分布到 一台服务器节点中存储
gluster volume create test-volume server1:/exp1 server2:/exp2
复制模式
复制模式,既AFR, 创建volume 时带 replica x 数量: 将文件复制到 replica x 个节点中。
gluster volume create test-volume replica 2 transport tcp server1:/exp1 server2:/exp2
条带模式
条带模式,既Striped, 创建volume 时带 stripe x 数量: 将文件切割成数据块,分别存储到 stripe x 个节点中 ( 类似raid 0 )。
gluster volume create test-volume stripe 2 transport tcp server1:/exp1 server2:/exp2
分布式条带模式
分布式条带模式(组合型),最少需要4台服务器才能创建。 创建volume 时 stripe 2 server = 4 个节点: 是DHT 与 Striped 的组合型。
gluster volume create test-volume stripe 2 transport tcp server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4
分布式复制模式
分布式复制模式(组合型), 最少需要4台服务器才能创建。 创建volume 时 replica 2 server = 4 个节点:是DHT 与 AFR 的组合型。
gluster volume create test-volume replica 2 transport tcp server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4
条带复制卷模式
条带复制卷模式(组合型), 最少需要4台服务器才能创建。 创建volume 时 stripe 2 replica 2 server = 4 个节点: 是 Striped 与 AFR 的组合型。
gluster volume create test-volume stripe 2 replica 2 transport tcp server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4
三种模式混合
三种模式混合, 至少需要8台 服务器才能创建。 stripe 2 replica 2 , 每4个节点 组成一个 组。
gluster volume create test-volume stripe 2 replica 2 transport tcp server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4 server5:/exp5 server6:/exp6 server7:/exp7 server8:/exp8
修复
#查看这个卷是否在线
gluster volume status test2
#启动完全修复
gluster volume heal test2 full gluster volume heal gv1 full
#查看需要修复的文件
gluster volume heal test2 info
#查看修复成功的文件
gluster volume heal test2 info healed
#查看修改失败的文件
gluster volume heal test2 info heal-failed
#查看脑裂的文件
gluster volume heal test2 info split-brain
-
Glusterfs
2018-12-28 10:12:271.5GlusterFS企业主要应用场景 二,部署安装 GlusterFS安装准备 使用本地yum安装createrepo cd到rpm包里面使用createrepo -v . 将各个节点映射本地文件 vim /etc/hosts cat /etc/yum.repos.d/CentOS-...一,分布式文件系统
GluterFS概述
1.5GlusterFS企业主要应用场景
Glushter优点:不会出现单点,容量可以扩展,读写性能非常好(具体数据64个节点吞吐量是32GB/S),小文件(小于1M的交给CDN)
缺点:读写速度是32GB/S,但是一般平常使用千兆网卡(1000Mb/8=125MB/S),这样网卡无法承受,但是我们可以将网卡进行bond0绑定,但是无法解决带宽问题
NFS缺点:处理小文件性能不佳,单点问题,磁盘插槽满了磁盘不能扩容
二,部署安装
GlusterFS安装准备
使用本地yum安装createrepo
cd到rpm包里面使用createrepo -v .
将各个节点映射本地文件
vim /etc/hosts
cat /etc/yum.repos.d/CentOS-Media.repo
制作本地yum源yum -y clean all
yum makecacheyum -y install glusterfs-server glusterfs-cli glusterfs-geo-replication
加入出现一下情况(版本冲突)
测试Glusterfs服务的状态和启停
确保所有的虚拟机的glusterd服务都处于开启状态,并做如下操作
gluster peer probe glusterfs02(主机名)
gluster peer probe glusterfs03(主机名)
以下相同····结果如下所示
我们看它的状态
从存储池中删除节点
[root@node1 ~]# gluster peer detach glusterfs02
peer detach: success
[root@node1 ~]# gluster peer probe glusterfs02
peer probe: success.
可以通过本地光盘源安装xfs支持包(Centos7不需要安装)
yum -y install xfsprogs
xfs是将数据盘的格式弄成xfs的格式,目前式ext4的格式
格式化硬盘mkfs.ext4 /dev/sdb
基本卷特点:
分布式卷(哈希卷):相当于raid0的读写速度
复制卷:相当于raid1
条带式卷:针对大文件才会用复合卷特点
分布式复合卷:相当于raid1+raid0
分布式条带卷:针对大文件才会用(例如视频类公司),会将整个文件分成两份平均分给两个节点
复制条带卷:------------
分布式复制条带卷:最安全的,结合分布式复合卷和分布式条带卷特点以下是分布式卷
volume的两种挂载方式
1.以glusterfs的方式挂载
挂载卷到目录(在glusterfs01上操作)前提条件式本机要安装glusterfs
我们在glusterfs01和glusterfs02上查看/gluster/brick1/目录:
首先gluster01上的/gluster/brick1
gluster02上的/gluster/brick1
2.以NFS的方式进行挂载
挂载之前我们如何打开glusterfs的NFS挂载方式
在主机WebClient上查看挂载情况df -hT
以下是分布式复制卷
创建分布式条带卷
特点:将挂载之后存储的内容平均分配给两个节点
四,存储卷中brick块设备的扩容
1.分布式复制卷的扩容
[root@WebClient ~]# mount -o nolock -t nfs 192.168.40.148:/gs2 /mnt [root@WebClient ~]# df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root ext4 18G 987M 16G 6% / tmpfs tmpfs 491M 0 491M 0% /dev/shm /dev/sda1 ext4 485M 33M 427M 8% /boot /dev/sdb ext4 9.9G 151M 9.2G 2% /gluster/brick1 /dev/sdc ext4 9.9G 151M 9.2G 2% /gluster/brick2 192.168.40.148:/gs2 nfs 20G 301M 19G 2% /mnt
我们查看gluster03和gluster04服务器的/gluster/brick1和/gluster/brick2文件内容
再次在WebClient 服务器/mnt创建文件
[root@WebClient ~]# touch /mnt/{11..20} [root@WebClient ~]# ls /mnt/ 1 10 11 12 13 14 15 16 17 18 19 2 20 3 4 5 6 7 8 9 lost+found
再查看gluster03和gluster04服务器的/gluster/brick1和/gluster/brick2文件内容
我们需要对磁盘平衡操作
队gs2做磁盘平衡
[root@glusterfs04 ~]# gluster volume rebalance gs2 start volume rebalance: gs2: success: Rebalance on gs2 has been started successfully. Use rebalance status command to check status of the rebalance process. ID: e9efa11e-6c52-4fa2-9530-49a3a99f4d49
注意:平衡以后需要重新挂载
之后的结果
[root@glusterfs04 ~]# gluster volume heal gs2 full Launching heal operation to perform full self heal on volume gs2 has been successful Use heal info commands to check status
常见问题
问题1
[root@localhost ~]# gluster peer status
Connection failed. Please check if gluster daemon is operational.原因:未开启glusterd服务
解决方法:开启glusterd服务
/etc/init.d/glusterd start
问题2
[root@localhost ~]# gluster peer probe 192.168.230.130
peer probe: failed: Probe returned with unknown errno 107
原因:日志中打印[2014-05-15 15:55:25.929461] I [glusterd-handler.c:2836:glusterd_probe_begin] 0-glusterd:Unable to find peerinfo for host: 192.168.230.130 (24007)
防火墙没开启24007端口
解决方法:开启24007端口或者关掉防火墙
/sbin/iptables -I INPUT -p tcp --dport 24007 -j ACCEPT # 开启24007端口
/etc/init.d/iptables stop # 关掉防火墙
注:
也可以使用主机名来代替IP,修改/etc/hosts文件实现
gluster peer probe server-130
问题3
volume create volume1 192.168.230.135:/tmp/brick1
volume create: volume2: failed不能只使用一个server上的brick创建volume,需要至少两个brick,或者在client主机(这里为192.168.230.134)上使用一个brick创建volume。
[cpp] view plaincopy在CODE上查看代码片派生到我的代码片gluster> volume create volume1 192.168.230.134:/tmp/brick1 force volume create: volume1: success: please start the volume to access data gluster> volume info Volume Name: volume1 Type: Distribute Volume ID: b01a2c29-09a6-41fd-a94e-ea834173a6a3 Status: Created Number of Bricks: 1 Transport-type: tcp Bricks: Brick1: 192.168.230.134:/tmp/brick1 gluster> gluster> volume create volume2 192.168.230.134:/tmp/brick2 192.168.230.135:/tmp/brick2 force volume create: volume2: success: please start the volume to access data gluster> volume info Volume Name: volume1 Type: Distribute Volume ID: b01a2c29-09a6-41fd-a94e-ea834173a6a3 Status: Created Number of Bricks: 1 Transport-type: tcp Bricks: Brick1: 192.168.230.134:/tmp/brick1 Volume Name: volume2 Type: Distribute Volume ID: 4af2e260-70ce-49f5-9663-9c831c5cf831 Status: Created Number of Bricks: 2 Transport-type: tcp Bricks: Brick1: 192.168.230.134:/tmp/brick2 Brick2: 192.168.230.135:/tmp/brick2
问题4
创建一个volume后删除,再使用同名的brick创建volume失败。
gluster> volume create test 192.168.230.134:/tmp/brick1 force volume create: test: success: please start the volume to access data gluster> volume info Volume Name: test Type: Distribute Volume ID: c29f75d2-c9f5-4d6f-90c5-c562139ab9cd Status: Created Number of Bricks: 1 Transport-type: tcp Bricks: Brick1: 192.168.230.134:/tmp/brick1 gluster> volume delete test force Usage: volume delete <VOLNAME> gluster> volume delete test Deleting volume will erase all information about the volume. Do you want to continue? (y/n) y volume delete: test: success gluster> volume create test 192.168.230.134:/tmp/brick1 force volume create: test: failed: /tmp/brick1 or a prefix of it is already part of a volume
因为volume delete时并未删掉create时创建的目录,需要手动删除后再使用。
-
glusterfs3.7.9
2018-01-03 15:56:21glusterfs分布式文件系统3.7.9====稳定版====全家桶安装包 -
GlusterFS分布式文件系统群集——GlusterFS概述,GlusterFS工作原理,GlusterFS卷类型,GlusterFS安装部署...
2020-11-03 10:32:40GlusterFS分布式文件系统群集一、GlusterFS概述1.GlusterFS简介2.GlusterFS特点扩展性和高性能高可用性全局统一命名空间弹性卷管理基于标准协议3.GlusterFS术语4.模块化堆栈式架构二、GlusterFS工作原理1.GlusterFS ... -
GlusterFS部署
2020-11-25 15:12:07一.GlusterFS概述 1.1简介 Glusterfs是一个开源的分布式文件系统,是Scale存储的核心,能够处理千数量级的客户端.在传统的解决 方案中Glusterfs能够灵活的结合物理的,虚拟的和云资源去体现高可用和企业级的性能存储. ...
-
ESP8266+SH1106 OLED屏实现天气预报+温度显示+NTP时间同步5屏带中文显示V7.7版
-
从“百箱大战”到“屏幕为王”,2021年智能音箱将有怎样的惊喜?
-
Git Bash上传文件的命令
-
测控电路煤矿温度测温系统.zip
-
单片机完全学习课程全五季套餐
-
移动应用 SDK for Android 开发指南
-
阿里云云计算ACP考试必备教程
-
全国行政区划数据,详细至五级
-
电商设计专业思维
-
微服务系列第七十一季-Introducing Spring Boot
-
西安博盛景润实业集团
-
【数据分析-随到随学】数据分析基础及方法论
-
第3章 入门程序、常量、变量
-
MVS_STD_3.3.1_201207.exe
-
打通互联网个人流量变现全流程
-
Leetcode213题 打家劫舍 II C++解法
-
【数据分析-随到随学】Hive详解
-
IEC 60598-1:2020《灯具-第1部分:一般要求和测试》标准第九版
-
thinkphp5.1博客后台实战视频
-
【工具】富文本导出Word文档_V1.0.0