Loongnix单机部署Ceph(LoongArch架构、Ceph N版、手动部署MON、OSD、MGR、Dashboard服务)

2023-11-12

基础环境信息

  • CPU:龙芯3C5000L×2
  • 内存:128G
  • 硬盘
    • 系统盘:一块512G的NVME的SSD
    • 数据盘:三块16T的HDD
  • 操作系统版本:Loongnix 8.4
  • Ceph版本:Ceph 14.2.21(Nautilus)

Ceph集群角色

主机名 IP地址 Ceph角色
ceph01 10.40.64.191 mon×1、mgr×1、osd×3

环境预配置

  1. 配置主机名称

    hostnamectl set-hostname ceph01
    bash
    
  2. 关闭防火墙和selinux

    systemctl disable --now firewalld
    setenforce 0
    sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
    
  3. 配置时间同步

    yum install -y chrony
    sed -i '/^pool/d' /etc/chrony.conf
    sed -i '/^server/d' /etc/chrony.conf
    echo "pool ntp.aliyun.com iburst" >> /etc/chrony.conf
    systemctl restart chronyd.service && systemctl enable chronyd.service
    timedatectl status
    chronyc sources
    
  4. 安装Ceph源N版

    yum install -y loongnix-release-ceph-nautilus
    

部署ceph mon服务

  1. 安装ceph-mon服务程序

    yum install -y ceph-mon
    
  2. 初始化mon服务

    生成uuid

    468e23e9-c98d-48f2-9432-9b17774613c7
    

    创建Ceph集群配置文件

    vim /etc/ceph/ceph.conf
    
    fsid = 468e23e9-c98d-48f2-9432-9b17774613c7
    mon_initial_members = ceph01 
    mon_host = 10.40.64.191 
    public_network = 10.40.64.0/24 
    auth_cluster_required = cephx
    auth_service_required = cephx
    auth_client_required = cephx
    osd_journal_size = 1024
    osd_pool_default_size = 3
    osd_pool_default_min_size = 2
    osd_pool_default_pg_num = 64
    osd_pool_default_pgp_num = 64
    osd_crush_chooseleaf_type = 1
    
    • fsid: 文件系统ID,用于标识Ceph集群中的特定文件系统。
    • mon_initial_members: 监控器(Mon)服务的初始成员列表,这里只有一个成员"ceph01"。
    • mon_host: 监控器(Mon)服务所在的主机地址。
    • public_network: 公共网络地址范围,用于定义Ceph集群与外部网络的通信范围。
    • auth_cluster_required: 认证集群所需的最小OSD数量。
    • auth_service_required: 认证服务所需的最小OSD数量。
    • auth_client_required: 认证客户端所需的最小OSD数量。
    • osd_journal_size: OSD日志的大小,以MB为单位。
    • osd_pool_default_size: 默认的OSD池大小,以OSD数量为单位。
    • osd_pool_default_min_size: 默认的OSD池最小大小,以OSD数量为单位。
    • osd_pool_default_pg_num: 默认的PG数量,用于副本集中的CRUSH映射。
    • osd_pool_default_pgp_num: 默认的PG优先级数量,用于副本集中的CRUSH映射。
    • osd_crush_chooseleaf_type: 在CRUSH算法中选择叶子节点的类型。

    创建集群Monitor密钥

    ceph-authtool --create-keyring /tmp/ceph.mon.keyring --gen-key -n mon. --cap mon 'allow *'
    

    创建client.admin用户,添加到集群密钥中。

    ceph-authtool --create-keyring /etc/ceph/ceph.client.admin.keyring --gen-key -n client.admin --cap mon 'allow *' --cap osd 'allow *' --cap mds 'allow *' --cap mgr 'allow *'
    
    ceph-authtool /tmp/ceph.mon.keyring --import-keyring /etc/ceph/ceph.client.admin.keyring
    

    创建client.bootstrap-osd用户密钥,添加到集群密钥中。

    ceph-authtool --create-keyring /var/lib/ceph/bootstrap-osd/ceph.keyring --gen-key -n client.bootstrap-osd --cap mon 'profile bootstrap-osd' --cap mgr 'allow r'
    
    ceph-authtool /tmp/ceph.mon.keyring --import-keyring /var/lib/ceph/bootstrap-osd/ceph.keyring
    

    使用主机名、主机IP地址、FSID生成monitor map。

    monmaptool --create --add ceph01 10.40.64.191 --fsid 468e23e9-c98d-48f2-9432-9b17774613c7 /tmp/monmap
    
    • 10.40.64.191:/etc/ceph/ceph.conf中对应的mon_host
    • 468e23e9-c98d-48f2-9432-9b17774613c7:/etc/ceph/ceph.conf中对应的fsid
    sudo -u ceph mkdir /var/lib/ceph/mon/ceph-ceph01
    chown ceph.ceph -R /var/lib/ceph /etc/ceph /tmp/ceph.mon.keyring /tmp/monmap
    sudo -u ceph ceph-mon --mkfs -i ceph01 --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring
    ls /var/lib/ceph/mon/ceph-ceph01/
    
  3. 启动monitor服务

    systemctl start ceph-mon@ceph01
    systemctl enable ceph-mon@ceph01
    systemctl status ceph-mon@ceph01
    
  4. 查看当前集群状态

    [root@ceph01 ceph]# ceph -s
    

