Planet Ceph

Aggregated news from external sources

  • March 7, 2018
    openATTIC 3.6.2 has been released

    We’re happy to announce version 3.6.2 of openATTIC! Version 3.6.2 is the second bugfix release of the 3.6 stable branch, containing fixes for multiple issues that were reported by users. One new feature that we want to point out is the internationalization. openATTIC has been translated to Chinese and German to be present on other …Read more

  • March 6, 2018
    CephFS Admin Tips – Create a new user and share

    Hi my name is Stephen McElroy, and in this guide I will be showing how to create a new user, set permissions, set quotas, mount the share, and make them persistent on the client. Creating the user On the Ceph admin nodeLets create a basic user and give it capabilities to read the / and …Read more

  • March 1, 2018
    The Ceph Dashboard v2 pull request is ready for review!

    About a month ago, we shared the news that we started working on a replacement for the Ceph dashboard, to set the stage for creating a full-fledged, built-in web-base management tool for Ceph. We’re happy to announce that we have now finalized the preparations for the initial pull request, which marks our first milestone in …Read more

  • February 19, 2018
    How to do a Ceph cluster maintenance/shutdown

    Last week someone asked on the ceph-users ML how to shutdown a Ceph cluster and I would like to summarize the steps that are neccessary to do that. Stop the clients from using your Cluster (this step is only neccessary if you want to shutdown your whole cluster) Important – Make sure that your cluster …Read more

  • February 10, 2018
    REDHAT 7.5beta 新推出的VDO功能

    前言 关于VDO VOD的技术来源于收购的Permabit公司,一个专门从事重删技术的公司,所以技术可靠性是没有问题的 VDO是一个内核模块,目的是通过重删减少磁盘的空间占用,以及减少复制带宽,VDO是基于块设备层之上的,也就是在原设备基础上映射出mapper虚拟设备,然后直接使用即可,功能的实现主要基于以下技术: 零区块的排除: 在初始化阶段,整块为0的会被元数据记录下来,这个可以用水杯里面的水和沙子混合的例子来解释,使用滤纸(零块排除),把沙子(非零空间)给过滤出来,然后就是下一个阶段的处理 重复数据删除: 在第二阶段,输入的数据会判断是不是冗余数据(在写入之前就判断),这个部分的数据通过UDS内核模块来判断(U niversal D eduplication S ervice),被判断为重复数据的部分不会被写入,然后对元数据进行更新,直接指向原始已经存储的数据块即可 压缩: 一旦消零和重删完成,LZ4压缩会对每个单独的数据块进行处理,然后压缩好的数据块会以固定大小4KB的数据块存储在介质上,由于一个物理块可以包含很多的压缩块,这个也可以加速读取的性能 上面的技术看起来很容易理解,但是实际做成产品还是相当大的难度的,技术设想和实际输出还是有很大距离,不然redhat也不会通过收购来获取技术,而不是自己去重新写一套了 如何获取VDO 主要有两种方式,一种是通过申请测试版的方式申请redhat 7.5的ISO,这个可以进行一个月的测试 另外一种方式是申请测试版本,然后通过源码在你正在使用的ISO上面进行相关的测试,从适配方面在自己的ISO上面进行测试能够更好的对比,由于基于redhat的源码做分发会涉及法律问题,这里就不做过多讲解,也不提供rpm包,自行申请测试即可 实践过程 安装VDO 安装的操作系统为CentOS Linux release 7.4.1708 [root@lab101 ~]# lsb_release -aLSB Version: :core-4.1-amd64:core-4.1-noarchDistributor ID: CentOSDescription: CentOS Linux release 7.4.1708 (Core) Release: 7.4.1708Codename: Core 内核版本如下 [root@lab101 ~]# uname -aLinux lab101 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 …Read more

  • February 2, 2018
    Ceph Manager Dashboard v2

    The original Ceph Manager Dashboard that was introduced in Ceph “Luminous” started out as a simple, read-only view into various run-time information and performance data of a Ceph cluster, without authentication or any administrative functionality. However, as it turns out, there is a growing demand for adding more web-based management capabilities, to make it easier …Read more

  • January 29, 2018
    Building Ceph master with C++17 support on openSUSE Leap 42.3

    Ceph now requires C++17 support, which is available with modern compilers such as gcc-7. openSUSE Leap 42.3, my current OS of choice, includes gcc-7. However, it’s not used by default. Using gcc-7 for the Ceph build is a simple matter of: > sudo zypper in gcc7-c++> CC=gcc-7 CXX=/usr/bin/g++-7 ./do_cmake.sh …> cd build && make -j …Read more

  • January 29, 2018
    Placement Groups with Ceph Luminous stay in activating state

    Placement Groups stuck in activating When migrating from FileStore with BlueStore with Ceph Luminuous you might run into the problem that certain Placement Groups stay stuck in the activating state. 44 activating+undersized+degraded+remapped PG Overdose This is a side-effect of the new PG overdose protection in Ceph Luminous. Too many PGs on your OSDs can cause …Read more

  • January 16, 2018
    定位一个网络问题引起的ceph异常

    前言 有一个ceph环境出现了异常,状态就是恢复异常的慢,但是所有数据又都在走,只是非常的慢,本篇将记录探测出问题的过程,以便以后处理类似的问题有个思路 处理过程 问题的现象是恢复的很慢,但是除此以外并没有其它的异常,通过iostat监控磁盘,也没有出现异常的100%的情况,暂时排除了是osd底层慢的问题 检测整体写入的速度 通过rados bench写入 rados -p rbd bench 5 write 刚开始写入的时候没问题,但是写入了以后不久就会出现一只是0的情况,可以判断在写入某些对象的时候出现了异常 本地生成一些文件 seq 0 30|xargs -i dd if=/dev/zero of=benchmarkzp{} bs=4M count=2 通过rados put 命令把对象put进去 for a in `ls ./`;do time rados -p rbd put $a $a;echo $a;ceph osd map rbd $a;done 得到的结果里面会有部分是好的,部分是非常长的时间,对结果进行过滤,分为bad 和good 开始怀疑会不会是固定的盘符出了问题,首先把磁盘组合分出来,完全没问题的磁盘全部排除,结果最后都排除完了,所以磁盘本省是没问题的 根据pg的osd组合进行主机分类 1 2 4 ok3 1 2 bad2 …Read more

  • January 11, 2018
    How to create a vagrant VM from a libvirt vm/image

    It cost’s me some nerves and time to figure out how to create a vagrant image from a libvirt kvm vm and how to modify an existing one. Thanks to pl_rock from stackexchange for the awesome start. First of all you have to install a new vm as usual. I’ve installed a new vm with …Read more

  • January 6, 2018
    CTDB使用rados object作为lock file

    前言 服务器的服务做HA有很多种方式,其中有一种就是是用CTDB,之前这个是独立的软件来做HA的,现在已经跟着SAMBA主线里面了,也就是跟着samba发行包一起发行 之前CTDB的模式是需要有一个共享文件系统,并且在这个共享文件系统里面所有的节点都去访问同一个文件,会有一个Master会获得这个文件的锁 在cephfs的使用场景中可以用cephfs的目录作为这个锁文件的路径,这个有个问题就是一旦有一个节点down掉的时候,可能客户端也会卡住目录,这个目录访问会被卡住,文件锁在其他机器无法获取到,需要等到这个锁超时以后,其它节点才能获得到锁,这个切换的周期就会长一点了 CTDB在最近的版本当中加入了cluster mutex helper using Ceph RADOS的支持,本篇将介绍这个方式锁文件配置方式 实践过程 安装CTDB [root@customos ~]# yum install samba ctdb 检查默认包里面是否有rados的支持 [root@customos ~]# rpm -qpl ctdb-4.6.2-12.el7_4.x86_64.rpm…usr/libexec/ctdb/usr/libexec/ctdb/ctdb_event/usr/libexec/ctdb/ctdb_eventd/usr/libexec/ctdb/ctdb_killtcp/usr/libexec/ctdb/ctdb_lock_helper/usr/libexec/ctdb/ctdb_lvs/usr/libexec/ctdb/ctdb_mutex_fcntl_helper/usr/libexec/ctdb/ctdb_natgw/usr/libexec/ctdb/ctdb_recovery_helper/usr/libexec/ctdb/ctdb_takeover_helper/usr/libexec/ctdb/smnotify… 这个可以看到默认并没有包含这个rados的支持,这个很多通用软件都会这么处理,因为支持第三方插件的时候需要开发库,而开发库又有版本的区别,所以默认并不支持,需要支持就自己编译即可,例如fio支持librbd的接口就是这么处理的,等到插件也通用起来的时候,可能就会默认支持了 很多软件的编译可以采取源码的编译方式,如果不是有很强的代码合入和patch跟踪能力,直接用发行包的方式是最稳妥的,所以为了不破坏这个稳定性,本篇采用的是基于发行版本,增加模块的方式,这样不会破坏核心组件的稳定性,并且后续升级也是比较简单的,这个也是个人推荐的方式 查询当前使用的samba版本 [root@customos ~]# rpm -qa|grep sambasamba-4.6.2-12.el7_4.x86_64 打包新的CTDB 可以查询得到这个的源码包为samba-4.6.2-12.el7_4.src.rpm,进一步搜索可以查询的到这个src源码rpm包 http://vault.centos.org/7.4.1708/updates/Source/SPackages/samba-4.6.2-12.el7_4.src.rpm 下载这个rpm包 [root@customos ~]# wget http://vault.centos.org/7.4.1708/updates/Source/SPackages/samba-4.6.2-12.el7_4.src.rpm 如果下载比较慢的话就用迅雷下载,会快很多,国内的源里面把源码包的rpm都删除掉了,上面的是官网会有最全的包 解压这个rpm包 [root@customos ~]# rpm2cpio samba-4.6.2-12.el7_4.src.rpm |cpio -div 检查包的内容 [root@customos myctdb]# lsCVE-2017-12150.patch samba-v4-6-fix-cross-realm-refferals.patchCVE-2017-12151.patch samba-v4-6-fix-kerberos-debug-message.patchCVE-2017-12163.patch samba-v4-6-fix_net_ads_changetrustpw.patchCVE-2017-14746.patch …Read more

  • January 5, 2018
    Kernel RBD的QOS配置方案

    前言 关于qos的讨论有很多,ceph内部也正在实现着一整套的基于dmclock的qos的方案,这个不是本篇的内容,之前在社区的邮件列表看过有研发在聊qos的相关的实现的,当时一个研发就提出了在使用kernel rbd的时候,可以直接使用linux的操作系统qos来实现,也就是cgroup来控制读取写入 cgroup之前也有接触过,主要测试了限制cpu和内存相关的,没有做io相关的测试,这个当然可以通过ceph内部来实现qos,但是有现成的解决方案的时候,可以减少很多开发周期,以及测试的成本 本篇将介绍的是kernel rbd的qos方案 时间过长 首先介绍下几个测试qos相关的命令,用来比较设置前后的效果验证写入IOPS命令 fio -filename=/dev/rbd0 -direct=1 -iodepth 1 -thread -rw=write -ioengine=libaio -bs=4K -size=1G -numjobs=1 -runtime=60 -group_reporting -name=mytest 验证写入带宽的命令 fio -filename=/dev/rbd0 -direct=1 -iodepth 1 -thread -rw=write -ioengine=libaio -bs=4M -size=1G -numjobs=1 -runtime=60 -group_reporting -name=mytest 验证读取IOPS命令 fio -filename=/dev/rbd0 -direct=1 -iodepth 1 -thread -rw=read -ioengine=libaio -bs=4K -size=1G -numjobs=1 -runtime=60 -group_reporting -name=mytest 验证读取带宽命令 fio -filename=/dev/rbd0 …Read more

Careers