GlusterFS 3.5.3 实战

最近在学习glusterfs

我使用的是分布式复制策略。

两台服务器

g1:10.100.15.111

g2:10.100.15.112

client:10.0.6.149

G1\G2 没个主机上分别有一个10G 硬盘,用于存放在用户数据,分别是挂载/data下。

操作步骤如下,操作全部在G1服务器上、并且两天服务器gluster服务器全部启动,通讯正常:

1、先建立存储池

gluster peer probe 10.100.15.112

#这里注意下啊,文档上说可以用域名,用hosts不成功,不知道是不是必须对外直接解析。

2、查看状态

gluster peer status

会看到刚才加的主机,并且状态是连接的。

3、创建卷

gluster volume create test-volume replica 2 transport tcp 10.100.15.111:/data/test-volume 10.100.15.112:/data/test-volume

test-volume是卷名,可以随便叫。

replica是数据分布策略,2是指,1份数据,两机器个保存一份。

glusterfs 不建议直接用/data/ ,所以在里面又创建了test-volume 目录 。

这样一个集群就做完了。 下面说下,当这个复制集群满了,是如何扩容的。

是我测试的情况是在G1\G2 上可又各添加了一个10G硬盘,挂载在/data2

4、添加brick

gluster volume add-brick test-volume 10.100.15.111:/data2/test-volume 10.100.15.112:/data2/test-volume

这样添加过后,客户端看到挂载的磁盘由10G变成了20G,但这时候客户端写入文件的时候发生变化了。不再将所有的文件写在/data目录下了,而是通过策略写在/data2和/data两目录里,二个目录又互相复制同步。

说下这个glusterfs 分布调度策略

官方文档:http://gluster.org/community/documentation/index.php/Translators/cluster/unify#GlusterFS_Schedulers

有几种 什么 switch啊、random啊、rr啊、还有什么NUFA啊,ALU啊

我们主要就是主要的就说说ALU这种调度。

ALU 是一个非常高级的调度策略。

ALU有很多子的调度策略,什么磁盘空间,磁盘的读写,磁盘速率。根据这些子策略来调度,文件写在那个磁盘上。

为什么说ALU高级呢,就是它通过,这些子策略,不断使调度策略变化。

下面来看看官方文档给的一些选项例子

option scheduler alu

这个就是说,使用那个策略

option alu.limits.min-free-disk  5%

这个选项告诉glusterfs限制磁盘最小的可用空间,就像上面的例子,我们通常当可用空间快要满了,到一定程度就会扩容,但是扩容完以后从何出现空间大小不一致问题,后面的扩容的硬盘可能需要很长一段时间才能追赶上,或是使用rebalance功能自动平衡,这样就可能把先前磁盘写满,这个选项就是告诉它当磁盘空间使用95%的时候就不要往这个硬盘写数据了。

option alu.limits.max-open-files 10000

这个选择不太理解应用在什么场景中,翻译文档的意思就是当打开文件数大于10000的话,就不再创建文件。不太理解。可能用途也挺多 。

option alu.order disk-usage:read-usage:write-usage:open-files-usage:disk-speed-usage

这就是说ALU只用那些子策略,但是不知道是不是顺序优先级问题?

子策略选项

option alu.disk-usage.entry-threshold 2GB

option alu.disk-usage.exit-threshold  60MB

这就是说,当有硬盘容量大于2GB,就开始使用这调度策略,还是那上面的例子说:/data的容量大于/data2容量2G,那么开始将文件写入/data2,知道他们连个容量差距小于60MB ,退出这个子调度

option alu.open-files-usage.entry-threshold 1024

option alu.open-files-usage.exit-threshold 32

这个和上面的差不多就是打开文件数据量启动。

option alu.read-usage.entry-threshold 20%

option alu.read-usage.exit-threshold 4%

这个就是当两个硬盘间读取率相差大于20%使用这个策略。

option alu.write-usage.entry-threshold 20%

option alu.write-usage.exit-threshold 4%

这个就是写入

option alu.disk-speed-usage.entry-threshold

option alu.disk-speed-usage.exit-threshold

这个是磁盘速度,文档上不建议设置这个数值。

这些主要是让分布的更加平衡。

好吧,今儿线到这里,这东西还有很多坑 。

理解或是有说的不对的地方,欢迎指正。

也欢迎讨论。

时间: 2024-08-10 14:02:46

GlusterFS 3.5.3 实战的相关文章

openstack运维实战系列(九)之cinder与glusterfs结合