HEALTH_WARN警报信息清除

出现警告:mons are allowing insecure global_id reclaim。
解决办法:ceph config set mon auth_allow_insecure_global_id_reclaim false

出现警告:monitors have not enabled msgr2
解决办法:ceph mon enable-msgr2

部署ceph osd服务(ceph-volume 自动化创建)

  1. 安装ceph-osd服务程序

    yum install -y ceph-osd
    
  2. 初始化osd服务

    通过fdisk等工具查看磁盘盘符,然后利用ceph-volume工具自动化创建osd服务。

    ceph-volume lvm create: error: GPT headers found, they must be removed on: /dev/sda

    sgdisk --zap-all /dev/sda
    
    ceph-volume lvm create --data /dev/sda
    ceph-volume lvm create --data /dev/sdb
    ceph-volume lvm create --data /dev/sdc
    
  3. 查看当前集群状态

    通过ceph osd tree命令查询集群状态,可见集群services中所有osd服务已启动。

    ceph osd tree
    
    ID CLASS WEIGHT   TYPE NAME       STATUS REWEIGHT PRI-AFF 
    -1       43.65807 root default                            
    -3       43.65807     host ceph01                         
     0   hdd 14.55269         osd.0       up  1.00000 1.00000 
     1   hdd 14.55269         osd.1       up  1.00000 1.00000 
     2   hdd 14.55269         osd.2       up  1.00000 1.00000
    

