导读:
1.从零部署一个ceph集群
2.ceph block device与cephfs快速入门
3.ceph 对象存储快速入门
4.Ceph存储集群&配置
5.centos7 通过cephadm部署ceph octopus版本
6.ceph集群状态检查常用命令

OSD in/out 、up/down

OSD状态应处于集群内(in)、集群外(out),并且处于运行(up)或关闭(down)。如果OSD处于up,他可能位于集群中(可以读写数据),也可能不在集群中。如果OSD原本在集群中但是最近被移除了集群,ceph会将整个PG移动到其他OSD中。如果OSD不在集群中,则CRUSH不会将PG分配给OSD。

PG状态

OSD存储PG,PG包含对象。集群的整体监控状态主要取决于PG。只有所有PG的状态都是active+clean状态时,集群才会保持为HEALTH_OK状态。如果ceph集群不是健康状态,很有可能PG不是active+clean。下面介绍下PG的多种状态

  • creating:创建pool时,它将创建指定的pg的数量。 当Ceph创建一个或多个PG时,它将fillback创建。 创建OSD之后,属于PG"Acting Set"的OSD将会对等(peer)。 对等完成后,展示PG状态应为active+clean,这意味着Ceph客户端可以开始写入PG。

  • peering:在peering状态下,OSD的PG都在acting集合中,存储PG的副本,并保持PG中的对象和元数据状态一致。在peering操作完成后,存储PG的所有OSD都彼此确认当前状态。

  • active:在peering操作完成后,Ceph将PG状态置为active。处在active状态,说明PG及其副本中的数据都处于能够提供I/O操作的状态。

  • clean:在clean状态下,主OSD和副本OSD已经成功彼此确认,所有PG都处在正确的位置上,没有发生偏移,而且所有对象都复制好正确的副本数。

  • degraded:当客户端将PG对象写入主OSD时,主OSD负责将副本写入副本OSD。在主OSD将对象写入存储后,PG将保持degraded状态,直到主OSD从副本OSD收到确认Ceph成功创建副本对象的确认为止。

    PG可以处于active+degraded的原因是:即使OSD尚未容纳所有对象,也可能处于active状态,如果OSD出现故障down掉了,ceph将会标记分配给OSD的每一个PG为degraded。当OSD重新恢复后,OSD会再次完成peer操作。即使PG处于degraded状态,客户端依然可以执行I/O操作。

    如果OSD down并且degraded状态持续存在,ceph可能会将down的OSD标记为不在集群内,并将数据映射到另一个OSD中。标记down的时间默认为600s,可以由mon osd down out interval控制。

    PG也可能degraded,因为ceph找不到认为应该在PG中的一个或多个对象,虽然无法读取或写入未找到的对象,但仍可以访问处于degraded PG中的其他对象。

  • recovering:ceph专为容错能力而设计。当OSD发生故障时,其存储的内容可能会与其他OSD上副本的数据不一致。当OSD恢复up状态,ceph会针对这些PG启动恢复操作,使得它们的数据与其他OSD上的PG副本保持一致。

  • back filling:当新的OSD加入集群后,CRUSH将把PG从集群中的OSD重新分配给新添加的OSD来平衡数据。这个过程称之为back filling。一旦PG的backfilling 操作完成,OSD可以参与到客户端的I/O操作中。

    在backfilling操作期间,可能会看到如下状态:

    • backfill_wait:backfill操作处于挂起状态,还未执行。
    • backfill_toofull:已请求backfill操作,由于存储容量不足无法完成。
  • remapped:每当OSD的 acting 集合有变化,就会触发数据迁移,数据从老的 acting 集合OSD向新的 acting 集合OSD转移。在迁移操作期间,依然由旧的 acting 集合主副本OSD为客户端提供服务。迁移完成后,使用新的 acting 集合主OSD为客户端提供服务。

  • stale:ceph通过heartbeat机制来确保主机与daemon处于运行状态,当ceph-osd daemon处于卡顿状态,从而无法积极反应统计结果。默认情况下osd daemon每隔0.5秒向ceph mon报告统计信息。如果某个PG的acting集合的主副本OSD没有成功向mon报告统计结果,或者其他OSD报告它们的主OSD状态变为down,mon会考虑将这些PG标记为stale状态。

可以通过如下命令查看PG状态。

[root@ceph-admin ~]# ceph pg stat
INFO:cephadm:Inferring fsid 23db6d22-b1ce-11ea-b263-1e00940000dc
INFO:cephadm:Using recent ceph image ceph/ceph:v15
105 pgs: 105 active+clean; 5.3 KiB data, 71 MiB used, 297 GiB / 300 GiB availx pgs: y active+clean; z bytes data, aa MB used, bb GB / cc GB avail
pg的总数(x),处于特定状态(例如,active+clean(y))和已存储的数据量(z)的特定状态下有多少个放置组。
已使用的存储容量(aa),剩余存储容量(bb)和该pg的总存储容量(cc)。

