ceph

CentOS7使用yum安装ceph rpm包

孤街浪徒 提交于 2020-02-16 08:26:26
1. 安装centos7对扩展repo的支持 yum install yum-plugin-priorities 保证下面的选项是开启的 [main] enabled = 1 2. 安装 release.key的支持。 rpm --import 'https://download.ceph.com/keys/release.asc' 3. 添加ceph.repo到/etc/yum.repo.d目录下: 然后执行 yum makecache [ceph] name=Ceph packages for $basearch baseurl=http://download.ceph.com/rpm-hammer/e17/$basearch enabled=1 priority=2 gpgcheck=1 type=rpm-md gpgkey=https://download.ceph.com/keys/release.asc [ceph-noarch] name=Ceph noarch packages baseurl=http://download.ceph.com/rpm-hammer/e17/noarch enabled=1 priority=2 gpgcheck=1 type=rpm-md gpgkey=https://download.ceph.com/keys/release

Ceph 块存储客户端配置(二)

帅比萌擦擦* 提交于 2020-02-10 17:29:43
一、Ceph RDB介绍 Ceph块设备,以前称为RADOS设备,为客户机提供可靠的、分布式的和高性能的块存储磁盘。RADOS块设备利用librbd库,并以顺序的形式在Ceph集群中的多个osd上存储数据块。RBD是由Ceph的RADOS层支持的,因此每个块设备都分布在多个Ceph节点上,提供了高性能和优异的可靠性。RDB有Linux内核的本地支持,这意味着RBD驱动程序从过去几年就与Linux内核集成得很好。除了可靠性和性能之外,RDB还提供了企业特性,例如:完整和增量快照、瘦配置、写时复制克隆、动态调整大小等等。RDB还支持内存缓存,这大大提高了其性能。任何普通的Linux主机(RHEL或基于debian的)都可以充当Ceph客户机。客户端通过网络与Ceph存储集群交互以存储或检索用户数据。Ceph RBD支持已经添加到Linux主线内核中,从2.6.34和以后的版本开始。 二、客户端安装Ceph软件包 2.1 检查内核是否支持RBD [root@192-168-5-70 ~]# uname -r 3.10.0-957.el7.x86_64 [root@192-168-5-70 ~]# modprobe rbd [root@192-168-5-70 ~]# echo $? 0 2.2 安装ceph软件 # 配置yum源 [root@192-168-5-70 ~]# vim

Ceph更多Mon 更多mds

谁都会走 提交于 2020-02-09 18:30:36
1、当前状态 2、在172.10.2.172(node2)再加入一个mon(mon.node2) ssh node2 vim /etc/ceph/ceph.conf 加入mon.node2的相关配置 ceph-authtool /tmp/ceph.mon.keyring --import-keyring /etc/ceph/ceph.client.admin.keyring monmaptool --create --add node1 172.10.2.172 --fsid e3de7f45-c883-4e2c-a26b-210001a7f3c2 /tmp/monmap mkdir -p /var/lib/ceph/mon/ceph-node2 ceph-mon --mkfs -i node2 --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring touch /var/lib/ceph/mon/ceph-node2/done /etc/init.d/ceph start 3、 在172.10.2.172(node2)再加入一个mds vim /etc/ceph/ceph.conf 加入mds.node2的相关配置 /etc/init.d/ceph restart 查看信息多了一个standby的mds /etc/init.d

Ceph万兆内网与系统万兆迁移

