- 博客(36)
- 资源 (1)
- 收藏
- 关注
原创 关于授权用户使用s3cmd进行cp与mv操作时引发的授权问题
原有一个对象存储桶testbucket,owner用户为a,通过bucket policy为用户b授权了读写权限,使用b用户ak\sk对a用户的一个对象进行进行cp时报错报错 ERROR:403 AccessDenied根据报错提示,以为是授权问题,尝试通过bucket policy授权b用户所有权限,依旧报权限错误。
2024-12-09 15:10:01
304
原创 ceph mon 数据重建
集群中所有mon数据异常,本身就是一个高危场景,日常运维过程中,应极力避免此类故障发生。即使社区已合入根据收集的所有osd的map来恢复mon数据的方法,也并不代表可以忽视mon集群安全问题。在进行上述修复操作时,需要小心谨慎,一旦update-mon-db失败、遍历缺少了部分osd的信息都会导致最终无法恢复mon,且重试无效。
2024-11-29 19:24:52
680
原创 踩坑:关于使用ceph pg repair引发的业务阻塞
在某次故障回溯中,发现引发集群故障,slow io,pg stuck的罪魁祸首竟是做了一次ceph pg repair $pgid。然而ceph pg repair作为使用频率极高的,用来修复pg不一致的常用手段,平时可能很少注意其使用规范和可能带来的影响,更不会想到会引起业务阻塞。
2024-10-25 01:45:00
841
原创 集群系统盘损坏后的服务恢复
近期遇到过cephadm集群中,系统盘因为寿命和不可控因素损坏,整机系统崩溃,需要重装系统并恢复osd服务。如果使用将原来osd删除重建方式,会导致大量数据迁移,且步骤繁琐。由于hdd,ssd,nvme(即原lvm信息与数据)完好,因此可以考虑直接恢复osd服务方式,避免数据恢复和重装。根据历史经验,这里给出两种不同版本的ceph集群系统重装的管理方式。ceph-disk方式和ceph-volume方式本质类似,ceph-volume对硬盘直接进行了lvm管理。
2024-10-24 19:34:27
647
1
原创 ceph osd slow io (一):对象存储index osd 的rocksdb性能下降
在ceph分布式集群中,经常会遇到各种非常影响业务体验的slow io。而slow io产生的可能性有很多,包括慢盘、网络、业务压力、ceph bug、缓存下刷等等。近期遇到的一种slow io是在ceph对象存储的index pool中,因为rocksdb问题导致的slow io。
2024-06-24 17:02:57
1108
原创 ceph radosgw 原有zone placement信息丢失数据恢复
近期遇到一个故障环境,因为某些原因,导致集群原有zone、zonegroup等信息丢失(osd,pool等状态均健康)。原有桶和数据无法访问,经过一些列fix后修复, 记录过程。
2024-06-06 23:34:15
594
原创 ceph集群巡检项
由于硬件、网络、bug等多方不稳定因素,ceph集群不可避免的会出现各种故障,为了提前感知集群运行状态,或长时间无法时时监控集群时,需要对集群做出定期巡检,较少集群故障率。这里列出常见的ceph集群巡检项。
2024-05-27 16:57:45
522
原创 ceph纠删码精简配置ec4+2:1与ec4+2的切换
近期遇到项目,由于灵活配置,前期只有部分机器,后续扩容,想用ec4+2的纠删码,但前期只有3台机器,需要做精简ec。
2024-05-13 17:14:30
1744
原创 Ceph PG
为了实现不同存储池之间的策略隔离,以及针对不同用途的存储池指定不同的容灾策略,ceph crush使用中间结构即Placement Group(后续均以PG简称)将应用数据对象进行映射后,写入OSD本地存储设备。PG也是我们日常运维当中,操作最多、关注最多、数据恢复和迁移的基本单位。
2024-04-30 23:54:30
909
原创 ceph mds 文件系统的挂载方式
近期测试发现,部分版本和服务器使用ceph mds内核态挂载时,性能较差,可能和存储和系统版本有关,用户态性能反而更稳定,这里补充两种挂载方式。
2024-04-22 02:57:20
653
原创 实例名不规范导致mds创建失败
在部署ceph集群时,规划主机名、关闭防火墙、配置免密、关闭selinux,配置hosts文件这几步同样重要,都是初期部署一次麻烦,方便后续运维的动作。遇到过很多前期稀里糊涂部署,后续运维和配置时候各种坑。近期遇到问题时有反馈mds创建失败。
2024-04-15 18:50:20
266
原创 自建ceph存储集群方案之从零到一
依据笔者多年实际toB、toC、toG累积近百P规模级别项目的实际经验,本文尽可能详细描述如何零开始完成自建自己的大规模存储集群
2024-04-07 21:07:29
623
原创 对象存储分段残留导致空间占用问题
在使用对象存储时,为了方便大文件上传和提高上传效率、并发等等,经常会使用s3 multipart upload,也就是分段上传。我们知道分段上传一般分三个不分,init、upload part和complete。根据gc池原理,当在upload part调用abort multipart接口,取消分段上传,已经上传的分段会进入gc,慢慢回收释放空间。由于index-pool的异步结构,以及在分段上传过程中发生异常中断,都可能会导致分段对象残留在rados pool层中,从而占用很大空间。
2024-04-01 16:20:37
405
原创 ceph dashboard配置rgw监控(解决报错No RGW credentials found)
本文主要介绍一下如何是dashboard监控对象存储集群数据。
2024-03-30 17:01:39
618
原创 crushmap与osd tree
本文主要介绍crushmap相关概念,以及调整crush的几种不同方法。crush为ceph的核心之一,理解其中逻辑对pg规划,容量均衡,故障处理等非常有帮助。
2024-03-20 18:43:28
572
原创 使用chrome内核浏览器访问对象存储服务出现Block insecure private network requests
使用chrome 浏览器访问对象存储服务时(预签名url、public-read资源)时,报错Block insecure private network requests,而在浏览器控制台中提示CORS ERROR。
2024-03-04 20:31:49
3519
原创 S3对象存储服务映射为本地磁盘使用(windows篇)
对象存储服务目前主流方式是通过aws sdk和restapi,以及预签名url等进行访问,也有使用s3cmd,s3browser等开源客户端进行访问。这些访问方式不仅支持数据的访问下载,同时也支持acl,policy,lifecycle,以及cors等配置管理。在部分应用和业务场景下,需要将S3服务作为类文件系统接口,映射到本地使用。目前linux下使用较多的是s3fs,该工具可直接将s3bucket挂载为本地文件系统(而本文主要演示如何windows下将s3bucket映射为本地磁盘。
2024-03-04 17:44:31
4932
原创 ceph osd pg upmap
在我们巡检ceph集群、处理故障或者进行迁移等操作时,pg往往是最需要关注项之一。一方面pg的健康状态会直接影响集群能否正常提供业务,另一方面,pg的分布会影响集群osd的容量与负载均衡。ceph根据crush rule,采用分布式哈希算法,也就是以计算代替查表的方式进行数据分布。由于伪随机性和众多因素(pgnum合理性,硬件规格统一性,后期结构调整,ceph),很多时候pg的分布往往达不到我们想要的效果,此时便需要我们手动进行pg的调整。
2023-08-28 14:36:07
806
原创 记一次数据恢复过程中,踩到osd由于快照数据不完整导致无法启动的bug
ceph osd反复启动,恢复过程中报错FAILED assert(clone_size.count(clone))
2022-05-31 20:02:58
429
原创 ceph从入门到放弃
概述 总结一个ceph从入门到放弃的过程,后续补充文章丰富各个模块,想学习的旁友也可以参考看看。初级了解目前进度与掌握程度当前已经完成的操作接触过但不知道作用很少接触ceph集群搭建功能组件的了解设计思想ceph的特性ceph组件深入核心CRUSH原理(crush自定义,obj,pg,osd,pool逻辑关系)存储类型之cephfs文件系统存储类型之RBD存储类型之RGW中级bluestore与filestorebluestore的意义与优越性slow
2020-12-07 10:43:26
388
原创 Ceph高版本对象存储服务修改参数导致无法写入
概述 对象存储服务中,有整体上传和分段上传,当应用对象大小小于分块大小时则用户上传的对象只对应一个RADOS对象,该对象以应用对象名命名,应用对象元数据也保存在该 rados对象的扩展属性中。 当应用对象大于分块上传时,如下图: 应用对象被分解成一个大小等于分块大小的首对象,多个大小等于条带大小的中间对象,和一个大小小于等于条带大小的尾对象。首对象以应用对象名称命名,在 RGW 中将该对象称为head_obj,该对象的数据部分保存了应用对象前 rgw_max_chunk_size 字节的数据,
2020-12-02 09:56:30
586
原创 ceph pg相关运维脚本工具(一)
概述 在生产环境中,经常需要对ceph集群进行一些调优,维护,设备替换等操作,为了简化和方便操作,陆续写过一些简单的小脚本工具,现整理出来。共同PG检测工具使用场景 在一个双副本环境中,已经有部分osd离线(down and in)的状态,此时集群部分pg处于单副本状态,此时有另外一些osd设备(硬盘原因,机器原因)需要替换或者离线,预估受影响的pg;或者想查询出某些osd共同承载了...
2019-11-05 22:12:28
847
原创 解决在ceph对象网关中使用s3fs报错“unable to access MOUNTPOINT /s3: Transport endpoint is not connected”
s3fs简介 简要来说,就是将s3的存储桶,文件,文件列表可以通过挂载到本地形成一个本地文件系统,方便浏览和查看目录结构,由于ceph rgw服务兼AWS S3,所以通过s3fs工具我们也能够将ceph radosgw集群的文件导出成本地文件系统。环境 原ceph环境搭建在ubuntu16.04,ceph版本为L版本。安装 可以直接通过apt-get install (如果没有...
2019-11-04 21:09:00
3910
6
原创 2019年11月计划flag
2019年11月flag 2019年已经接近尾声了,从开始学习ceph运维、研发也已经有几年了,很多遇到的坑,解决的方法,积累的经验都没有详细梳理记录。计划在年底前,每周整理提交2到3篇相关的技术经验文档。 另外,希望多和同行一起交流学习(个人邮箱/QQ:zhasunyou@outlook.com/1171760336)。ceph rgw相关bluestore相关运维工具相关测试...
2019-11-04 20:29:16
195
原创 ceph更换磁盘不改变引起大量数据迁移
一、需求新更换后的磁盘,需满足如下要求(根本是为了保持pg分布情况不变,避免其他无关osd上的pg重新计算分布):保持ID不变系统crushmap不变二、所用工具ceph-diskceph三、配置方法3.1 初始化配置文件[root@node0 ]$ cat /etc/ceph/init.conf[global] osd_journal_size = 30720 #...
2019-05-29 14:29:02
2253
原创 关于0.94版本ceph数据迁移的一次小测试
第一次调整操作:osd.23 使用率达到92%进行调整,将其reweight从1调整至0.9osdid迁移出去的pg迁移进来的pgosd.0-7.96 8.d2osd.1-0.13osd.28.267.3eosd.38.d2-osd.47.3e8.26osd.5-8.26aosd.6--osd.7...
2019-05-29 14:19:41
760
update kernel.zip
2020-04-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人