Ceph:关于Ceph 集群管理的一些笔记

news2024/11/14 23:30:39

写在前面


  • 准备考试,整理ceph 相关笔记
  • 博文内容涉及,Ceph 管理工具 cephadm,ceph 编排器,Ceph CLI 和 Dashboard GUI 介绍
  • 理解不足小伙伴帮忙指正

对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是对大众理想的懦弱回归,是随波逐流,是对内心的恐惧 ——赫尔曼·黑塞《德米安》


Ceph存储管理工具

Ceph 部署工具

以前的Ceph版本使用 Ceph-ansible 软件中的 Ansible Playbooks 进行部署并管理集群, Ceph O版 引入了 cephadm 作为工具来管理集群的整个生命周期(部署、管理和监控),替换之前的 ceph-ansible 提供的功能

Cephadm 被视为 Manager 守护进程(MGR)中的一个模块,这是部署新集群时的第一个守护进程,Ceph集群核心集成了所有的管理任务

Cephadm 由 Cephadm 包装提供,应该在第一个集群节点上安装这个包,它充当引导节点。

Ceph 被部署在容器中,建立并运行 Ceph 集群的仅有几个安装包要求是 cephadm、podman、python3、chrony,容器化版本降低了部署过程中的复杂性和包依赖关系

下图说明了 Cephadm 如何与其他服务交互

在这里插入图片描述

Cephadm 可以登录到容器注册中心来提取Ceph镜像,并使用该映像在节点上部署服务。当引导集群时,这个Ceph容器镜像是必需的,因为部署的 Ceph 容器是基于该镜像,为了与 Ceph 集群 节点交互,Cephadm 使用 SSH 连接向集群添加新主机、添加存储或监控这些主机

Cephadm 常用命令

  • cephadm bootstrap: 用于在 Ceph 群集上引导 cephadm 客户端。
  • cephadm add-repo: 添加一个自定义 yum 或 apt 存储库,以便 cephadm 客户端可以使用新的软件包。
  • cephadm deploy: 使用配置文件指定的配置部署 Ceph 群集。
  • cephadm rm-daemon: 从 Ceph 群集中删除指定的 Ceph 守护进程。
  • cephadm ls: 列出所有已知主机及其状态、版本和其他详细信息。
  • cephadm set-privs: 设置 ssh 私钥配置参数,以便 cephadm 可以通过 SSH 访问主机。
  • cephadm shell: 在指定容器中启动一个交互式 shell。
  • cephadm rm-cluster: 从主机上完全清除 Ceph 群集,包括数据和配置文件等。

Ceph编排器

可以使用 Ceph编排器 轻松地向集群添加主机和守护进程,使用 编排器 来提供 Ceph守护进程和服务,并扩展或收缩集群。通过 Ceph orch 命令使用 Ceph编排器,还可以使用Ceph Dashboard接口来运行编排器任务。cephadm 脚本与 Ceph Manager 业务流程模块交互

下面的图表说明了Ceph Orchestrator

在这里插入图片描述

常用命令

  • ceph orch apply: 应用指定的 Service、Daemons 等配置。
  • ceph orch ls: 列出所有已知主机及其状态、版本和其他详细信息。
  • ceph orch ps: 列出正在运行的 Service、Daemons 等实例。
  • ceph orch device ls|osd create: 查看存储设备列表或创建 OSD。
  • ceph orch service restart: 重启指定的服务(如 OSD 等)。
  • ceph orch daemon add: 在指定的主机上添加一个新的 Daemon 实例。
  • ceph orch daemon rm: 从指定的主机上删除一个 Daemon 实例。
  • ceph orch osd status: 查看 OSD 的状态和健康状态。
  • ceph orch upgrade status: 查看升级进度和状态。
  • ceph orch release upgrade: 执行 Ceph 版本升级操作。

Ceph 管理工具

