ceph集群部署及块osd使用



返回

存储概念

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6mQa55JI-1596202460579)(EA23CACE91554427B06B0910747CB845)]

  • 集中分布:所有数据存储在同一设备内

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XxuI4Mtk-1596202460582)(04F674AC6C02420CA911B0F4960B48C4)]

  • 分布分布存储
    • Lustre
    • Hadoop :仍用较多, 大数据使用较多
    • FastDFS
    • Ceph :企业标准, 超融合,分布式存储
    • GlusterFS
  • Ceph 独一无二地用统一的系统提供了对象、块、和文件存储功能,它可靠性高、管理简便、并且是自由软件
  • Ceph 的强大足以改变贵公司的 IT 基础架构、和管理海量数据的能力。
  • Ceph 可提供极大的伸缩性——供成千用户访问 PB 乃至 EB 级的数据。
  • Ceph 节点以普通硬件和智能守护进程作为支撑点, Ceph 存储集群组织起了大量节点,它们之间靠相互通讯来复制数据、并动态地重分布数据

在这里插入图片描述

高扩展, 高可用, 高性能

  • Ceph 消除了集中网关,允许客户端直接和 Ceph OSD 守护进程通讯。
  • Ceph OSD 守护进程自动在其它 Ceph 节点上创建对象副本来确保数据安全和高可用性;
  • 为保证高可用性,监视器也实现了集群化。
  • 为消除中心节点, Ceph 使用了 CRUSH 算法。

CRUSH算法
Ceph 客户端和 OSD 守护进程都用 CRUSH 算法来计算对象的位置信息,而不是依赖于一个中心化的查询表。与以往方法相比, CRUSH 的数据管理机制更好,它很干脆地把工作分配给集群内的所有客户端和 OSD 来处理,因此具有极大的伸缩性。 CRUSH 用智能数据复制确保弹性,更能适应超大规模存储。CRUSH - 可控、可伸缩、分布式地归置多副本数据 。

  • 对象存储, 块存储, 文件系统存储
  • SDS 软件定义存储
  • 遵循过半原则, 一半坏了就不能使用了 ,如由2个osd, 一个就不能用, 3台和4台结果一样

选奇数台才能实现高可用,最少3台 osd 做存储

  • 官网体系结构 http://docs.ceph.org.cn/architecture/

  • OSDs 存储设备

  • Monitors 集群监控组件

  • RadosGateway (RGW) 对象存储网关

  • MDSs 存放文件系统的元数据 (对象存储和块存储不需要该组件)

  • Client ceph客户端


 ceph-osd 软件包
    osd == 硬盘 
ceph-mon 软件包
    监控 (健康检查 , 检查服务是否正常)
    绘制地图(地图文件记录服务地址, 实时检查osd存储状态, 并更新osd存储地图)

1 案例1:部署ceph准备

1.1 问题
准备四台虚拟机,其三台作为存储集群节点,一台安装为客户端,实现如下功能:

  1. 创建1台客户端虚拟机
  2. 创建3台存储集群虚拟机
  3. 配置主机名、IP地址、YUM源
  4. 修改所有主机的主机名
  5. 配置无密码SSH连接
  6. 配置NTP时间同步
  7. 创建虚拟机磁盘

1.2 方案
使用4台虚拟机,1台客户端、3台存储集群服务器,拓扑结构如图-1所示。
在这里插入图片描述

注意:所有主机基本系统光盘的YUM源必须提前配置好。

Ceph组件-mon维护者集群map
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F2auU8F8-1596202460603)(D06888333BE94CC599CB061A4469D5DE)]

Ceph会对数据进行切割处理
在这里插入图片描述

Ceph随机读写数据的思路
在这里插入图片描述

  • 当数据源不变时, 哈希值永恒不变
[root@proxy ~]# echo test.txt | md5sum
bbfa1f311a5828452b953d1335cbf027  -
[root@proxy ~]# 

bbfa1f311a5828452b953d1335cbf027%OSD数量  若osd数量为5  ,取余为0-4 ,当对5取余为0,写入到第一台osd设备, 当取余等于1,写入第二台机器,,

随机写进去, 每个数据拷贝进去, 两外复制两份到其他osd,共有3个副本

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZjpVixsH-1596202460609)(65B20A60836448B885AA9181E3FF04B2)]
上图官网数据访问图

Ceph集群结构
图-5

1.3 步骤
实现此案例需要按照如下步骤进行。

步骤一:安装前准备

1)所有主机设置防火墙和SELinux
[root@client ~]# firewall-cmd --set-default-zone=trusted
[root@client ~]# sed -i '/SELINUX/s/enforcing/permissive/' /etc/selinux/config
[root@client ~]# setenforce 0
[root@node1 ~]# firewall-cmd --set-default-zone=trusted
[root@node1 ~]# sed -i '/SELINUX/s/enforcing/permissive/' /etc/selinux/config
[root@node1 ~]# setenforce 0
[root@node2 ~]# firewall-cmd --set-default-zone=trusted
[root@node2 ~]# sed -i '/SELINUX/s/enforcing/permissive/' /etc/selinux/config
[root@node2 ~]# setenforce 0
[root@node3 ~]# firewall-cmd --set-default-zone=trusted
[root@node3 ~]# sed -i '/SELINUX/s/enforcing/permissive/' /etc/selinux/config
[root@node3 ~]# setenforce 0
2)为所有节点配置yum源服务器。

把四台虚拟机全部关机;每台虚拟机都添加一个光驱;

做如下相同操作:

  • 右击虚拟机,选【设置】—【添加】—【CD|DVD驱动器】–【完成】;

    点击刚刚新建的光盘[CD|DVD],勾选使用ISO映像文件–[浏览];

    找到自己真机的ceph10.iso加载即可。

    添加磁盘:

    除了客户端,所有3台ceph服务器都添加2块20G磁盘。

    启动所有虚拟机后,查看磁盘情况:

[root@client ~]# lsblk
[root@node1 ~]# lsblk
[root@node2 ~]# lsblk
[root@node3 ~]# lsblk
3)所有主机挂载ceph光盘和系统光盘

【需要看清对应光驱序号 sr0 还是sr1】,需要根据实际情况操作,

案例假设是将系统光盘挂载到/media目录,将ceph光盘挂载到/ceph目录。

[root@client ~]# umount /dev/sr0
[root@client ~]# umount /dev/sr1             #未挂载的话会报错
[root@client ~]# mkdir  /ceph
[root@client ~]# vim  /etc/fstab
    /dev/sr0    /ceph     iso9660   defaults   0  0       #需要根据实际情况挂载
    /dev/sr1    /media    iso9660   defaults   0  0       #需要根据实际情况挂载
[root@client ~]# mount -a
[root@client ~]# lsblk
[root@node1 ~]# umount /dev/sr0
[root@node1 ~]# umount /dev/sr1
[root@node1 ~]# mkdir /ceph
[root@node1 ~]# vim /etc/fstab
    /dev/s
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值