拾光

拾光

首页
分类
网络数通Linux资源分享记录
动态
关于
登录 →
拾光

拾光

首页 分类
网络数通Linux资源分享记录
动态 关于
登录
  1. 首页
  2. ceph笔记-2、安装

ceph笔记-2、安装

0
  • 发布于 2025-05-15
  • 25 次阅读
后山看日出
后山看日出

一、准备

  • 只使用官方推荐方法Cephadm

    • Cephadm 通过引导单个主机、扩展集群以包含任何其他主机,然后部署所需的服务来创建新的 Ceph 集群。

  • 需求

    • Python 3

    • Systemd

    • Podman or Docker for running containers

    • Time synchronization (such as Chrony or the legacy ntpd)

    • LVM2 for provisioning storage devices

# 安装必要的需求,一般只需要安装podman ntp
# 安装Python 3
apt install python3
# 安装 Podman
apt install podman
# 安装LVM2 NTP
apt install lvm2
apt install ntp

#  设置下时区
timedatectl set-timezone Asia/Shanghai
  • 规划

    • 先把3台主机的IP设置好,修改好host文件.

     vim /etc/hosts
    192.168.88.101 host01
    192.168.88.102 host02
    192.168.88.103 host03
    • ceph版本:Reef-18.2.7

主机

cluster network

public network

host01

172.16.1.201

192.168.88.101

host02

172.16.1.202

192.168.88.102

host03

172.16.1.203

192.168.88.103

二、安装cephadm

  • 两种方法安装

    • curl 安装二进制包

    • 发行版软件仓库安装(省略)

apt install curl -y
# 这里修改自己版本
CEPH_RELEASE=18.2.7
curl --silent --remote-name --location https://download.ceph.com/rpm-${CEPH_RELEASE}/el9/noarch/cephadm
# 确保文件可执行
chmod +x cephadm
# 放到path 包含的目录方便操作
mv cephadm /usr/local/bin

三、引导新集群

  • 运行bootstrap命令

# 引导一个新集群,定义cluster网络
cephadm bootstrap --mon-ip 192.168.88.101 --cluster-network 172.16.1.0/24 
  • 开启 ceph cli 命令的两种方式

# 第一种就是进入容器进行操作
cephadm shell 
ceph -s  #查看集群状态
cephadm shell -- ceph -s # 在宿主机操作。很慢
 
# 第二种就是在宿主机安装ceph命令
cephadm add-repo --release reef  # 添加仓库源安装
cephadm install ceph-common

# 这样直接可以在宿主机管理了
ceph -v
ceph status

四、添加主机

  • 1、在新主机的root 用户文件中,安装集群的公有SSH密钥

ssh-copy-id -f -i /etc/ceph/ceph.pub root@host02
ssh-copy-id -f -i /etc/ceph/ceph.pub root@host03
  • 告诉ceph新节点,是集群的一部分:可以带标签 _admin

    • --labels admin:为该主机添加 admin 标签。_admin 是一个特殊标签,通常表示该节点可以运行管理工具(如 cephadm)并存储集群的配置文件。

# 添加新节点并添加admin标签,表示可运行管理工具
ceph orch host add host02 192.168.88.102 --labels _admin
ceph orch host add host03 192.168.88.103 --labels _admin

# Ceph Orchestrator(编排器)的命令.  orch

#  查询
ceph orch host ls

HOST    ADDR          LABELS  STATUS  
host01  192.168.88.101  _admin          
host02  192.168.88.102  _admin          
host03  192.168.88.103  _admin 

五、添加额外的Mon

  • 如果集群中的所有 ceph 监视器守护进程都位于同一子网中,则无需手动管理 cephadm 监视器守护进程。当新主机添加到集群时,cephadm 会根据需要自动向子网添加最多 5 个监视器。

# 1、指定 ceph 监视器守护进程使用的特定 IP 子网,    这里要注意一下是不是这句命令之后,mon mgr自动在网络里部署了
ceph config set mon public_network 192.168.88.0/24

# 查看
ceph config dump

# 2、在特定网络上部署监视器
# 要禁用监视器的自动部署,请运行以下命令:
ceph orch apply mon --unmanaged

# 要在 host02 上使用 IP 地址 92.168.88.102 部署第二个监视器
ceph orch daemon add mon host02:192.168.88.102
ceph orch daemon add mon host03:192.168.88.103

ceph orch apply mon --placement="3,host01,host02,host03"

六、添加存储

  • 添加OSD

  • 关于OSD内存的自动化,参考文档

#  打印 cephadm 发现的设备列表
ceph orch device ls [--hostname=...] [--wide] [--refresh]
ceph orch device ls --refresh
 
# 告诉 Ceph 使用任何可用且未使用的存储设备:自动添加osd.  尽量别用吧
ceph orch apply osd --all-available-devices

# 从特定主机上的特定设备创建 OSD:
ceph orch daemon add osd *<host>*:*<device-path>*
ceph orch daemon add osd host01:/dev/sdb

# 查询命令
ceph osd tree
ceph osd status
ceph osd metadata
  • 注意的是如果硬盘添加过OSD,需要删除硬盘的lv vg pv 再添加。

七、MGR的添加

  • 发现3节点只有两个自动运行了MGR

#查看mgr守护进程
ceph mgr module ls

# 查看集群内的主机
ceph orch host ls

# 查询集群内mgr的进程情况
ceph orch ls mgr

NAME  PORTS  RUNNING  REFRESHED  AGE  PLACEMENT             
mgr              3/3  6m ago     6m   host01;host02;host03  

# 查询集群内mon的进程情况
ceph orch ls mon

NAME  PORTS  RUNNING  REFRESHED  AGE  PLACEMENT    
mon              3/5  6m ago     2h   <unmanaged>  
root@host02:/home/hc# 
# 在所在的主机部署一个 MGR 守护进程。
# 注意这个命令,会删除其他跑mgr的进程
ceph orch apply mgr --placement="host01"
ceph orch apply mgr --placement="3,host01,host02,host03"

目录
Copyright © 2024 拾光笔记 All Rights Reserved. Powered by 10light.

ddd