ceph之crush map】的更多相关文章

目录 Ceph 调整crush map 1.前言 2.示例 1.创建新的replicated 2.修改当前pool的rule Ceph 调整crush map 1.前言 本文章适用于ceph n版 2.示例 1.创建新的replicated ####命令模板###### ceph osd crush rule create-replicated <rule-name> <root> <failure-domain> <class> #############…
编辑crush map: 1.获取crush map: 2.反编译crush map: 3.至少编辑一个设备,桶, 规则: 4.重新编译crush map: 5.重新注入crush map: 获取crush  map 要获取集群的crush map,执行命令: ceph osd  getcrushmap -o {compiled-crushmap-filename} ceph将crush输出(-o)到你指定的文件,由于crush map是已编译的,所以需要反编译: 反编译crush map 要反…
1.提取已有的CRUSH map ,使用-o参数,ceph将输出一个经过编译的CRUSH map 到您指定的文件ceph osd getcrushmap -o crushmap.txt 2.反编译你的CRUSH map ,使用-d参数将反编译CRUSH map 到通过-o 指定的文件中crushtool -d crushmap.txt -o crushmap-decompile 3.使用编辑器编辑CRUSH mapvi crushmap-decompile 4.重新编译这个新的CRUSH map…
很多年以前,Sage 在写CRUSH的原始算法的时候,写了不同的Bucket类型,可以选择不同的伪随机选择算法,大部分的模型是基于RJ Honicky写的RUSH algorithms 这个算法,这个在网上可以找到资料,这里面有一个新的特性是sage很引以为豪的,straw算法,也就是我们现在常用的一些算法,这个算法有下面的特性: items 可以有任意的weight 选择一个项目的算法复杂度是O(n) 如果一个item的weight调高或者调低,只会在调整了的item直接变动,而没有调整的it…
前言 在ceph研发群里面看到一个cepher在问关于怎么读取ceph的副本的问题,这个功能应该在2012年的时候,我们公司的研发就修改了代码去实现这个功能,只是当时的硬件条件所限,以及本身的稳定性问题,后来没有在生产当中使用 我们都知道ceph在写数据的时候,是先写主本,然后去写副本,而读取的时候,实际上只有主本能够提供服务,这对于磁盘的整体带宽来说,并没有充分的发挥其性能,所以能够读取副本当然是会有很大好处的,特别是对于读场景比较多的情况 那么在ceph当中是不是有这个功能呢?其实是有的,这…
前言 最近在学习 kubernetes 过程中,想实现 pod 数据的持久化.在调研的过程中,发现 ceph 在最近几年发展火热,也有很多案例落地企业.在选型方面,个人更加倾向于社区火热的项目,GlusterFS.Ceph 都在考虑的范围之内,但是由于 GlusterFS 只提供对象存储和文件系统存储,而 Ceph 则提供对象存储.块存储以及文件系统存储.怀着对新事物的向往,果断选择 Ceph 来实现 Ceph 块存储对接 kubernetes 来实现 pod 的数据持久化. 一.初始 Ceph…
前言 Ceph是一个分布式存储系统,诞生于2004年,最早致力于开发下一代高性能分布式文件系统的项目.随着云计算的发展,ceph乘上了OpenStack的春风,进而成为了开源社区受关注较高的项目之一. Ceph有以下优势: 1. CRUSH算法 Crush算法是ceph的两大创新之一,简单来说,ceph摒弃了传统的集中式存储元数据寻址的方案,转而使用CRUSH算法完成数据的寻址操作.CRUSH在一致性哈希基础上很好的考虑了容灾域的隔离,能够实现各类负载的副本放置规则,例如跨机房.机架感知等.Cr…
ceph crush的问题看一遍忘一遍,现将<ceph源码分析>一书中相关章节摘抄如下: 4.2.1 层级化的Cluster Map例4-1 Cluster Map定义层级化的Cluster Map定义了OSD集群具有层级关系的静态拓扑结构.OSD的层级使得CRUSH算法在选择OSD时实现了机架感知(rack awareness)的能力,也就是通过规则定义,使得副本可以分布在不同的机架.不同的机房中,提供数据的安全性. 层级化的Cluster Map的一些基本概念如下: ·Device:最基本…
1 什么是crushmap crushmap就相当于是ceph集群的一张数据分布地图,crush算法通过该地图可以知道数据应该如何分布:找到数据存放位置从而直接与对应的osd进行数据访问和写入:故障域的设置和数据冗余选择策略等.crushmap的灵活设置显示出了ceph的软件定义存储方案.这里可以引入raid相关的概念来对比下:raid0:又称为Stripe,中文名为条带,它是所有RAID级别中存储性能最高的,它的原理就是把连续的数据分散存储到多个磁盘中,充分利用了每个磁盘的吞吐,突破了单个磁盘…
1.简介 随着大规模分布式存储系统(PB级的数据和成百上千台存储设备)的出现.这些系统必须平衡的分布数据和负载(提高资源利用率),最大化系统的性能,并要处理系统的扩展和硬件失效.ceph设计了CRUSH(一个可扩展的伪随机数据分布算法),用在分布式对象存储系统上,可以有效映射数据对象到存储设备上(不需要中心设备).因为大型系统的结构式动态变化的,CRUSH能够处理存储设备的添加和移除,并最小化由于存储设备的的添加和移动而导致的数据迁移. 为了保证负载均衡,保证新旧数据混合在一起.但是简单HASH…
CRUSH的全称是Controlled Replication Under Scalable Hashing,是ceph数据存储的分布式选择算法,也是ceph存储引擎的核心.在之前的博客里介绍过,ceph的客户端在往集群里读写数据时,动态计算数据的存储位置.这样ceph就无需维护一个叫metadata的东西,从而提高性能. ceph分布式存储有关键的3R: Replication(数据复制).Recovery(数据恢复).Rebalancing(数据均衡).在组件故障时,ceph默认等待300秒…
文章转载自:https://mp.weixin.qq.com/s?__biz=MzI1MDgwNzQ1MQ==&mid=2247485302&idx=1&sn=00a3a2045797b20983c06b183c935886&chksm=e9fdd282de8a5b94b26b19c4a3b51eede1270c077edaa8899a982d75d4067a48ae0b97e8d870&cur_album_id=1600845417376776197&sc…
作者:吴香伟 发表于 2014/09/05 版权声明:可以任意转载,转载时务必以超链接形式标明文章原始出处和作者信息以及版权声明 数据分布是分布式存储系统的一个重要部分,数据分布算法至少要考虑以下三个因素: 1) 故障域隔离.同份数据的不同副本分布在不同的故障域,降低数据损坏的风险: 2) 负载均衡.数据能够均匀地分布在磁盘容量不等的存储节点,避免部分节点空闲部分节点超载,从而影响系统性能: 3) 控制节点加入离开时引起的数据迁移量.当节点离开时,最优的数据迁移是只有离线节点上的数据被迁移到其它…
转自于:http://www.cnblogs.com/shanno/p/3958298.html?utm_source=tuicool 数据分布是分布式存储系统的一个重要部分,数据分布算法至少要考虑以下三个因素: 1) 故障域隔离.同份数据的不同副本分布在不同的故障域,降低数据损坏的风险: 2) 负载均衡.数据能够均匀地分布在磁盘容量不等的存储节点,避免部分节点空闲部分节点超载,从而影响系统性能: 3) 控制节点加入离开时引起的数据迁移量.当节点离开时,最优的数据迁移是只有离线节点上的数据被迁移…
本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 (5)Ceph 与 OpenStack 集成的实现 (6)QEMU-KVM 和 Ceph RBD 的 缓存机制总结 (7)Ceph 的基本操作和常见故障排除方法 (8)基本的性能测试工具和方法 (9) pool 的size 和 min_size,choose 和 chooseleaf,pg scru…
作者:吴香伟 发表于 2014/09/26 版权声明:可以任意转载,转载时务必以超链接形式标明文章原始出处和作者信息以及版权声明 本节主要参考官网的ADDING/REMOVING OSDS章节. 同步节点的时间 安装ntp:apt-get install ntp NTP服务器:/etc/init.d/ntp start NTP客户端:ntpdate -d snode01 安装MON ceph-authtool --create-keyring /tmp/ceph.mon.keyring --ge…
本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 (5)Ceph 与 OpenStack 集成的实现 (6)QEMU-KVM 和 Ceph RBD 的 缓存机制总结 (7)Ceph 的基本操作和常见故障排除方法 学以致用,本文将介绍 Ceph 集群的一些基本操作和常见的故障排除方法. 0. 测试环境 将由 Virtulbox 管理的两个虚机,分别是…
一周前,由 Intel 与 Redhat 在10月18日联合举办了 Shanghai Ceph Day.在这次会议上,多位专家做了十几场非常精彩的演讲.本文就这些演讲中提到的 Ceph性能优化方面的知识和方法,试着就自己的理解做个总结. 0. 常规的 Ceph 性能优化方法 (1). 硬件层面 硬件规划:CPU.内存.网络 SSD选择:使用 SSD 作为日志存储 BIOS设置:打开超线程(HT).关闭节能.关闭 NUMA 等 (2). 软件层面 Linux OS:MTU.read_ahead 等…
本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 (5)Ceph 与 OpenStack 集成的实现 (6)QEMU-KVM 和 Ceph RBD 的 缓存机制总结 (7)Ceph 的基本操作和常见故障排除方法 1. Ceph 集群的物理结构 1.1 Ceph 内部集群 从前一篇文章 我们知道,从物理上来讲,一个 Ceph 集群内部其实有几个子集群…
优化方法论 做任何事情还是要有个方法论的,“授人以鱼不如授人以渔”的道理吧,方法通了,所有的问题就有了解决的途径.通过对公开资料的分析进行总结,对分布式存储系统的优化离不开以下几点: 1. 硬件层面 硬件规划 SSD选择 BIOS设置 2. 软件层面 Linux OS Ceph Configurations PG Number调整 CRUSH Map 其他因素 硬件优化 1. 硬件规划 Processor ceph-osd进程在运行过程中会消耗CPU资源,所以一般会为每一个ceph-osd进程绑…
chen@admin-node:~$ ceph --help General usage: ============== usage: ceph [-h] [-c CEPHCONF] [-i INPUT_FILE] [-o OUTPUT_FILE] [--id CLIENT_ID] [--name CLIENT_NAME] [--cluster CLUSTER] [--admin-daemon ADMIN_SOCKET] [--admin-socket ADMIN_SOCKET_NOPE] [-…
一.集群 1.启动一个ceph进程 启动mon进程 [root@ceph-adm ~]#203.109 service ceph start mon.ceph-mon1 启动msd进程 [root@ceph-adm ~]#203.109 service ceph start mds.ceph-mds1 启动osd进程 [root@ceph-adm ~]#203.109 service ceph start osd.0 2.查看机器的监控状态 [root@ceph-adm ~]#203.109 c…
prefaces: ceph installation(quick)1,preflight(ins ceph-deploy repo tools)2,ceph storage cluster quick start3,block device quick start4,ceph file system quick start5,ceph object storage quick start (1,preflight) Ceph is a distributed object store and…
一.ceph基本操作: 启动osd.mon进程: start ceph-osd id=X start ceph-mon id=YYY 关闭osd.mon进程: stop  ceph-osd id=X stop  ceph-mon id=YYY 查看osd的状态: status ceph-osd  id=X 二.ceph更换硬盘流程: scale up:(同一节点上增加osd) scale out:(同一集群内增加节点) 1.删除OSD: a.停止osd  daemon stop  ceph-os…
Ceph : performance, reliability and scalability storage solution Contents 1 Introduction 1.1 Testing case 2 Installation 2.1 First node 2.2 Other nodes 3 Deploy 3.1 Cluster 3.2 Monitor 3.2.1 Add the first monitor 3.2.2 Add a monitor 3.2.3 Remove a mo…
ceph基本操作: /etc/init.d/ceph -a start/stop //即在所有节点上执行 单个操作: start/stop ceph-osd id={id} start/stop ceph-mon id={hostname} start/stop ceph-mds id={hostname} 集群监控:监控osd状态.monitor status.placement组(pg).元数据服务器状态: #ceph //进入ceph会话模式 ceph> health ceph> sta…
作者:张华  发表于:2014-06-21版权声明:能够随意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明 (http://blog.csdn.net/quqi99 ) 作者将又一次研究ceph, 先温习一下之前作者大半年前发表在openstack中国社区的一篇理论文章(http://www.openstack.cn/p276.html),复制例如以下: Ceph是一个支持大量小文件和随机读写的分布式文件系统,在维护 POSIX 兼容性的同一时候添加了复制和容错功能.眼下C…
简单的介绍 Ceph的部署模式下主要包括下面几个类型的节点 • Ceph OSDs: A Ceph OSD 进程主要用来存储数据,处理数据的replication,恢复,填充.调整资源组合以及通过检查其它OSD进程的心跳信息提供一些监控信息给Ceph Monitors . 当Ceph Storage Cluster 要准备2份数据备份时,要求至少有2个Ceph OSD进程的状态是active+clean状态 (Ceph 默认会提供两份数据备份). • Monitors: Ceph Monitor…
Ceph RBD  CephFS 存储 环境准备: (这里只做基础测试, ceph-manager , ceph-mon, ceph-osd 一共三台) 10.6.0.140 = ceph-manager 10.6.0.187 = ceph-mon-1 10.6.0.188 = ceph-osd-1 10.6.0.94 = node-94 注: ceph 对时间要求很严格, 一定要同步所有的服务器时间 一.在 manager 上面修改 /etc/hosts : 10.6.0.187 ceph-m…
CentOS 7  x64 安装 Ceph 二, 实验环境 节点            IP                 主机名                  系统 MON         172.24.0.13           ceph-mon0             CentOS 7 X64 MDS         172.24.0.13           ceph-mds0             CentOS 7 X64 OSD0        172.24.0.14  …