问题

flag sortbitwise 在ceph中是什么意思,在Jewel版本下可以看到多了这个flags

[root@lab8106 current]# ceph -s
cluster ffe7a8db-c671-4b45-a784-ddb41e633905
health HEALTH_OK
monmap e1: 1 mons at {lab8106=192.168.8.106:6789/0}
election epoch 4, quorum 0 lab8106
fsmap e4: 1/1/1 up {0=lab8106=up:active}
osdmap e132: 8 osds: 8 up, 8 in
flags sortbitwise
pgmap v206294: 201 pgs, 5 pools, 4684 MB data, 1214 objects
9669 MB used, 2216 GB / 2226 GB avail
201 active+clean

找到的相关资料

After upgrading, users should set the ‘sortbitwise’ flag to enable the new internal object sort order: ceph osd set sortbitwise

This flag is important for the new object enumeration API and for new backends like BlueStore.

From Ceph release notes

commit 383185bfbae74797cdb44f50b4bf651422800ff1


Author: Sage Weil sage@redhat.com


Date: Fri Aug 7 16:14:09 2015 -0400


mon/OSDMonitor: osd set/unset sortbitwise


Add monitor command to flip the switch on the OSD hobject_t sort


order.

From git

第一次在源码中出现:

commit 138f58493715e386929f152424b70df37843541b


Author: John Spray john.spray@redhat.com


Date: Mon Aug 17 14:40:46 2015 -0400


osdc/Objecter: new-style pgls


Signed-off-by: John Spray john.spray@redhat.com


Signed-off-by: Sage Weil sage@redhat.com

From git

Related github issue: https://github.com/ceph/ceph/pull/4919/commits

初步结论: sortbitwise 内部排序算法的一个变化.之所以暴露出来是因为要兼容一些pre-jewel版本.在新的版本中应该保持开启状态.

以上转载自博客:What ‘sortbitwise’ flag means in Ceph?

红帽的官方回答

  • 如果你使用dev版本Infernalis或仍在开发中的LTS版本的Ceph的Jewel版本,你会看到这个标志在ceph状态输出默认启用
  • 这个标志sortbitwise在Infernalis版本中引入
  • 这个标志是在这个版本提交的upstream commit 968261b11ac30622c0606d1e2ddf422009e7d330

下载ceph的源码,进入源码目录

[root@lab8106 all]# git show 968261b11ac30622c0606d1e2ddf422009e7d330
commit 968261b11ac30622c0606d1e2ddf422009e7d330
Author: Sage Weil <sage@redhat.com>
Date: Fri Aug 7 16:01:12 2015 -0400 osd/OSDMap: add a SORTBITWISE OSDMap flag This flag will indicate that hobject_t's shall hence-forth be
sorted in a bitwise fashion. Signed-off-by: Sage Weil <sage@redhat.com>

正如我们在上面给定的提交的描述中所说,该标志将表明hobject_t的将以 bitwise fashion方式排序。

现在意味着现在的对象将在OSDs中以按位方式排序,并且此标志默认在Infernalis和Jewel发布版本中启用。

总结

目前来看这个是底层的一个排序的算法的变动,对上层目前还不清楚是有什么可以可见的变化,总之,这个让它默认开启就行,不要去修改它就可以了

变更记录

Why Who When
创建 武汉-运维-磨渣 2017-01-12

