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

相关推荐
我狸才不是赔钱货1 小时前
容器:软件世界的标准集装箱
linux·运维·c++·docker·容器
三坛海会大神5553 小时前
k8s(十)Helm详解
云原生·容器·kubernetes
安卓开发者3 小时前
Docker命令大全:从入门到精通
docker·容器·eureka
K_i1343 小时前
Kubernetes流量管理:从Ingress到GatewayAPI演进
云原生·容器·kubernetes
蓝色土耳其love5 小时前
centos 7.9 安装单机版k8s
linux·运维·服务器·kubernetes·centos
七度光阴;6 小时前
Docker入门手册
运维·docker·容器
weixin_405023378 小时前
使用docker 安装部署easy-mock
运维·docker·容器
ZLRRLZ8 小时前
【Docker】Docker Image(镜像)
运维·docker·容器
小熊h8 小时前
Kubernetes(K8s) —— 部署(保姆级教程)
云原生·容器·kubernetes
祁同伟.9 小时前
【C++】二叉搜索树(图码详解)
开发语言·数据结构·c++·容器·stl