K8s使用Ceph作为后端存储

  1. Ceph概述
  2. 部署Ceph集群
  3. Ceph存储使用
  4. Pod使用Ceph持久化数据
  5. Ceph监控
  6. Rook部署Ceph

Ceph概述

  • Ceph介绍
  • Ceph架构
  • Ceph核心概念

Ceph介绍

Ceph是一个开源的分布式存储系统,具有高扩展性、高性能、高可靠性等特点,提
供良好的性能、可靠性和可扩展性。支持对象存储、块存储和文件系统。
是目前为云平台提供存储的理想方案。

Ceph架构

  • RBD(RADOS Block Device):块存储接口
  • RGW(RADOS Gateway)):对象存储网关,接口与S3和Swift兼容
  • CephFS(Ceph File System):文件级存储接口
  • RADOS(Reliable Autonomic Distributed Object Store):抽象的对象存储集群,Ceph核心,实现用户数据分配、故障转移等集群操作
  • MON:集群状态维护,例如OSD是否健康、PG状态等
  • MDS (Metadata Server) :CephFS服务依赖的元数据服务
  • OSD(Object Storage Daemon):对象存储设备,主要存储数据

Ceph核心概念

  • **Pool:存储池,**是存储对象的逻辑分区,它规定了数据冗余的类型和对应的副本分布策略;支持两种类型:副本(replicated)和 纠删码(Erasure Code)
  • **PG( placement group):放置策略组,**对象的集合,该集合里的所有对象都具有相同的放置策略;简单点说就是相同PG内的对象都会放到相同的硬盘上; PG是ceph的核心概念, 服务端数据均衡和恢复的最小粒度;引入PG这一层其实是为了更好的分配数据和定位数据。

右边这张图描述了它们之间的关系:

  • 一个Pool里有很多PG;
  • 一个PG里包含一堆对象;一个对象只能属于一个PG;
  • PG属于多个OSD,分布在不同的OSD上;

部署Ceph集群

  • Ceph版本选择
  • 服务器配置建议
  • Ceph集群部署规划
  • 操作系统初始化配置
  • Ceph集群部署
  • Ceph集群服务管理
  • Ceph集群常用管理命令

Ceph版本选择

Ceph目前最新版本16(P版),市面上应用最广泛的是12(L版)
参考:https://docs.ceph.com/en/latest/releases/

服务器配置建议

Ceph集群部署规划

  • ceph-deploy:ceph集群部署节点,负责集群整体部署,这里复用node1节点,也可以单独找一台服务器作为部署节点。
  • monitor:Ceph监视管理节点,承担Ceph集群重要的管理任务,负责集群状态维护,例如存储池副本数、PG状态、OSD数量等,至少部署1个,一般需要3或5个节点组建高可用。
  • osd:Ceph存储节点,实际负责数据存储的节点,集群中至少有3个OSD,不少于默认副本数,每个OSD对应一块硬盘。

操作系统初始化配置

Ceph集群部署

Ceph集群服务管理

Ceph集群常用管理命令

**❖**Ceph存储使用

**❖**Pod使用Ceph持久化数据

**❖**Ceph监控

**❖**Rook部署Ceph

相关推荐
活跃的煤矿打工人3 小时前
【星海随笔】删除ceph
linux·服务器·ceph
颜淡慕潇3 小时前
【K8S问题系列 | 20 】K8S如何删除异常对象(Pod、Namespace、PV、PVC)
后端·云原生·容器·kubernetes
lmxnsI3 小时前
docker使用笔记
笔记·docker·容器
didiplus5 小时前
Kubernetes 镜像拉取策略全解析:如何根据需求选择最佳配置?
云原生·容器·kubernetes
玄德公笔记5 小时前
docker-compose搭建sfpt服务器
服务器·docker·容器·sftp·docker-compose
小钟不想敲代码7 小时前
Docker部署Sentinel
docker·容器·sentinel
上海运维Q先生7 小时前
面试题整理17----K8s中request和limit资源限制是如何实现的
服务器·云原生·kubernetes
胖毁青春,瘦解百病9 小时前
Docker镜像源设置不生效问题排查
docker·容器
CloudPilotAI9 小时前
15条 Karpenter 最佳实践,轻松掌握弹性伸缩
kubernetes·弹性伸缩·karpenter
会飞的土拨鼠呀9 小时前
Flannel是什么,如何安装Flannel
运维·云原生·kubernetes