ceph osd pg 状态介绍相关推荐

  1. 【ceph】Ceph之PG状态详解--研读笔记

    原文:分布式存储Ceph之PG状态详解 - 简书 Ceph中一些PG相关的状态说明和基本概念说明.故障模拟_pansaky的博客-CSDN博客 1. PG介绍 继上次分享的<Ceph介绍及原理架 ...

  2. Ceph入门到精通-Ceph PG状态详细介绍(全)

    本文主要介绍PG的各个状态,以及ceph故障过程中PG状态的转变. Placement Group States(PG状态) creating Ceph is still creating the p ...

  3. Ceph 中的 PG 状态详解

    1. PG介绍 这次主要来分享Ceph中的PG各种状态详解,PG是最复杂和难于理解的概念之一,PG的复杂如下: 在架构层次上,PG位于RADOS层的中间. a. 往上负责接收和处理来自客户端的请求. ...

  4. ceph PG状态及部分故障(状态)模拟

    1. PG介绍 这次主要来分享Ceph中的PG各种状态详解,PG是最复杂和难于理解的概念之一,PG的复杂如下: - 在架构层次上,PG位于RADOS层的中间. a. 往上负责接收和处理来自客户端的请求 ...

  5. ceph存储 pg归置组处于stuck以及degraded状态解决方案

    https://blog.csdn.net/skdkjzz/article/details/42486793 由于对ceph的兴趣,我们经常自己搭建ceph集群,可能是单节点,也可能是多节点,但是经常 ...

  6. Ceph pg状态总结

    PG( placement group)是一个放置策略组,它是对象的集合,该集合里的所有对象都具有相同的放置策略:简单点说就是相同PG内的对象都会放到相同的硬盘上: PG是 ceph的核心概念, 服务 ...

  7. ceph学习之路----OSD DNE状态处理

    删除osd的时候,如果没有在crush中删除,osd可能会出现DNE的状态,具体解决方法: 1)过滤处于DNE状态的osd: ceph osd tree | grep DNE 2)osd DNE状态清 ...

  8. 【ceph】ceph OSD状态及常用命令

    OSD进程的启动停止:https://blog.csdn.net/bandaoyu/article/details/119894927 1. OSD概念 OSD:Object Storage Devi ...

  9. ceph osd 由于“No space left on device” 异常down,通过扩容文件系统或者显式运行osd进程解决

    文章目录 ceph版本: 环境配置: 异常问题: 问题解决: 总结 ceph版本: ceph 12.2.1 环境配置: tier_pool 16个分区大小800G 的osd容量 3副本 data_po ...

  10. 【ceph】ceph osd blacklist cep黑名单|MDS问题分析

    目录 blacklist 是什么 blacklist相关操作 Ceph MDS问题分析 CephFS client evict子命令使用 概述 命令格式 1. 查看所有client/session 2 ...

最新文章

  1. 大叔也说并行和串行`性能提升N倍(N由操作系统位数和cpu核数决定)
  2. Get Started with Apex Unit Tests
  3. 【s操作】巧用免费云笔记和免费网盘的完美配合
  4. 如何补救数据中心电缆
  5. H3C FTP配置示例
  6. css三栏布局技巧,CSS-三栏布局的常用6种方法
  7. threadgroup_Java ThreadGroup list()方法与示例
  8. 构建之法第三章学习小记
  9. 大数据高地,这样炼成!
  10. 大数据分析应用在哪些方面
  11. Springmvc源码分析之dispatcherServlet
  12. 使用VScode插件vs-picgo传图到阿里云(Ubuntu18)
  13. java 发送支持超链接的邮件
  14. Qt实现YOLO目标检测及其界面制作
  15. Faceted project metadata file /.settings/org.eclipse.wst.common.project.facet.core.xml could
  16. SCORM 1.2與SCORM 2004規範之初步比較
  17. javaweb_会话管理(sessionCookie)
  18. 服务器开关电源位置,服务器开关电源测试方法及服务器开关电源测试装置
  19. 利用新浪API实现数据的抓取\微博数据爬取\微博爬虫 1
  20. 电商平台业务及架构演变史

热门文章

  1. java实现对接建行支付及其回调
  2. java建行验签不成功_php无COM版建行支付返回验签记录
  3. 钢铁行业超低排放的前生今世
  4. c语言abs和fabs的区别,c语言中abs()和fabs()的区别点整理
  5. GitLab(三)创建用户
  6. 墨天轮“高可用架构”干货文档分享(含Oracle、MySQL、PG资料124篇)
  7. Word、Excel操作技巧大全
  8. 【腾讯TMQ】TBS主线众测实践之路
  9. PS小技巧 证件照蓝底/红底换白底(非抠图,抠图头发边缘处理效果差)
  10. 【SDC】StreamSets实战之路-11-基础篇- StreamSets-数据流开发- Edge数据流设计