• 浮世边缘的净土——山神家园文章中国国家地理网 2019-08-12
  • 蔬菜-热门标签-华商生活 2019-08-12
  • 五台山公安分局开展山西公安便民平台上线宣传活动--黄河新闻网 2019-08-09
  • 地理 —频道 春城壹网 七彩云南 一网天下 2019-08-09
  • ECCO2016春夏流行趋势一览 让你的春天炫出彩虹 2019-07-31
  • 互联网基金违规销售乱象:巧立名目送红包、送份额 2019-07-30
  • 回复@艾鸣1:你还知道丢人? 2019-07-30
  • 您访问的页面找不回来了 2019-07-29
  • 3岁男童爬窗走失 民警帮忙找家人 2019-07-27
  • 中国首位“地球卫士终身成就奖”得主诞生! 2019-07-22
  • 国务院印发《关于积极有效利用外资推动经济高质量发展若干措施的通知》 2019-07-19
  • 京哈高速惨烈车祸已致3人死亡 长假返程连环碰撞 2019-07-19
  • 福建莆田:“千场宣讲”让“好声音”听得到“好政策”看得懂 2019-07-16
  • 第五届中国基金业英华奖颁奖典礼暨高峰论坛在深举行 2019-07-16
  • 回复@大雨582:所有的人都成标准件了? 2019-07-13
  • 保定市专业团队各种类型网站设计,网站建设,网络宣传,价格公道,全国市场,各个行业均可,十年以上专业团队 ...  半小时前 上传下载附件 (61.91 KB)  保定市专业团队各种类型网站设计,网站建设,网络宣传,价格公道,全国市场,各个行业均可,十年以上专业团队 ...  保定市专业团队各种类型网站设计,网站建设,网络宣传,价格公道,全国市场,各个行业均可。 十年以上专业团队,擅长医疗,公司,商城等等行业! 商家均可联系,其他宣传合作非业务的勿扰, 电话:13932228338 QQ:63293588 卢经理
    保定社区妈咪宝贝,美容美体都可以让你做美丽女人彩票店转让 www.kfnh.net11健康网·中国第一健康门户网站保定最好的网站公司专业承接各类网站制作 联系QQ:252097950保定市专业团队各种类型网站设计,网站建设,网络宣传,价格公道,全国市场,各个行业均可,十年以上专业团队 ...  20 分钟前 上传下载附件 (61.91 KB)  保定市专业团队各种类型网站设计,网站建设,网络宣传,价格公道,全国市场,各个行业均可,十年以上专业团队 ...  保定市专业团队各种类型网站设计,网站建设,网络宣传,价格公道,全国市场,各个行业均可。 十年以上专业团队,擅长医疗,公司,商城等等行业! 商家均可联系,其他宣传合作非业务的勿扰, 电话:13932228338 QQ:63293588 卢经理
    查看: 55|回复: 0
    打印 上一主题 下一主题

    华云数据:Ceph的正确玩法之Ceph纠删码理论与实践

    [复制链接]
  • TA的每日心情
    无聊
    2019-6-24 23:37
  • 彩票店转让 www.kfnh.net 签到天数: 20 天

    [LV.4]偶尔看看III

    跳转到指定楼层
    楼主
    发表于 2019-2-26 10:46:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    禁毒吧-中国禁毒网站戒毒论坛
      随着云计算业务的快速发展,国内外云计算企业的专利之争也愈发激烈。在云计算这样的技术领域,专利储备往往代表着企业最新的技术实力?;剖荼酒凇爸腔慊啤弊ɡ附攵浴癈eph的正确玩法之Ceph纠删码理论与实践”技术,与大家共同分享云计算领域的最新技术与解决方案。
      该文章为本系列的最后一篇文章,我们将在之后继续推出其他系列类别的文章,敬请关注!
      

      一、纠删码原理
      纠删码(Erasure Coding,EC)是一种编码容错技术,最早是在通信行业解决部分数据在传输中的损耗问题。其基本原理就是把传输的信号分段,加入一定的校验再让各段间发生相互关联,即使在传输过程中丢失部分信号,接收端仍然能通过算法将完整的信息计算出来。在数据存储中,纠删码将数据分割成片段,把冗余数据块扩展和编码,并将其存储在不同的位置,比如磁盘、存储节点或者其他地理位置。如果需要严格区分,实际上按照误码控制的不同功能,可分为检错、纠错和纠删3种类型。
      ·检错码仅具备识别错码功能而无纠正错码功能。
      ·纠错码不仅具备识别错码功能,同时具备纠正错码功能。
      ·纠删码则不仅具备识别错码和纠正错码的功能,而且当错码超过纠正范围时,还可把无法纠错的信息删除。
      从纠删码基本的形态看,它是k个数据块+m个校验块的结构,其中k和m值可以按照一定的规则设定,可以用公式:n=k+m来表示。变量k代表原始数据或符号的值。变量m代表故障后添加的提供?;さ亩钔饣蛉哂喾诺闹?。变量n代表纠删码过程后创建的符号的总值。当小于m个存储块(数据块或校验块)损坏的情况下,整体数据块可以通过计算剩余存储块上的数据得到,整体数据不会丢失。
      下面以k=2,m=1为例,介绍一下如何以纠删码的形式将一个名称为cat.jpg的对象存放在Ceph中,假定该对象的内容为ABCDEFGH??突Ф嗽诮玞at.jpg上传到Ceph以后,会在主OSD中调用相应的纠删码算法对数据进行编码计算:将原来的ABCDEFGH拆分成两个分片,对应图11-2中的条带分片1(内容为ABCD)和条带分片2(内容为EFGH),之后再计算出另外一个校验条带分片3(内容为WXYZ)。按照crushmap所指定的规则,将这3个分片随机分布在3个不同的OSD上面,完成对这个对象的存储操作。如图所示。
      

      下面再看一下如何使用纠删码读取数据,同样还是以cat.jpg为例??突Ф嗽诜⑵鸲寥at.jpg请求以后,这个对象所在PG的主OSD会向其他关联的OSD发起读取请求,比如主OSD是图中的OSD1,当请求发送到了OSD2和OSD3,此时刚好OSD2出现故障无法回应请求,导致最终只能获取到OSD1(内容为ABCD)和OSD3(WXYZ)的条带分片,此时OSD1作为主OSD会对OSD1和OSD3的数据分片做纠删码解码操作,计算出OSD2上面的分片内容(即EFGH),之后重新组合出新的cat.jpg内容(ABCDEFGH),最终将该结果返回给客户端。整个过程如图所示。
      

      虽然纠删码能够提供和副本相近的数据可靠性,并降低冗余数据的开销,整体上能提高存储设备的可用空间。但是,纠删码所带来的额外开销主要是大量计算和网络高负载,优点同时伴随缺点。特别是在一个硬盘出现故障的情况下,重建数据非常耗费CPU资源,而且计算一个数据块时需要读出大量数据并通过网络传输。相比副本数据恢复,纠删码数据恢复时给网络带来巨大的负担。因此,使用纠删码对硬件的设备性能是一个较大的考验,这点需要注意。另外,需要注意的是,使用纠删码所建立的存储资源池无法新建RBD块设备。
      Ceph安装后默认有Default Rule,这个Rule默认是在Host层级进行三副本读写。副本技术带来的优点是高可靠性、优异的读写性能和快速的副本恢复。然而,副本技术带来的成本压力是较高的,特别是三副本数据情景下,每TB数据的成本是硬盘裸容量3倍以上(包括节点CPU和内存均摊开销)。纠删码具备与副本相近的高可用特性,而且降低了冗余数据的开销,同时带来了大量计算和网络高负载。
      二、纠删码实践
      纠删码是通过创建erasure类型的Ceph池实现的。这些池是基于一个纠删码配置文件进行创建的,在这个配置文件中定义了纠删码的特征值。现在我们将创建一个纠删码配置文件,并根据这个配置文件创建纠删码池。下面的命令将创建一个名为Ecprofile的纠删码配置文件,它定义的特征值是:k=3和m=2,两者分别表示数据块和校验块的数量。所以,每一个存储在纠删码池中的对象都将分为3(即k)个数据块,和2(即m)个额外添加的校验块,一共有5个块(k+m)。最后,这5(即k+m)个块将分布在不同故障区域中的OSD上。
      1、创建纠删码配置文件:
      # ceph osd erasure-code-profile  set Ecprofilecrush-failure-domain=osd k=3 m=2
      2、查看配置文件
      # ceph osd erasure-code-profile ls
      Ecprofile
      default
      # ceph osd erasure-code-profile get  Ecprofile
      crush-device-class=
      crush-failure-domain=osd
      crush-root=default
      jerasure-per-chunk-alignment=false
      k=3
      m=2
      plugin=jerasure
      technique=reed_sol_van
      w=8
      我们顺便也看Ceph默认的配置文件
      # ceph osd erasure-code-profile get default
      k=2
      m=1
      plugin=jerasure
      technique=reed_sol_van
      3、基于上一步生成的纠删码配置文件新建一个erasure类型的Ceph池:
      # ceph osd pool create Ecpool 16 16 erasureEcprofile
      pool 'Ecpool' created
      4、检查新创建的池的状态,你会发现池的大小是5(k+m),也就是说,erasure大小是5。因此,数据将被写入五个不同的OSD中:
      # ceph osd dump | grep Ecpool
      pool 8 'Ecpool' erasure size 5 min_size 4crush_rule 3 object_hash rjenkins pg_num 16 pgp_num 16 last_change 231 flagshashpspool stripe_width 12288
      5、现在我们创建个文件放到纠删码池中。
      # echo test > test
      # ceph osd pool ls
      Ecpool
      # rados put -p Ecpool object1 test
      # rados -p  Ecpool ls
      object1
      6、检查EC池中和object1的OSDmap。命令的输出将清晰地显示对象的每个块所在的OSDID。正如步骤1)中说明的那样,object1被分为3(m)个数据块和2(k)个额外的校验块,因此,5个块分别存储在Ceph集群完全不同的OSD上。在这个演示中,object1一直存储在这5个OSD中,它们是osd.5、osd.1、osd.3、osd.2、osd.4。
      # ceph osd map Ecpool object1
      osdmap e233 pool 'Ecpool' (8) object'object1' -> pg 8.bac5debc (8.c) -> up ([5,1,3,2,4], p5) acting([5,1,3,2,4], p5)
      三、纠删码测试
      1、我们先来关闭一个osd
      # systemctl stop [email protected]
      停止osd.3,检查EC池和object1的OSDmap。你应该注意,这里的osd.3变成NONE了,这意味着osd.3在这个池是不可用的:
      # ceph osd map Ecpool object1
      osdmap e235 pool 'Ecpool' (8) object'object1' -> pg 8.bac5debc (8.c) -> up ([5,1,NONE,2,4], p5) acting ([5,1,NONE,2,4],p5)
      2、我们再来关闭一个osd
      # systemctl stop [email protected]
      停止osd.5,检查EC池和object1的OSDmap。你应该注意,这里的osd.5变成NONE了,这意味着osd.5在这个池是不可用的:
      # ceph osd map Ecpool object1
      osdmap e237 pool 'Ecpool' (8) object'object1' -> pg 8.bac5debc (8.c) -> up ([NONE,1,NONE,2,4], p1) acting([NONE,1,NONE,2,4], p1)
      3、我们从纠删码池中下载文件
      ## rados get  -p Ecpool object1 /tmp/wyl


    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

    保定市专业团队各种类型网站设计,网站建设,网络宣传,价格公道,全国市场,各个行业均可,十年以上专业团队 ...  半小时前 上传下载附件 (61.91 KB)  保定市专业团队各种类型网站设计,网站建设,网络宣传,价格公道,全国市场,各个行业均可,十年以上专业团队 ...  保定市专业团队各种类型网站设计,网站建设,网络宣传,价格公道,全国市场,各个行业均可。 十年以上专业团队,擅长医疗,公司,商城等等行业! 商家均可联系,其他宣传合作非业务的勿扰, 电话:13932228338 QQ:63293588 卢经理
    返回顶部
  • 浮世边缘的净土——山神家园文章中国国家地理网 2019-08-12
  • 蔬菜-热门标签-华商生活 2019-08-12
  • 五台山公安分局开展山西公安便民平台上线宣传活动--黄河新闻网 2019-08-09
  • 地理 —频道 春城壹网 七彩云南 一网天下 2019-08-09
  • ECCO2016春夏流行趋势一览 让你的春天炫出彩虹 2019-07-31
  • 互联网基金违规销售乱象:巧立名目送红包、送份额 2019-07-30
  • 回复@艾鸣1:你还知道丢人? 2019-07-30
  • 您访问的页面找不回来了 2019-07-29
  • 3岁男童爬窗走失 民警帮忙找家人 2019-07-27
  • 中国首位“地球卫士终身成就奖”得主诞生! 2019-07-22
  • 国务院印发《关于积极有效利用外资推动经济高质量发展若干措施的通知》 2019-07-19
  • 京哈高速惨烈车祸已致3人死亡 长假返程连环碰撞 2019-07-19
  • 福建莆田:“千场宣讲”让“好声音”听得到“好政策”看得懂 2019-07-16
  • 第五届中国基金业英华奖颁奖典礼暨高峰论坛在深举行 2019-07-16
  • 回复@大雨582:所有的人都成标准件了? 2019-07-13
  • 组三走势图3d 3d精准1注 购彩3 pk10专家预测 安徽11选5全双多少期没开 论电子游戏议论文800字 新快3客服 2345福彩3d彩票走势图 北京十一选五5开奖结 捷克酷喜乐彩铅 大乐透走势图带连线图带坐标准版 32张小牌九玩法 六肖中特期期准王中王1 南国七星彩彩票论坛 白小姐码报资2019