Ceph部署在容器中,在引导节点中不需要额外的软件,可以从集群的引导节点中的命令行引导集群,引导集群设置了一个最小的集群配置,其中只有一个主机(引导节点)和两个守护进程(监视器和管理进程),Ceph O版提供两个默认部署的接口: Ceph CLI 和 Dashboard GUI

Ceph命令行

Cephadm 可以启动一个装有所有必需 Ceph 包的容器,使用这个容器的命令是 cephadm shell,只应该在引导节点中运行此命令,因为在引导集群时,只有这个节点可以访问/etc/ceph中的admin密钥

[root@clienta ~]# cephadm shell
Inferring fsid 2ae6d05a-229a-11ec-925e-52540000fa0c
Inferring config /var/lib/ceph/2ae6d05a-229a-11ec-925e-52540000fa0c/mon.clienta/config
Using recent ceph image registry.redhat.io/rhceph/rhceph-5-rhel8@sha256:6306de945a6c940439ab584aba9b622f2aa6222947d3d4cde75a4b82649a47ff
[ceph: root@clienta /]# 

可以通过破折号直接非交互式执行命令

[root@clienta ~]# cephadm shell -- ceph -s
Inferring fsid 2ae6d05a-229a-11ec-925e-52540000fa0c
Inferring config /var/lib/ceph/2ae6d05a-229a-11ec-925e-52540000fa0c/mon.clienta/config
Using recent ceph image registry.redhat.io/rhceph/rhceph-5-rhel8@sha256:6306de945a6c940439ab584aba9b622f2aa6222947d3d4cde75a4b82649a47ff
  cluster:
    id:     2ae6d05a-229a-11ec-925e-52540000fa0c
    health: HEALTH_OK

Ceph Dashboard 面板

Ceph O版 Dashboard GUI 通过该接口增强了对许多集群任务的支持,Ceph Dashboard GUI是一个基于web的应用程序,用于监控和管理集群,它以比Ceph CLI更直观的方式提供了集群信息。

与Ceph CLI一样,Ceph 将 Dashboard GUI web服务器作为Ceph-mgr 守护进程的一个模块,默认情况下,当创建集群时,Ceph在引导节点中部署Dashboard GUI并使用TCP端口8443

Ceph Dashboard GUI提供了这些特性:

  • 多用户和角色管理:可以创建具有多种权限和角色的不同用户帐户
  • 单点登录:Dashboard GUI允许通过外部身份提供者进行身份验证
  • 审计:可以配置仪表板来记录所有REST API请求
  • 安全:Dashboard默认使用SSL/TLS保护所有HTTP连接

Ceph Dashboard GUI还实现了管理和监控集群的不同功能,下面的列表虽然不是详尽的,但总结了重要的管理和监控特点:

管理功能
  • 使用 CRUSH map 查看集群层次结构
  • 启用、编辑和禁用管理器模块
  • 创建、移除和管理osd
  • 管理iSCSI
  • 管理池
监控功能
  • 检查整体集群健康状况
  • 查看集群中的主机及其服务
  • 查看日志
  • 查看集群警报
  • 检查集群容量

下图显示了Dashboard GUI中的状态屏幕。可以快速查看集群的一些重要参数,如集群状态、集群中的主机数量、osd数量等

在这里插入图片描述

[root@clienta student]# cephadm shell
Inferring fsid 2ae6d05a-229a-11ec-925e-52540000fa0c
Inferring config /var/lib/ceph/2ae6d05a-229a-11ec-925e-52540000fa0c/mon.clienta/config
Using recent ceph image registry.redhat.io/rhceph/rhceph-5-rhel8@sha256:6306de945a6c940439ab584aba9b622f2aa6222947d3d4cde75a4b82649a47ff
[ceph: root@clienta /]# ceph orch ps | head -n 5
NAME                                HOST                     STATUS         REFRESHED  AGE  PORTS          VERSION           IMAGE ID      CONTAINER ID
alertmanager.serverc                serverc.lab.example.com  running (10m)  9m ago     18M  *:9093 *:9094  0.20.0            4c997545e699  7358b97d835b
crash.clienta                       clienta.lab.example.com  running (10m)  9m ago     18M  -              16.2.0-117.el8cp  2142b60d7974  e9e0350d9f4c
crash.serverc                       serverc.lab.example.com  running (10m)  9m ago     18M  -              16.2.0-117.el8cp  2142b60d7974  8bf8e52b09d2
crash.serverd                       serverd.lab.example.com  running (10m)  9m ago     18M  -              16.2.0-117.el8cp  2142b60d7974  e5447c052636
[ceph: root@clienta /]# ceph health
HEALTH_OK