跟風遠走 提交于 2020-02-09 18:18:13
本文将总结一次为Ceph集群加装万兆内网(cluster network),后因需要对比实验来研究分布式存储集群在计算,网络,存储过程中各部分耗时比例,而将Ceph整体系统又整体搬移至万兆网的过程。但由于原始集群环境上还有其他不同的业务,为了不影响其他任务工作,本文确保以前的环境,配置,设备等不变,所以在整个过程中也是采坑不少! Ceph仅做内外网分离将内网设为万兆,整体系统提升效果不是很大,但生产环境下都这么做,最后为了测试将ceph都挂在新的万兆网下,但还是需要保证ceph集群与其他节点在原千兆网环境下可以互联互通。 原环境: 1. 纯电口千兆交换机 2. 内部局域网192.168.1.0/24,所有服务器通过一节点做转发连接外网。 3. 24台服务器,每个只有一块千兆网卡(双口),通过节点1(192.168.1.1)转发至外网。 4. 其中节点7,8,9配置为Ceph存储节点,节点6配置为Ceph Monitor节点。 5. 所有Ceph组件都配置在192.168.1.0/24的局域网网段下。 需求: 1. 在保留原环境的不动的前提下,将Ceph集群加装万兆内网,做内外网分离。 2. 实验进行完后,在原环境不动的前提下,将Ceph所有组件整体迁移到刚加小的万兆网环境下 因原网都在192.168.1.0/24网段下,而新交换机与老交换机之间无法连接(万兆到千兆

ceph介绍

社会主义新天地 提交于 2020-02-09 14:16:08
一、Ceph简介: Ceph是一种为优秀的性能、可靠性和可扩展性而设计的统一的、分布式文件系统 。ceph 的统一体现在可以 提供文件系统、块存储和对象存储 ,分布式体现在可以动态扩展。在国内一些公司的云环境中,通常会 采用 ceph 作为openstack 的唯一后端存储来提高数据转发效率。 Ceph项目最早起源于Sage就读博士期间的工作(最早的成果于2004年发表),并随后贡献给开源社区。在经过了数年的发展之后,目前已得到众多云计算厂商的支持并被广泛应用。RedHat及OpenStack都可与Ceph整合以支持虚拟机镜像的后端存储。 官网:https://ceph.com/ 官方文档:http://docs.ceph.com/docs/master/# 二、Ceph特点: 高性能: a. 摒弃了传统的集中式存储元数据寻址的方案, 采用CRUSH算法 ,数据分布均衡, 并行度高。 b.考虑了容灾域的隔离,能够 实现各类负载的副本放置规则 ,例如跨机房、机架 感知等。 c. 能够 支持上千个存储节点的规模 ,支持TB到PB级的数据。 高可用性: a. 副本数可以灵活控制。 b. 支持故障域分隔 ,数 据强一致性。 c. 多种故障场景自动进行 修复自愈 。 d. 没有单点故障 ,自动管理。 高可扩展性: a. 去中心化。 b. 扩展灵活。 c. 随着节点增加而 线性增长。 特性丰富

Ceph剖析:数据分布之CRUSH算法与一致性Hash

♀尐吖头ヾ 提交于 2020-02-09 12:43:32
作者: 吴香伟 发表于 2014/09/05 版权声明:可以任意转载,转载时务必以超链接形式标明文章原始出处和作者信息以及版权声明 数据分布是分布式存储系统的一个重要部分,数据分布算法至少要考虑以下三个因素: 1) 故障域隔离。同份数据的不同副本分布在不同的故障域,降低数据损坏的风险; 2) 负载均衡。数据能够均匀地分布在磁盘容量不等的存储节点,避免部分节点空闲部分节点超载,从而影响系统性能; 3) 控制节点加入离开时引起的数据迁移量。当节点离开时,最优的数据迁移是只有离线节点上的数据被迁移到其它节点,而正常工作的节点的数据不会发生迁移。 对象存储中一致性Hash和Ceph的CRUSH算法是使用地比较多的数据分布算法。在Aamzon的Dyanmo键值存储系统中采用一致性Hash算法,并且对它做了很多优化。OpenStack的Swift对象存储系统也使用了一致性Hash算法。 一致性Hash算法 假设数据为 x ,存储节点数目为 N 。将数据分布到存储节点的最直接做法是,计算数据 x 的Hash值,并将结果同节点数目 N 取余数,余数就是数据x的目的存储节点。即目的存储节点为 Hash(x) % N 。对数据计算Hash值的目的为了可以让数据均匀分布在N个节点中。这种做法的一个严重问题是,当加入新节点或则节点离开时,几乎所有数据都会受到影响,需要重新分布。因此,数据迁移量非常大。

分布式存储系统 Ceph