1. 概述     cinder作为openstack的快存储服务,为instance提供永久的volume服务,cinder作为一种可插拔式的服务,能够支持各种存储类型,包括专业的FC存储,如EMC,NetApp,HP,IBM,huawei等商场的专业存储服务器,存储厂商只要开发对应的驱动和cinder对接即可:此外,cinder还支持开源的分布式存储,如glusterfs,ceph,sheepdog,nfs等,通过开源的分布式存储方案,能够达到廉价的IP-SAN存储.本文以glusterfs

分布式文件系统--------GlusterFS最佳实战

1. 背景 GlusterFS 是一个开源的分布式文件系统,具有强大的横向扩展能力,通过扩展能够支持数PB存储容量和处理数千客户端.GlusterFS借助TCP/IP或InfiniBand RDMA(一种支持多并发链接的"转换线缆"技术)网络将物理分布的存储资源聚集在一起,使用单一全局命名空间来管理数据.GlusterFS基于可堆叠的用户空间设计,可为各种不同的数据负载提供优异的性能. GlusterFS支持运行在任何标准IP网络上标准应用程序的标准客户端 2. 优势 * 线性横向扩展

(转)GlusterFS 01 理论基础,企业实战,故障处理

https://jaminzhang.github.io/glusterfs/GlusterFS-01-Theory-Basis/--------GlusterFS 01 理论基础 https://jaminzhang.github.io/glusterfs/GlusterFS-02-Deploy-and-Config/------GlusterFS 02 部署配置 https://jaminzhang.github.io/glusterfs/GlusterFS-03-Build-Enterpr

kubernetes实战(九):k8s集群动态存储管理GlusterFS及容器化GlusterFS扩容

1.准备工作 所有节点安装GFS客户端 yum install glusterfs glusterfs-fuse -y 如果不是所有节点要部署GFS管理服务,就在需要部署的节点上打上标签 [[email protected] ~]# kubectl label node k8s-node01 storagenode=glusterfs node/k8s-node01 labeled [[email protected]-master01 ~]# kubectl label node k8s-no

GlusterFS安装与配置

操作系统: CentOS6.4GlusterFS: 3.4.2测试工具:atop, iperf, iozone, fio, postmark 配置规划 下载并安装 1.下载地址:http://bits.gluster.org/pub/gluster/glusterfs/3.4.2/x86_64/需要下载的rpm包2.RPM安装包glusterfs-3.4.2-1.el6.x86_64.rpmglusterfs-api-3.4.2-1.el6.x86_64.rpmglusterfs-cli-3.4

Spark入门实战系列--1.Spark及其生态圈简介

[注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 1.简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架.Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处,Spark以其先进的设计理念,迅速成为社区的热门项目,围绕着Spark推出了Spark SQL.Spark St

GlusterFS分布式文件系统原创文章合集

大量原创博文可见如下链接,话说原文作者刘爱贵会持续更新: http://blog.csdn.net/liuaigui/article/details/17331557 下面提供一个当前版本的链接: [1] GlusterFS集群文件系统研究 [2] 基于开源软件构建高性能集群NAS系统 [3] 关于Gluster稳定性的一个BUG [4] 创建Glusterfs分布式RAID10卷 [5] 设计新Xlator扩展GlusterFS [6] Glusterfs全局统一命名空间 [7] Gluste

kubernetes简单介绍和实战

kubernetes简单介绍和实战 在本文中,我们从技术细节上对kubernetes进行简单运用介绍,利用一些yaml脚本层面上实例告诉大家kubernetes基本概念.Kubernetes以及它呈现出的编程范式值得你去使用和整合到自己的技术栈中. kubernetes简单介绍 kubernetes起源 Kubernetes最初认为是谷歌开源的容器集群管理系统,是Google多年大规模容器管理技术Borg或Omega的开源版本.准确来说的话,kubernetes更是一个全新的平台,一个全新的平台

海量数据MySQL项目实战

你好,我是你的数据库老师周彦伟,欢迎来到第 10 课时“MySQL 亿级数据库项目实战”,这是本系列课程的最后一课时,本课时的主要内容包含 MySQL 典型数据库架构介绍.MySQL 主流数据库架构对比等理论性知识,然后从“订单.用户”两个项目实战,抛砖引玉,介绍亿级互联网业务数据库项目如何设计. MySQL 典型数据库架构 数据库架构 我们想要更好地规划和设计 MySQL 数据库架构,首先需要了解典型的数据库架构,它通常由三部分组成: 数据库[原生]架构 高可用组件 中间件 然而,数据库架构又