在这里插入图片描述

博文部分内容参考

© 文中涉及参考链接内容版权归原作者所有,如有侵权请告知,这是一个开源项目,如果你认可它,不要吝啬星星哦 😃


https://docs.ceph.com/en/pacific/architecture/

https://docs.ceph.com

CL260 授课老师课堂笔记


© 2018-2023 liruilonger@gmail.com, All rights reserved. 保持署名-非商用-相同方式共享(CC BY-NC-SA 4.0)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/655824.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android插件化框架-Shadow原理解析

作者:dennyz 1、前言 所谓插件化,是实现动态化的一种具体的技术手段。 对于移动端的App而言,无论是Android还是iOS,都存在一个共同的问题,那就是更新的周期较长。 当我们希望快速为App更新功能时,必须经…

Docker Desktop启动失败解决方案(亲侧出坑总结)

现在有些东西网上资料开始变少了。需要自己去总结。有些技术呢又因为分享变得门槛低。今天这个是关于windows下的docker desktop无法启动的问题集锦。卷吧。 背景:应业务需要所以需要在个人电脑上安装docker环境。desktop docker是官方标准的windows下安装工具。 …

6.7面向对象的多态

7. 面向对象特征三:多态性 概念 多态是面向对象程序设计(OOP)的一个重要特征,指同一个实体同时具有多种形式,即同一个对象,在不同时刻,代表的对象不一样,指的是对象的多种形态。 变…

副业变现:Midjourney绘画赚钱的6种方式

今年被称为AI元年,其中最火的两款AI工具非ChatGpt和Midjourney莫属。究其原因,无非两点:第一,它提高了生产力,之前需要两年完成的工作,使用ChatGpt两天就完成。 第二,它带来了副业收入&#xff…

短视频seo源代码部署步骤

一、 部署短视频SEO矩阵系统源代码,您需要遵循以下步骤: 准备服务器环境 首先,您需要准备一个服务器环境来托管源代码。您可以选择云服务器(例如AWS,阿里云等)或自己的私人服务器。 安装所需软件 在服务器…

Android系统Binder详解

Android系统启动篇 1,《android系统启动流程简介》 2,《android init进程启动流程》 3,《android zygote进程启动流程》 4,《Android SystemServer进程启动流程》 5,《android launcher启动流程》 6,…

visual studio编译c++问题处理

严重性 代码 说明 项目 文件 行 禁止显示状态 错误 C2760 语法错误: 意外的令牌“标识符”,预期的令牌为“;” 严重性 代码 说明 项目 文件 行 禁止显示状态 错误 C7510 “string_view”: 类型 从属名称的使用必须…

RocketMQ_介绍以及基础入门

