《Ceph新长支持稳定版本Luminous(12.x.x)有哪些新功能》要点:
本文介绍了Ceph新长支持稳定版本Luminous(12.x.x)有哪些新功能,希望对您有用。如果有疑问,可以联系我们。
原文来自微信公众号:云技术实践
Web管理界面,直接管理裸盘,加密存储,Ceph新版本的功能激动人心,并且这个版本有很多代码是中国人贡献的.
本文翻译自Ceph官方博客,Ceph新长支持稳定版本Luminous(12.x.x),已经出RC版了,有那些激动人心的功能,让我们先睹为快.
翻译的过程是译者和作者思想沟通的过程,也是一个学习的过程,中间充满艰辛,也充满快乐,欢迎大家加入云技术社区翻译小组,一起交流、学习、提高,加入请联系群主(群主微信:xiaolikvm),也欢迎大家推荐好的英文技术资料到云技术社区,由社区会组织翻译,一起共同学习.
翻译 云技术社区首席金牌翻译 武楠
校对 云技术社区 肖力
通用功能:
目前,Ceph拥有一个操作简单,基于Web的内置仪表板,用于监控群集状态.
(Ceph Dashboard具体可以参阅Ceph官网中文文档:Ceph luminous 新功能之内置dashboard)
RADOS:
BlueStore:
- ceph-osd的新后端存储BlueStore已经稳定,是新创建的OSD的默认设置. BlueStore通过直接管理物理HDD或SSD而不使用诸如XFS的中间文件系统,来管理每个OSD存储的数据,这提供了更大的性能和功能.
- BlueStore支持Ceph存储的所有的完整的数据和元数据校验.
- BlueStore内嵌支持使用zlib,snappy或LZ4进行压缩.(Ceph还支持zstd进行RGW压缩,但由于性能原因,不为BlueStore推荐使用zstd).
- 擦除编码池现在完全支持覆盖,允许它们与RBD和CephFS一起使用.
ceph-mgr:
- ceph-mgr是一个新的后台进程,这是任何Ceph部署的必须部分.虽然当ceph-mgr停止时,IO可以继续,但是度量不会刷新,并且某些与度量相关的请求(例如,ceph df)可能会被阻止.我们建议您多部署ceph-mgr的几个实例来实现可靠性.
- ceph-mgr后台进程包括一个基于REST的管理API. API仍然处于实验阶段,有一定的限制,但未来将成为Ceph基于API管理的基础.
- 集群的总体可扩展性有所提高.我们已经成功测试了多达10,000个OSD的集群.
- 目前,每个OSD都具有与其相关联的设备类(例如,hdd或ssd),允许CRUSH规则将数据简单地映射到系统中的设备的子集.通常不需要手动编写CRUSH规则或手动编辑CRUSH.
- 可以优化CRUSH权重,以保持OSD之间数据的近乎完美的分布.
- 还有一个新的upmap异常处理机制,允许单个PG移动以实现完美的分发(这需要客户端).
- 每个OSD目前可以根据后端设备是HDD还是SSD来调整其默认配置.一般不需要手动调整.
- 原型mclock QoS排队算法现在是可用的;
- 现在有一种退出机制,可以防止OSD出现对当前不能处理IO对象或PG的请求过载情况.
- OSD更换过程简化,变得更加强大了.
- 您可以使用ceph功能来查询所有连接的后台程序和客户端的支持功能和版本.
- 通过ceph osdset-require-min-compat-client连接到集群,您可以配置最旧的Ceph客户端版本,但 Ceph将阻止您启用会破坏与这些客户端的兼容性的功能.
- 包括osd_recovery_sleep,osd_snap_trim_sleep和osd_scrub_sleep的几个睡眠设置,已经被重新实现,并且可以有效地工作.(这些在某些情况下用于解决问题,限制后台工作.)
RGW:
- 目前,RGW支持最终用户请求服务,通过ElasticSearch进行RGW元数据搜索,并且还支持自定义元数据字段.查询语言是一组RESTful API,用户可以通过其元数据来搜索对象.还添加了允许自定义元数据字段控制的新API.
- RGW支持动态存储桶索引分片.随着桶中的对象数量的增加,RGW将自动重新构建桶索引.不需要用户干预或桶大小容量规划.
- RGW引入了上传对象的服务器端加密,用于管理加密密钥的三个选项有:自动加密(仅推荐用于测试设置),客户提供的类似于Amazon SSE-C规范的密钥,以及通过使用外部密钥管理服务 OpenstackBarbician)类似于Amazon SSE-KMS规范.
- RGW具有初步的类似AWS的存储桶策略API支持.现在,策略是一种表达一系列新授权概念的方式.未来,这将成为附加身份验证功能的基础,例如STS和组策略等.
- RGW通过使用rados命名空间合并了几个元数据索引池.
RBD:
- RBD目前通过新的–data-pool选项来创建rbd,对擦除编码池具有完整的,稳定的支持.
- RBD镜像的rbd-mirror后台进程是可用的.我们建议您多部署几个rbd镜像来实现可靠性.
- 在创建集群期间,不再自动创建默认的“rbd”池.另外,当没有指定池时,rbd CLI使用的默认池的名称可以通过新的rbd default pool = <pool name>配置选项来覆盖.
- 通过新的rbd trash CLI命令初始支持延迟映像删除.镜像,即使是由克隆主动使用的镜像,也可以移动到垃圾桶,并在以后删除.
- 新的管理池级别的rbd mirror poolpromote和rbd mirror pool demote命令可以批量提升/降级池内所有的镜像文件.
- 镜像现在可以通过rbd mirroringreplay delay = <seconds>配置选项支持可配置的复制延迟.
- 当对象映射功能启用时,可改进丢弃处理功能.
- rbd CLI导入和复制命令现在可以检测稀疏并保留稀疏区域.
- 快照可以包含创建时间戳.
CephFS:
- 现在,多个活动的MDS后台程序是稳定的.活动的MDS服务器的数量可以基于活动的CephFS文件系统进行上下调整.
- CephFS目录分片现在是稳定的,默认情况下在新的文件系统上启用.要使其在现有的文件系统上启动,要使用“ceph fs set<fs_name> allow_dirfrags”.大型或非常繁忙的目录被分割并(可能)自动分布在多个MDS后台驻留程序中.
- 在不需要自动负载均衡的情况下,目录子树可以明确固定到特定的MDS后台程序.
Miscellaneous:
- Debian Stretch现在正在构建版本包.我们现在构建的发行版包括:
- CentOS 7 (x86_64and aarch64)
- Debian 8 Jessie(x86_64)
- Debian 9 Stretch(x86_64)
- Ubuntu 16.04 Xenial(x86_64 and aarch64)
- Ubuntu 14.04Trusty (x86_64)
- 注意 QA 仅限于 CentOS 和 Ubuntu (xenialand trusty).
CLI 变更:
- ceph -s 或者 ceph status 命令焕然一新.
- ceph {osd,mds,mon}版本总结了运行后台进程的版本.
- ceph {osd,mds,mon} count-metadata <property>类似地列出通过ceph {osd,mds,mon}元数据命令可见的任何其他守护进程元数据.
- ceph功能总结了连接的客户端和后台程序的功能和版本.
- ceph osd require-osd-release <release>替换旧的require_RELEASE_osds标识.
- ceph osd pg-upmap,ceph osdrm-pg-upmap,ceph osd pg-upmap-items,ceph osdrm-pg-upmap-items可以明确地管理upmap项目.
- ceph osdgetcrushmap在stderr上返回一个crush map版本号,如果版本匹配,ceph osdsetcrushmap [version]将只会注入更新的crush map.这允许crush map进行离线更新,然后重新注入到群集中,而不用担心变化(例如,通过新添加的osds或其他管理员的更改).
- ceph osd的创建已被ceph osd替换为新的.大多数用户应该使用像ceph-disk这样面向用户的工具来隐藏这个.
- ceph osd destroy将标记一个已毁坏的OSD,并删除其cephx和lockbox秘钥.但是,OSD ID和CRUSH映射条目将保持原样,允许使用最少数据重新平衡的替换设备重新使用该ID.
- ceph osd清除将从集群中删除OSD的所有痕迹,包括其cephx加密密钥,dm-crypt lockbox秘钥,OSD ID和crush map条目.
- ceph osd ls-tree<name>将在给定的CRUSH名称(如主机或机架名称)下输出OSD id列表.这对于为整个子树应用更改信息非常有用.例如,ceph osd down`cephosd ls-tree rack1`.
- ceph osd {add,rm} – {noout,noin,nodown,noup}允许noout,nodown,noin和noup标识应用于特定的OSD.
- ceph log last [n]将输出集群日志的最后n行.
- ceph mgr dump将转储MgrMap,包括当前活动的ceph-mgr后台程序和任何备用程序.
- ceph osd crushswap-bucket <src> <dest>将交换层次结构中两个CRUSH桶的内容,同时保留存储桶的id.这允许替换整个设备子树(例如,用新成像的BlueStore OSD替换整个主机的FileStore OSD),而不会中断跨越相邻设备的数据分布.
- ceph osdset-require-min-compat-client <release>可以配置支持群集的最旧的客户端版本.其他更改,如CRUSH可调参数,如果违反此设置,将会失败并显示错误.如果当前连接到集群的客户端版本比指定版本还老旧,则更改此设置也将失败.
- ceph config-keydump转储配置密钥条目及其内容.(已有的ceph config-keyls仅转储密钥名称,而不是值.)
- ceph osd set-{full,nearfull,backfillfull}-ratio将集群范围的比例设置为各种全阈值(例如:当集群拒绝IO时,当集群警告接近满时,当OSD延迟PG重新平衡到本身时).
- ceph osdreweightn将在单个命令中指定多个OSD的reweight值.这相当于一系列ceph osd rewight命令.
- ceph crush class {create,rm,ls}管理新的CRUSH设备类功能. ceph crushset-device-class <osd> <class>将为特定设备设置clas.
- ceph mon featurels将列出MonMap中记录的监视功能.ceph monfeature set将设置一个可选功能(这些功能尚未存在).
转载请注明本页网址:
http://www.vephp.com/jiaocheng/2377.html