glusterfs
文章平均质量分 61
runing_an_min
这个作者很懒,什么都没留下…
展开
-
glusterfs: brick进程重新启动后,不能正常工作
问题描述早上同事发现,一个节点的brick进程挂掉了,于是通过命令将brick进程启动起来,后来发现该节点的数据目录大小无变化,并且大小和其他节点不一样。通过status命令查看:看不出异常通过日志发现了一点儿线索:上面是 glustershd.log里面打印的,并且其他节点的glustershd.log日志也有类似的输出。解决办法这说明这个brick应该是有点儿问题的,我重启了一下,也没有解决问题。最后将 glusterd的进程重启了一下,解决了问题。不过我觉得这应该不是最好的办法原创 2021-12-14 17:04:38 · 752 阅读 · 0 评论 -
glusterfs:副本卷的数据大小不一样
问题描述volume的情况:两副本加一个仲裁盘。偶然发现副本A所在的brick和副本B所在的brick的大小不一样,查看就是使用 du -sh查看的brick的目录。问题分析我们这边发现的原因是这样的:比较大的brick的数据目录下的,.glusterfs目录下存在大量的没有目标文件的硬连接。正常情况下,.glusterfs目录下的文件是硬连接文件,会指向一个文件:有问题的文件,使用stat查看Links为1问题解决使用下面脚本可以检测是不是存在失去目标的硬连接#!/bin/bas原创 2021-12-03 14:47:19 · 1229 阅读 · 0 评论 -
glusterfs: 循环目录的问题 和 ls一个目录确出现另一个目录
问题描述集群经历了重启后,发现一个诡异的现象:(1) DownloaderHuabei 和 DownloaderHuabei_bak是同一级目录,执行 ls -l DownloaderHuabei , 出现 DownloaderHuabei_bak no such file or dir(2) 在挂载点删除DownloaderHuabei_bak目录,删除不掉,文件会自动恢复(3)DownloaderHuabei_bak目录下也有一个DownloaderHuabei_bak目录,并且这个目录不能操原创 2021-12-01 19:26:27 · 855 阅读 · 0 评论 -
glusterfs: 处理脑裂
概述脑裂的处理,可以分为手动和自动处理两种。对于数据和元数据的脑裂,两种方式都可以处理,但是对于目录脑裂最好需要我们手动接入。查看哪些文件处于脑裂# 查看集群中是否有脑裂的文件gluster volume heal <volume> info summary# 列出处于脑裂状态的文件或者目录gluster volume heal <volume> info split-brain结果即会有GFID、也会有文件名。 如果结果有目录出现(也可能是GFID的形原创 2021-11-30 19:17:13 · 1885 阅读 · 0 评论 -
glusterfs:浅谈脑裂
脑裂概述脑裂是多个副本的数据不一致的现象。按照数据的类型,脑裂又分为如下几种:数据脑裂,是指多个副本,同一个文件数据不一样,比如文件内容元数据脑裂,是指多个副本,同一个文件的元数据不一样,比如权限、属主或者属组等目录脑裂,分为两种情况。(1)是指多个副本,同一个目录下,同一个文件的GFID不一样(2)是指多个副本,同一个目录下,同一个名字,在某些副本中是文件,在另外一些副本中是目录脑裂造成的主要原因客户端网络异常。比如两副本R1、R2。 客户端C1暂时性的和R2失去连接,客户端C2暂时原创 2021-11-29 21:59:25 · 995 阅读 · 0 评论 -
glusterfs:Server-quorum和Client Quorum
overview这两个参数在容错场景中发挥着巨大的作用。用户借助这两个参数 既可以手动控制存在多少个活着的节点表示集群健康,也可以把这个控制权交给集群。Server-quorum由两个参数组成cluster.server-quorum-type: none | server如果设置为server表示启动了server-quornumcluster.server-quorum-ratio: 0-100这是个百分比,表示百分多少的节点存活时,集群才是健康的Server-quorum是no原创 2021-11-28 14:56:17 · 990 阅读 · 0 评论 -
glusterfs: 简述仲裁盘机制
为什么用这个机制呢人类的贪婪!也就是当我们既需要接近于三副本的容错能力,又想节省空间(两副本)。为啥我们不用两副本呢“两副本“,咋一看,觉得还行呀,高可用吗?莽夫之言!原创 2021-11-27 17:09:28 · 1817 阅读 · 0 评论 -
glusterfs:单独启动brick(不重启glusterd进程,不重启volume)
故障描述发现集群的volume的状态如下图:其中一个brick掉线了解决思路重启volume这个动作太大了,况且这个是生产环境,不能谁便重启volume重启掉线brick所属的 glusterd进程如果这个glusterd进程上只有一个brick,那么可以重启,但是如果有多个并且其他brick也很重要,那么就不能重启了(亲测,重启glusterd进程是好使的)只重启brick这是最复杂的方法,也是影响范围最小的方法重启brick的方法# brick进程的构成(模板)./glus原创 2021-10-21 15:39:30 · 1276 阅读 · 5 评论 -
glusterfs-glusterfind-trouble:FileNotFoundError: [Errno 2] No such file or directory: ‘gluster‘: ‘gl
问题描述运行glusterfind create test_session时报错如下:Traceback (most recent call last): File "./glusterfind", line 18, in <module> main() File "/app/glusterfs/libexec/glusterfs/glusterfind/main.py", line 865, in main globals()["mode_" + args.mode原创 2021-02-22 10:32:45 · 258 阅读 · 0 评论 -
glusterfs-trouble:0-rpc: Wrong Type(67) received from...
问题描述报错如下:0-rpc: Wrong Type(67) received from…原因首先这是我们生产环境使用的glusterfs,报错的原因是:被安全工具(绿盟的某种工具)扫描了。解决办法联系扫描方不要扫描了(O(∩_∩)O)升级版本,据测试升级到6.8版本就可以解决这个问题设置Iptables,将拒绝扫描工具IP的访问...原创 2021-01-28 21:20:29 · 262 阅读 · 5 评论 -
故障处理篇
(1)Failed to find brick directory, No such file or directory#这是因为目录不存在 mkdir -p /data/gluster(2) Failed to get extended attribute trusted.glusterfs.volume-idyum install attr -ygetfattr -d -m . -e hex /data/gluster #会看不到glusterfs.volume-id属性#解决办法一原创 2020-12-22 12:01:08 · 708 阅读 · 0 评论