部署ceph mgr服务并开启Dashboard

  1. 安装ceph-mgr服务程序

    yum install -y ceph-mgr
    
  2. 初始化并启动主mgr服务

    mkdir -p /var/lib/ceph/mgr/ceph-ceph01
    chown ceph.ceph -R /var/lib/ceph
    ceph-authtool --create-keyring /etc/ceph/ceph.mgr.ceph01.keyring --gen-key -n mgr.ceph01 --cap mon 'allow profile mgr' --cap osd 'allow *' --cap mds 'allow *'
    ceph auth import -i /etc/ceph/ceph.mgr.ceph01.keyring
    ceph auth get-or-create mgr.ceph01 -o /var/lib/ceph/mgr/ceph-ceph01/keyring
    
    systemctl start ceph-mgr@ceph01
    systemctl enable ceph-mgr@ceph01
    systemctl status ceph-mgr@ceph01
    
  3. 查看当前集群状态

    [root@ceph01 ceph]# ceph -s
      cluster:
        id:     468e23e9-c98d-48f2-9432-9b17774613c7
        health: HEALTH_OK
     
      services:
        mon: 1 daemons, quorum ceph01 (age 2h)
        mgr: ceph01(active, since 112m)
        osd: 3 osds: 3 up (since 3h), 3 in (since 3h)
     
      data:
        pools:   0 pools, 0 pgs
        objects: 0 objects, 0 B
        usage:   3.0 GiB used, 44 TiB / 44 TiB avail
        pgs:     
    
  4. 使能Dashboard访问功能

    开启mgr dashboard功能

    ceph mgr module enable dashboard
    

    生成并安装自签名的证书

    ceph dashboard create-self-signed-cert
    

    配置dashboard

    ceph config set mgr mgr/dashboard/server_addr 10.40.64.191
    ceph config set mgr mgr/dashboard/server_port 8080
    ceph config set mgr mgr/dashboard/ssl_server_port 8443
    

    创建一个dashboard登录用户名密码

    echo '123456' > password.txt
    ceph dashboard ac-user-create admin  administrator -i password.txt
    

    通过Web访问Ceph Dashboard,用户名密码为admin/123456

    https://10.40.64.191:8443
    

参考

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Loongnix单机部署Ceph(LoongArch架构、Ceph N版、手动部署MON、OSD、MGR、Dashboard服务) 的相关文章