点点圈 提交于 2020-02-09 12:41:22
你了解Ceph吗? Ceph是一种分布式存储系统,它可以将多台服务器组成一个超大集群,把这些机器中的磁盘资源整合到一块儿,形成一个大的资源池(PB级别),然后按需分配给应用使用。 那么你知道Ceph的架构吗? Ceph的底层实现是RADOS,RADOS是由C++写的,但是它向外界暴露了调用接口,即LibRADOS,应用程序只需要调用LibRADOS的接口,就可以操纵Ceph了。这其中,RADOS GW用于对象存储,RBD用于块存储,它们都属于LibRADOS;CephFS是内核态程序,向外界提供了POSIX接口,用户可以通过客户端直接挂载使用。 你知道RADOS内部架构和工作原理吗? 每台服务器都有好几块磁盘(sda,sdb,sdc等),磁盘又可以进一步分区(sda1,sda2等)。CEPH中最基本的进程就是OSD(对象存储设备),每个磁盘对应一个OSD。 如果用户通过客户端想要存储一个文件,那么在RADOS中,该文件实际上会分为一个个4M块大小的对象。每个文件都一个文件ID(例如A),那么这些对象的ID就是(A0,A1,A2等)。然而在分布式储存系统中,有成千上万个对象,光遍历就要花很长的时间,所以对象会先通过hash-取模运算,存放到一个PG(Place Group)中,PG相当于数据库中的索引(PG的数量是固定的,不会随着OSD的增加或者删除而改变),这样一来

ceph

不问归期 提交于 2020-02-08 17:10:20
分布式文件系统 分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连 分布式文件系统的设计基于客户机/服务器模式 常用的分布式文件系统 Lustre Hadoop FastDFS Ceph GlusterFS 什么是Ceph Ceph是一个分布式文件系统 具有高扩展,高可用,高性能的特点 Ceph可以提供对象存储,块存储,文件系统存储 块存储(iscsi)客户端多了一个磁盘,文件系统(NFS)客户端直接mount Ceph可以提供PB级别的存储空间(PB→TB→GB),1024G*1024G=1058576G 软件定义存储(Software Defined Storage)作为存储行业的一大发展趋势,已经越来越受到市场的认可 链接在此! Ceph组件 OSDs 存储设备 Monitors 集群监控软件 RadosGateway(RGW) 对象存储网关 MDSs 存放文件系统的元数据(对象存储和 块存储不需要该组件) Client ceph客户端 实验准备 问题 准备四台KVM虚拟机,其三台作为存储集群节点, 一台安装为客户端,实现如下功能: 创建1台客户端虚拟机 创建3台存储集群虚拟机 配置主机名、IP地址、YUM源 修改所有主机的主机名 配置无密码SSH连接 – 配置NTP时间同步

ceph-nautilus版本部署

泪湿孤枕 提交于 2020-02-08 16:01:38
实验目的:   ceph版本使用,体验ceph新特性,使用单机部署体验rbd/bgw/cephfs, cephfs需要mds服务,rbd/bgw不需要mds服务 实验环境: Ubuntu 18.04.3 LTS ceph-nautilus 注意:ceph-octopus部署出现很多错误,不太稳定就回退到上个版本ceph-nautilus 实验操作: 01、hosts/firewalled/disk root@ubuntu:~# hostname ubuntu root@ubuntu:~# ping ubuntu PING ubuntu (192.168.3.103) 56(84) bytes of data. 64 bytes from ubuntu (192.168.3.103): icmp_seq=1 ttl=64 time=0.015 ms root@ubuntu:~# ufw status Status: inactive ###防火墙未使用 root@ubuntu:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk └─sda1 8:1 0 20G 0 part / sdb 8:16 0 20G 0 disk ###一块空闲的磁盘 02、添加国内源 root@ubuntu:~#

openstack高可用集群18-Ceph和openstack的对接

痞子三分冷 提交于 2020-02-05 23:54:22
Ceph对接Openstack 官方文档: https://docs.ceph.com/docs/master/rbd/rbd-openstack/ Ceph的一个使用场景是结合Openstack来提供云存储服务,Openstack到Ceph之间的调用堆栈就是下面这个结构: 三大模块 Openstack对接Ceph,有3大模块可以使用Ceph: 镜像 Openstack的Glance组件提供镜像服务,可以将Image直接存储在Ceph中。 操作系统盘 Openstack的Nova组件提供计算服务,一个虚机的创建必然需要操作系统,也就少不了系统盘,系统盘可以使用Ceph来提供。 非操作系统盘 Openstack的Cinder组件提供块存储服务,也就是我们物理机中的普通磁盘,也可以通过Ceph来提供。 以上3个组件从Openstack角度来说,是不同的3个模块,提供的服务也不同,但对于Ceph来说,都是一个Rbd Image,也就是一个块存储。 走的是同样的API,但是在一些属性和参数间存在一些差异。 在三大模块中增加ceph相关配置 1.Glance配置 # 在运行glance-api服务的节点修改glance-api.conf文件,含3个控制节点,以controller01节点为例 # 以下只列出涉及glance集成ceph的section [root@node1 ~]# vim