网站商城建设如何避免内部竞争,找人做网站大概多少钱,全球网站免费空间注册,无为县住房和城乡建设局网站首页Ceph简介 Ceph是一款开源的 SDS 分布式存储#xff0c;它具备极高的可用性、扩展性和易用性#xff0c;可用于存 储海量数据 Ceph的存储节点可部署在通用服务器上#xff0c;这些服务器的 CPU 可以是 x86 架构的#xff0c;也可以 是 ARM 架构的。 Ceph 存储节点之间相互…Ceph简介 Ceph是一款开源的 SDS 分布式存储它具备极高的可用性、扩展性和易用性可用于存 储海量数据 Ceph的存储节点可部署在通用服务器上这些服务器的 CPU 可以是 x86 架构的也可以 是 ARM 架构的。 Ceph 存储节点之间相互通信以便对存储的数据进行动态复制和重分配 Ceph的技术优势 ⚫ 采用 RADOS 系统将所有数据作为对象存储在存储池中 ⚫ 使用 CRUSH 算法计算出对象所对应的存储位置 ⚫ 去中心化客户端可根据 CRUSH 算法自行计算出对象存储位置然后进行数据读写 ⚫ 集群可自动进行扩展、数据再平衡、数据恢复等 Ceph的组件总览 • MON 、 MGR 、 MDS 和 OSD 属于 ceph 的后端存储组件 • RADOSGW 、 RBD 、 CEPHFS 及 LIBRADOS 属于 ceph 的访问方式 1、ceph的安装
192.168.186.100 ceph01.novalocal ceph01
192.168.186.101 ceph02.novalocal ceph02
192.168.186.102 ceph03.novalocal ceph03
192.168.186.103 Client
1.1 前期准备
1、更改主机名
[rootlocalhost ~]# hostnamectl hostname ceph01.novalocal
[rootlocalhost ~]# hostnamectl hostname ceph02.novalocal
[rootlocalhost ~]# hostnamectl hostname ceph03.novalocal
2、更改hosts文件
[rootceph02 ~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.186.100 ceph01.novalocal ceph01
192.168.186.101 ceph02.novalocal ceph02
192.168.186.102 ceph03.novalocal ceph03
3、添加完成后在 ceph01 上 ping 各个主机名保证网络通信正常。 4、关闭防火墙和SElinux配置时间同步
systemctl disable firewalld
yum install -y chrony
systemctl enable chronyd --now
1.2 下载安装cephadm
1、安装git
[rootceph01 ~]#dnf install -y git
[rootceph01 ~]# git --version
git version 2.33.0
2、下载cephadm
[rootceph01 ~]#git clone https://gitee.com/yftyxa/openeuler-cephadm.git
3、下载完成后将下载到的 cephadm 复制到/usr/sbin/下并为其添加可执行权限具体命令为
[rootceph01 ~]# cp openeuler-cephadm/cephadm /usr/sbin chmod ax /usr/sbin/cephadm
1.3 添加ceph所需要的yum源
[rootceph01 ~]# vim /etc/yum.repos.d/ceph.repo
[Ceph]
nameCeph packages for $basearch
baseurlhttp://download.ceph.com/rpm-nautilus/el7/$basearch
enabled1
gpgcheck1
typerpm-md
gpgkeyhttps://download.ceph.com/keys/release.asc
priority1[Ceph-noarch]
nameCeph noarch packages
baseurlhttp://download.ceph.com/rpm-nautilus/el7/noarch
enabled1
gpgcheck1
typerpm-md
gpgkeyhttps://download.ceph.com/keys/release.asc
priority1[ceph-source]
nameCeph source packages
baseurlhttp://download.ceph.com/rpm-nautilus/el7/SRPMS
enabled1
gpgcheck1
typerpm-md
gpgkeyhttps://download.ceph.com/keys/release.asc
priority1
1.4 安装官方推荐容器引擎
1、在所有主机上使用以下命令添加容器引擎所需 yum 源
[rootceph01 ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-8-reg.repo
2、使用以下命令安装对应容器引擎
[rootceph01 ~]# yum install podman-3.3.1-9.module_el8.5.0988b1f0b741.x86_64 lvm2 -y
3、完成后重启所有主机
2、 安装部署ceph集群
2.1 在ceph01上初始化ceph集群 2.2 为集群添加node节点
2、为集群添加 node 节点使用以下命令创建 ceph 的管理容器
[rootceph02 ~]# cephadm shell
3、使用以下命令生成集群公钥并将其拷贝到剩余主机
[rootceph01 ~]# ssh-keygen -t rsa
[rootceph01 ~]# ssh-copy-id ceph02.novalocal
[rootceph01 ~]# ssh-copy-id ceph03.novalocal 4、使用以下命令将全部主机添加到集群内
[ceph: rootceph01 /]# ceph orch host add ceph02.novalocal
Added host ceph02.novalocal with addr 192.168.186.101
[ceph: rootceph01 /]# ceph orch host add ceph03.novalocal5、添加完成后使用以下命令查看当前集群中主机状态
[ceph: rootceph01 /]# ceph orch host ls
HOST ADDR LABELS STATUS
ceph01.novalocal 192.168.186.100 _admin
ceph02.novalocal 192.168.186.101
ceph03.novalocal 192.168.186.102
3 hosts in cluster6、等待系统自动将服务部署到所有节点中时间较长请耐心等待部署完成后状态如下
[ceph: rootceph01 /]# ceph orch ls
NAME PORTS RUNNING REFRESHED AGE PLACEMENT
alertmanager ?:9093,9094 1/1 107s ago 4d count:1
crash 3/3 109s ago 4d *
grafana ?:3000 1/1 107s ago 4d count:1
mgr 2/2 109s ago 4d count:2
mon 3/5 109s ago 4d count:5
node-exporter ?:9100 1/3 109s ago 4d *
prometheus ?:9095 1/1 107s ago 4d count:1
[ceph: rootceph01 /]#
7、使用以下命令取消 mon 服务的自动扩展功能:
[ceph: rootceph01 /]# ceph orch apply mon --unmanagedtrue
Scheduled mon update...
8、取消以后mon 对应的“PLACEMENT”值变为“unmanaged”如下图所示
[ceph: rootceph01 /]# ceph orch ls
NAME PORTS RUNNING REFRESHED AGE PLACEMENT
alertmanager ?:9093,9094 1/1 3m ago 4d count:1
crash 3/3 5m ago 4d *
grafana ?:3000 1/1 3m ago 4d count:1
mgr 2/2 5m ago 4d count:2
mon 3/5 5m ago 93s unmanaged
node-exporter ?:9100 1/3 5m ago 4d *
prometheus ?:9095 1/1 3m ago 4d count:1 9、使用以下命令为 ceph02 和 ceph03 添加标签“_admin”:
[ceph: rootceph01 /]# ceph orch host label add ceph02.novalocal _admin
Added label _admin to host ceph02.novalocal
[ceph: rootceph01 /]# ceph orch host label add ceph03.novalocal _admin
Added label _admin to host ceph03.novalocal
10、使用以下命令将 mon 和 mgr 组件部署到指定节点中
[ceph: rootceph01 /]# ceph orch apply mon --placementlabel:_admin
Scheduled mon update...
[ceph: rootceph01 /]# ceph orch apply mgr --placementlabel:_admin
Scheduled mgr update...2.3 添加OSD
1、使用以下命令将所有主机上的硬盘添加为 OSD
[ceph: rootceph01 /]# ceph orch apply osd --all-available-devices
Scheduled osd.all-available-devices update...2、添加完成后使用命令“ceph orch ps”查看所有主机上的组件3、 其他 ceph 常用操作
3.1 移除服务
1、首先将 ceph02 中的服务筛选出来具体命令如下2、首先删除命令“ceph orch apply name --unmanagedtrue”关闭集群组件的自动扩展
[ceph: rootceph01 /]# ceph orch apply crash --unmanagedtrue
Scheduled crash update...
[ceph: rootceph01 /]# ceph orch apply mon --unmanagedtrue
Scheduled mon update...
[ceph: rootceph01 /]# ceph orch apply mgr --unmanagedtrue
Scheduled mgr update...3、使用对应命令删除指定服务
[ceph: rootceph01 /]# ceph orch daemon rm crash.ceph02
Removed crash.ceph02 from host ceph02.novalocal
[ceph: rootceph01 /]# ceph orch daemon rm mon.ceph02 --force
Removed mon.ceph02 from host ceph02.novalocal
[ceph: rootceph01 /]# ceph orch daemon rm mgr.ceph02.bkrmmo
Removed mgr.ceph02.bkrmmo from host ceph02.novalocal3.2 移除OSD
1、使用以下命令停止ceph02中的osd
[ceph: rootceph01 /]# ceph orch daemon stop osd.0
Scheduled to stop osd.0 on host ceph02.novalocal
[ceph: rootceph01 /]# ceph orch daemon stop osd.1
Scheduled to stop osd.1 on host ceph03.novalocal
[ceph: rootceph01 /]# ceph orch daemon stop osd.2
Scheduled to stop osd.2 on host ceph01.novalocal2、待所有osd停止后使用以下命令移除osd
[ceph: rootceph01 /]# ceph osd rm 0
removed osd.0
[ceph: rootceph01 /]# ceph osd rm 1
removed osd.1
[ceph: rootceph01 /]# ceph osd rm 2
removed osd.2
[ceph: rootceph01 /]# 3、然后擦除对应磁盘的数据
[ceph: rootceph01 /]# ceph orch device zap ceph02.novalocal /dev/sdb --force
zap successful for /dev/sdb on ceph02.novalocal4、最后删除CURSH的osd映射
[ceph: rootceph01 /]# ceph osd crush rm osd.0
removed item id 0 name osd.0 from crush map5、等待CRUSH中的osd映射删除完成后关闭自动osd部署功能命令为
[ceph: rootceph01 /]# ceph orch apply osd --all-available-devices --unmanagedtrue
Scheduled osd.all-available-devices update...
[ceph: rootceph01 /]# ceph orch ls
NAME PORTS RUNNING REFRESHED AGE PLACEMENT
alertmanager ?:9093,9094 1/1 7m ago 5d count:1
crash 2/3 7m ago 35m unmanaged
grafana ?:3000 1/1 7m ago 5d count:1
mgr 2/2 7m ago 34m unmanaged
mon 2/5 7m ago 35m unmanaged
node-exporter ?:9100 3/3 8m ago 5d *
osd.all-available-devices 0 8m ago 12s unmanaged
prometheus ?:9095 1/1 7m ago 5d count:1