随机推荐

  • 线程是什么意思

    线程是操作系统能够进行运算调度的最小单位 它被包含在进程之中 是进程中的实际运作单位 一条线程指的是进程中一个单一顺序的控制流 一个进程中可以并发多个线程 每条线程并行执行不同的任务 在Unix System V及SunOS中也被称为轻量进
  • Structural Time Series modeling in TensorFlow Probability

    在邯郸学步后 想要深入用好Tensorflow中的STS model 还是要静下心来 好好阅读点材料 f t f 1
  • 分页插件pagehelper配置和 使用;

    先看结论 在看代码是实现 代码就这么多 现在来看配置 配置 1 pom xml加入这个依赖 com github pagehelper pagehelper 3 7 5 com github jsqlparser jsqlparser 0
  • 关于HashMap扩容造成死循环的介绍

    一 造成死循环的原因 HashMap扩容导致死循环的主要原因在于扩容后链表中的节点在新的hash桶使用头插法插入 新的hash桶会倒置原hash桶中的单链表 那么在多个线程同时扩容的情况下就可能导致产生一个存在闭环的单链表 从而导致死循环
  • 虚幻4学习笔记(10)蓝图接口、拾取物品-射线检测

    虚幻4学习笔记 蓝图接口 拾取物品 射线检测 骨架网格体和静态网格体的区别 骨架网格体设置碰撞 B站UP谌嘉诚课程 https www bilibili com video BV164411Y732 蓝图接口 添加 内容浏览器 右键 蓝图
  • 多模态简介

    1 多模态定义 多模式深度学习是一个机器学习子领域 旨在训练人工智能模型来处理和发现不同类型数据 模式 之间的关系 通常是图像 视频 音频和文本 通过结合不同的模态 深度学习模型可以更普遍地理解其环境 因为某些线索仅存在于某些模态中 想象一
  • VMware Tools安装(实现物理机与虚拟机文件互拷)

    1 开启虚拟机 2 点击VMware菜单上的虚拟机 弹出的菜单中点击安装VMware Tools 3 点击DVD 出现右边如图 4 复制VMware Tools压缩文件到opt文件夹 复制时可能出现下图描述 5 解决方法 1 打开终端 输入
  • 你了解System.out.println()的真正含义吗?

    在Java编程中 我们常常用 System out println 来输出字符串 也许我们都已经猜到println 是方法名 但System是什么 out又是什么呢 其实System是java lang里面的一个类 如下图 而out就是Sy
  • IDEA中/** 内容 */注释的快捷键

    在 IDEA 中 你可以使用快捷键 来快速生成 内容 注释 要使用此快捷键 请在你想要添加注释的代码行上按 Ctrl Windows 系统 或 Command Mac 系统 如果你想要撤销注释 可以再次按一次快捷键即可 注意 你必须在代码行
  • 设计模式学习笔记(七)之模板方法模式(Template Method)

    设计模式学习笔记 七 之模板方法模式 Template Method 最近实习工作稍微没有那么忙了 继续抽些晚上时间学习一下设计模式 以下是看设计模式书的学习笔记 关于模式定义之类的内容是在自己理解之后进行摘录的 希望对大家有用 代码下载链
  • SpringBoot获取微信公众号(小程序)access_token 使用Redis存储

    文章目录 前言 一 导入依赖 二 编写配置 1 personal yaml配置文件 2 WeChatBean实体类 3 编写RestTemplateConfig 4 开启定时任务 三 实现生成和存储access token 1 基本介绍 2
  • 路飞IT全学科实战项目5年黑金卡

    正在代理路飞IT全学科实战项目5年黑金卡 文末有联系方式 包含Python开发 Linux云计算 前端开发 Golang开发 AI 数据分析 网络安全 技术生涯 C语言 JAVA开发 测试 PHP 视频讲解 项目源码内容非常详细 开通黑金卡
  • 浅入深谈:如何更好地理解面向对象编程与面向过程编程的本质区别?

    今天 我们以一个例子 如打扫房间 来说明面向过程和面向对象在程序流程上的不同之处 在菜鸟分析看来 面向过程就是将编程当成是做一件事 要按步骤完成 每一步就是一个过程 比如菜鸟分析要打扫房间这件事 需要先取扫帚 然后仔仔细细打扫每一处 最后将
  • springboot理论知识汇总(图文解析)

    MVC HTTP请求处理流程 参数绑定 不同注解修饰的参数都有支持的方法参数处理器 例如 RequestParam对应的是RequestParamMethodArgumentResolver 在请求处理流程中的调用目标方法环节 会使用对应的
  • 语义分割混淆矩阵、 mIoU、mPA计算

    一 操作 import cv2 img gray cv2 imread nezha jpg cv2 IMREAD GRAYSCALE for i in range 22 dst cv2 applyColorMap img gray i cv
  • Scratch基础-积木讲解-必学(2000字)

    上次那篇文章有小伙伴跟Rocky丶说教程看不大懂 那我今天来给大家分享自己对scratch中每一个积木的认识 运用 后半部分Rocky丶可能没时间更新了 因为要上课 作业做不完 而且初三任务较重 我让我的好朋友PLTS帮我慢慢补咯 希望CS
  • vs2010环境下提示找不到d3dx9.h

    无法打开d3dx9 h 我们知道d3dx9 h是在DirectX SDK中的 我们只是需要下载下来就可以了 下载地址为 http www microsoft com en us download details aspx id 6812 如
  • 如何在 Luminar 4 中​使用AI天空更换工具?

    如何在 Luminar 4 中使用AI天空更换工具 如果照片缺少引人入胜的天空 AI天空更换工具可以轻松替换它 该工具设计用于平坦或暴风雨的天空 但通常可以通过改进滑块进行调整以适用于大多数天空 AI天空更换工具利用人工智能的力量自动分析图
  • 【JavaScript】(一)类型转换

    JS支持自动类型转换 其功能非常强大 首先看一段代码 结果如下 由此可见执行减法运算的时候 自动执行算术运算 但是执行加法运算的时候 默认将 作为连接符 它的转换规律如下 对于减号运算符 因为字符串不支持减法运算 所以系统自动将字符串转换成
  • Loongnix单机部署Ceph(LoongArch架构、Ceph N版、手动部署MON、OSD、MGR、Dashboard服务)

    基础环境信息 CPU 龙芯3C5000L 2 内存 128G 硬盘 系统盘 一块512G的NVME的SSD 数据盘 三块16T的HDD 操作系统版本 Loongnix 8 4 Ceph版本 Ceph 14 2 21 Nautilus Cep