![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ceph
文章平均质量分 66
墨尔本--晴
这个作者很懒,什么都没留下…
展开
-
ceph HEALTH_WARN no active mgr
我的ceph集群从jewel 版本升级到luminous版后,ceph-s查看集群状态时候出现:HEALTH_WARN no active mgr运行 ceph-deploy mgr create host-name来创建ceph 管理进程服务之后运行ceph-s 查看集群状态:health: HEALTH_WARN application not ena原创 2017-10-14 10:44:18 · 8378 阅读 · 0 评论 -
python调用Ceph RGW Admin API
Admin API 的相关介绍见官网:http://docs.ceph.com/docs/master/radosgw/admin/github上有一个使用Python写的按照官网API请求格式封装了HTTP请求的库,我们可以直接调用该Python库提供的接口,就可以完成Admin API的相关操作:https://github.com/UMIACS/rgwadminexample:API Exa...原创 2018-03-21 14:13:40 · 1955 阅读 · 0 评论 -
Ceph RGW 对象上传源码分析
RGW中OP请求处理函数的入口都是process_request,process_request会根据传入的RGWRados参数获取RGWOp,然后当请求合法性通过后去调用rgw_process_authenticated函数执行OP的具体动作。请求的处理 Collapse sourceint process_request(RGWRados* const store, ...原创 2018-03-14 15:17:27 · 5374 阅读 · 1 评论 -
Ceph RGW搭建
背景Ceph RGW简介Ceph RGW基于librados,是为应用提供RESTful类型的对象存储接口。RGW提供两种类型的接口: 1) S3:兼容Amazon S3RESTful API; 2) Swift:兼容OpenStack Swift API。 S3和Swift API共享同一个命名空间,所以可以使用两种API访问相同的数据。环境规划如上篇文章《Ceph部署(一)集群搭建》...转载 2018-03-16 15:13:35 · 838 阅读 · 0 评论 -
ceph-deploy osd 出错
通过ceph-deploy命令去自动化部署OSD,报错,具体错误如下:`ceph-deploy osd prepare $HOSTNAME:/osd`出现如下错误:usage: ceph-deploy osd [-h] {list,create} ...ceph-deploy osd: error: argument subcommand: invalid choice: 'prepare' (c...原创 2018-03-16 14:50:47 · 10054 阅读 · 0 评论 -
Ceph Qos 目前社区进展
目前Ceph QoS最新提交了两个有关QoS的PR,具体如下:1,dmClock Update这个是韩国SK团队在dmClock上的进展.PPT见链接,Code见链接.dmClock算法分为客户端和服务器端,服务器端一般驻留在OSD上,不会有太大变化,主要是客户端的设计,目前社区有三种初步方案:1,使用mclock作为一种资源调度策略,控制客户端I/O请求和Ceph内部I/O之间的优先次序2,使...原创 2018-03-02 10:36:39 · 3352 阅读 · 2 评论 -
Ceph RGW 设计与实现
1.总体架构 rgw 作为对象存储网关系统, 一方面扮演RADOS集群客户端角色, 为对象存储应用提供数据存储; 另一方面扮演HTTP 服务端角色, 接受并解析互联网传送的数据。 通过 HTTP 协议与 Swift 和 S3 应用通讯, 后端与 librados 结合, 通过socket 与 RADOS 集群通讯。 RGW 支持目前主流的WEB服务器, 包括 Civetwe...原创 2018-03-08 16:50:13 · 7863 阅读 · 2 评论 -
虚拟化I/O qos——mClock算法介绍
文章转载自:http://blog.csdn.net/u011364612/article/details/53608278这里介绍VMware在2010年在OSDI发表的一篇论文mClock: handling throughput variability for hypervisor IO scheduling论文中实现的算法。该算法在最近才在分布式存储ceph项目得到开发和应转载 2018-01-09 19:00:34 · 756 阅读 · 0 评论 -
Ceph 线程池与工作队列
Thread相关:Ceph中线程的在src/common/Thread.h中定义class ThreadPool { private: pthread_t thread_id; public: Thread(const Thread& other); const Thread& ope原创 2018-01-17 10:25:09 · 2345 阅读 · 0 评论 -
ceph bufferlist
文章转载于:http://bean-li.github.io/bufferlist-in-ceph/前言buffer list是ceph中的一个基础的数据结构,代码中大量的使用。buffer::raw介绍buffer list之前,我们必须先介绍buffer::raw和buffer::ptr。相对于buffer list,这两个数据结构相对比较容易理解。转载 2017-10-25 20:10:40 · 2030 阅读 · 0 评论 -
ceph主要数据结构解析2-Rados.h
(1)文件系统id结构:16个字符组成struct ceph_fsid { unsigned char fsid[16];};以及对应的比较函数:static inline int ceph_fsid_compare(const struct ceph_fsid *a, const struct ceph_fsid *b){ return memcm转载 2017-11-01 20:02:41 · 446 阅读 · 0 评论 -
Ceph Recovery分析
1.ceph recovery 概述2.相关变量及函数3.线程池与工作队列4. Ceph PGQueable5.Bufferlist及序列化6.Recovery 流程1.ceph recovery 概述当PG完成了Peering过程后,处于Active状态的PG就已经可以对外提供服务了。如果该PG的各个副本上有不一致的对象,就需要进行修复。Ceph的修复过程有两种:Recovery原创 2017-10-23 17:23:06 · 4154 阅读 · 0 评论 -
使用fio对Ceph测试
使用fio的RBD引擎压数据对Ceph集群进行测试时候,无论是yum还是apt,最新的fio版本都停滞在2.2,许多新的特性都不支持,所以需要手动编译fio。git clone git://git.kernel.dk/fio.git# configure前首先需要确定自己的path/C_INCLUDE_PATH等是否包含目标版本的rbd# 假如自己编译完的ceph在 ~/ceph 下export ...原创 2018-04-03 10:18:56 · 1689 阅读 · 0 评论