目录 一、什么是MQ 1、应用解耦 2、流量削峰 3、数据分发 二、MQ的优缺点 三、各种MQ产品的对比 四、RocketMQ快速入门(单机版本) 一、什么是MQ 在学习RocketMQ之前,我们先来了解什么是MQ,以及为什么要用MQ。MQ的英文全称是(Massage Q…

2023首届盘古石杯晋级赛复盘

晋级赛通排61,学生组39,折在大小写格式上的题太多了qaq 容器密码:usy1UN2Mmgram&^d?0E5r9myrk!cmJGr Android程序分析 1.涉案应用刷刷樂的签名序列号是(答案格式:123ca12a)(★☆☆☆☆) 11fcf899 雷电APP跑的时候前面加…

LeetCode 2481. 分割圆的最少切割次数

【LetMeFly】2481.分割圆的最少切割次数 力扣题目链接:https://leetcode.cn/problems/minimum-cuts-to-divide-a-circle/ 圆内一个 有效切割 ,符合以下二者之一: 该切割是两个端点在圆上的线段,且该线段经过圆心。该切割是一端…

【Flutter】Flutter 如何使用 flutter_swiper

文章目录 一、前言二、flutter_swiper 的概念三、Flutter 中的 flutter_swiper1. 使用的库2. 方法介绍 四、代码示例1. 简单示例2. 完整示例 五、总结 一、前言 在移动应用开发中,轮播图是一种常见的 UI 元素,它可以用来展示一系列的图片或者内容。在 F…

ACL 2023 | 利用思维链(CoT)推理隐式情感,狂涨50%

©PaperWeekly 原创 作者 | 费豪 单位 | 新加坡国立大学 题目: Reasoning Implicit Sentiment with Chain-of-Thought Prompting 作者: 费豪,李波波,刘乾,邴立东⁴,李霏,Chua Tat-Seng 新加…

聚观早报|青年失业率处在高位;滴滴租车在全国300个城市上线服务

今日要闻:青年失业率处在高位;滴滴租车在全国300个城市上线服务;特斯拉提供三个月免费充电服务;苹果新专利Apple Watch;甲骨文宣布裁员数百人 青年失业率处在高位 6 月 15 日,国新办举行 5 月份国民经济运…

signoz调研部署及log收集体验

这里是weihubeats,觉得文章不错可以关注公众号小奏技术,文章首发。拒绝营销号,拒绝标题党 背景 最近一直在调研监控、log收集,tracing相关的开源项目,以便使用。 前段时间一直调研使用的是skywalking。后来发现在log收集存储这一…

Ubuntu18编译内核源码,并调整版本号

​ 目标 下载ubuntu18 4.15.0-20-generic内核源码,默认情况下编译的内核版本会是4.15.17,我们需要调整版本号跟系统默认的一致,即4.15.0-20-generic 1 下载内核源码 sudo apt install linux-source-4.15.0 默认情况下,上面的…

苹果iOS 17新功能:iPhone激活Apple Watch铃声反向查找手表

苹果 Apple Watch 此前一直有查找 iPhone 的功能,用户可以点击表盘的电话图标(或者长按)来激活 iPhone 的铃声,从而找到附近的 iPhone 手机。 在最新的 iOS 17 测试版本中,苹果为 iPhone 也添加了这一功能的反向版本&a…

STM32速成笔记—串口通信

文章目录 一、什么是串口通讯二、串口通讯有什么用三、STM32的串口通信四、串口通信相关概念4.1 波特率4.2 全双工和半双工4.3 同步通信和异步通信 五、硬件连接六、串口通讯程序配置6.1 使能串口时钟和GPIO时钟6.2 初始化GPIO6.3 初始化串口参数6.4 使能串口6.5 串口接收中断6…

3ds MAX 多维材质

有的时候,我们想在一个图形中添加两个材质 比如我们绘制了一个球体,想要表示这是足球,但是没有黑白方块的贴图 除了绘制一个贴图外,我们可以用多维材质直接实现。 这里给茶壶对象的盖子和壶身设置两种贴图: 首先打…

MVI设计模式

一.各种框架对比 https://blog.csdn.net/qq_36390114/article/details/126160017 1. MVC(Model-View-Controller) 模型-视图-控制器 MVC的目的就是为了M和V代码分离,降低耦合性。 Model:数据来源,网络请求数据和数据…

DJ8-1 shell 的启动和终止、重定向、管道

目录 8.1 shell 的启动和终止 8.2 输入输出重定向 8.2.0 标准输入输出 8.2.1 输出重定向 > 8.2.2 输入重定向 < 8.2.3 常见输入输出重定向形式 8.2.4 标准错误输出重定向 8.3 管道 Linux 系统中的 shell 具有两大功能&#xff1a; 是一个命令解释器&…