'sortbitwise'是什么意思的更多相关文章

  1. Ceph–s ceph 集群状态

    [root@ceph-mon1 ~]# ceph -s cluster 03f3afd4-4cc6-4083-a34c-845446a59cd4 health HEALTH_OK monmap e1: ...

  2. Ceph Jewel 10.2.3 环境部署

    Ceph 测试环境部署 本文档内容概要 测试环境ceph集群部署规划 测试环境ceph集群部署过程及块设备使用流程 mon节点扩容及osd节点扩容方法 常见问题及解决方法 由于暂时没有用到对象存储,所 ...

  3. ceph集群安装

    所有 Ceph 部署都始于 Ceph 存储集群.一个 Ceph 集群可以包含数千个存储节点,最简系统至少需要一个监视器和两个 OSD 才能做到数据复制.Ceph 文件系统. Ceph 对象存储.和 C ...

  4. 使用虚拟机CentOS7部署CEPH集群

    第1章   CEPH部署 1.1  简单介绍 Ceph的部署模式下主要包含以下几个类型的节点 Ø CephOSDs: A Ceph OSD 进程主要用来存储数据,处理数据的replication,恢复 ...

  5. ceph -s集群报错too many PGs per OSD

    背景 集群状态报错,如下: # ceph -s cluster 1d64ac80-21be-430e-98a8-b4d8aeb18560 health HEALTH_WARN <-- 报错的地方 ...

  6. Centos7下使用Ceph-deploy快速部署Ceph分布式存储-操作记录

    之前已详细介绍了Ceph分布式存储基础知识,下面简单记录下Centos7使用Ceph-deploy快速部署Ceph环境: 1)基本环境 192.168.10.220 ceph-admin(ceph-d ...

  7. Ceph 集群整体迁移方案(转)

    场景介绍:在我们的IDC中,存在着运行了3-6年的Ceph集群的服务器,这些服务器性能和容量等都已经无法满足当前业务的需求,在购入一批高性能机器后,希望将旧机器上的集群整体迁移到新机器上,当然,是保证 ...

  8. Ceph常规操作及常见问题梳理

    Ceph集群管理 每次用命令启动.重启.停止Ceph守护进程(或整个集群)时,必须指定至少一个选项和一个命令,还可能要指定守护进程类型或具体例程. **命令格式如 {commandline} [opt ...

  9. 让我们了解 Ceph 分布式存储

    前言 最近在学习 kubernetes 过程中,想实现 pod 数据的持久化.在调研的过程中,发现 ceph 在最近几年发展火热,也有很多案例落地企业.在选型方面,个人更加倾向于社区火热的项目,Glu ...

随机推荐

  1. spring boot:用redis+redisson实现分布式锁(redisson3.11.1/spring boot 2.2)

    一,为什么要使用分布式锁? 如果在并发时锁定代码的执行,java中用synchronized锁保证了线程的原子性和可见性 但java锁只在单机上有效,如果是多台服务器上的并发访问,则需要使用分布式锁, ...

  2. git reset 与 git revert的区别?

    一,git reset的功能: 该命令修改HEAD的位置,即将HEAD指向的位置改变为之前存在的某个版本, 说明: 修改后,push到远程仓库时需要使用"git push -f"提 ...

  3. Android adb实现原理

    adb定义: adb(Android Debug Bridge) 安卓调试桥,包含adb client.adb server和adbd三部分. adb client:运行在PC上,即DDMS或者在Wi ...

  4. 从零开始针对 .NET 应用的 DevOps 运营实践 - Jenkins & SonarQube 安装配置

    一.Overview 继续 DevOps 实施的相关内容,在上一篇的博客中,完成了对于工具链中使用到的软件所需的运行环境的配置,在这一篇的博客中,将聚焦于我们使用到的两个主要的软件:Jenkins 与 ...

  5. asp.net web 定时执行任务 定时器 Global.asax

    web网站里面,需要每隔1分钟,执行一个任务,并且一直保持这个定时执行状态,可以用如下一个方法: 以下代码是 Global.asax.cs 的全部代码. using System; using Sys ...

  6. 【应用程序见解 Application Insights】使用Azure Monitor Application Insights Agent获取Azure VM中监控数据及IIS请求指标等信息

    问题情形 为了使用Application Insights也可以监控Azure VM中的相关性能数据,如CPU, Memory,IIS Reuqest等信息,可以在VM中开始一个一个扩展插件: Azu ...

  7. 全网通4G工业路由器模块和串口转网口/4G/有线/WiFi/LTE模块的实现原理

    随着现在信息化的高速发展,网络信息的需求量大增,在移动的4G流量的场合比如汽车上实现WiFi网络覆盖,户外wifi网络覆盖需求下,4G流量已经明显不够用,而网线到达的成本比较大,难以管控.在这市场痛点 ...

  8. linux 卸载 umount 提示device is busy

    思路:先杀掉挂载的目录(如:/usr1/)这个进程 fuser -v /usr1/ 再卸载

  9. localStorage.getItem得到的是[object Object] 的解决方案

    设计背景: 购物车要实现本地存储,避免刷新页面数据丢失 实现方案: 1,本地储存,进入页面获取本地数据,在进行数据操作 2,每操作一次数据就将数据传给后台进行保存,(操作数据多,用户量大对服务器造成压 ...

  10. 来自朋友最近阿里、腾讯、美团等P7岗位面试题

    来自年初和最近朋友的大厂面试题. 阿里巴巴 对象如何进行深拷贝,除了clone happen-before原则 jvm调优的实践 单例对象会被jvm的gc时回收吗 redis如果list较大,怎么优化 ...