论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
虚拟化.超融合.云计算
›
公有云
›
cephadm离线摆设及curushmap
cephadm离线摆设及curushmap
魏晓东
金牌会员
|
2024-7-27 14:43:40
|
显示全部楼层
|
阅读模式
楼主
主题
825
|
帖子
825
|
积分
2475
预备:
体系盘raid1或raid5,数据盘直通或raid0,电口为集群网络,用作osd守护历程之间的复制、恢复、心跳,光口为存储网络,用作对外存储流量
下载cephadm:https://github.com/ceph/ceph/raw/octopus/src/cephadm/cephadm
yum install --downloadonly docker-ce --downloaddir=/root/offline-pkg/docker-ce
yum install --downloadonly python3 --downloaddir=/root/offline-pkg/python3
添加官方源ceph.repo,可更换为国内源
./cephadm add-repo --release Octopus
yum install --downloadonly cephadm --downloaddir=/root/offline-pkg/cephadm
yum install --downloadonly ceph-common --downloaddir=/root/offline-pkg/ceph-common
Default container images
DEFAULT_IMAGE = ‘quay.io/ceph/ceph:v15’
DEFAULT_IMAGE_IS_MASTER = False
DEFAULT_PROMETHEUS_IMAGE = ‘quay.io/prometheus/prometheus:v2.18.1’
DEFAULT_NODE_EXPORTER_IMAGE = ‘quay.io/prometheus/node-exporter:v0.18.1’
DEFAULT_ALERT_MANAGER_IMAGE = ‘quay.io/prometheus/alertmanager:v0.20.0’
DEFAULT_GRAFANA_IMAGE = ‘quay.io/ceph/ceph-grafana:6.7.4’
所有节点:
设置主机名:
hostnamectl set-hostname ceph1
hostnamectl set-hostname ceph2
配置hosts解析:
cat >> /etc/hosts <<EOF
ip1 ceph1
ip2 ceph2
ip3 ceph3
EOF
时间同步至第一节点:
vi /etc/chrony.conf
server ceph1 iburst
systemctl restart chronyd
systemctl enable chronyd
安装docker-ce、python3:
rpm -ivh /root/ceph-install/offline-pkg/docker-ce/
.rpm
rpm -ivh /root/ceph-install/offline-pkg/python3/
.rpm
docker load -i /root/offline-pkg/image/ceph.tar
docker load -i /root/offline-pkg/image/ceph-grafana.tar
docker load -i /root/offline-pkg/image/prometheus.tar
docker load -i /root/offline-pkg/image/alertmanager.tar
docker load -i /root/offline-pkg/image/node-exporterr.tar
ceph1节点:
时间源:
vi /etc/chrony.conf
allow all
local stratum 10
修改后的离线版cephadm添加实行权限
chmod +x cephadm
./cephadm --help
安装ceph-common、cephadm:
rpm -ivh /root/ceph-install/offline-pkg/ceph-common/*.rpm
ceph -v
rpm -ivh /root/ceph-install/offline-pkg/cephadm/*.rpm
which cephadm
引导新集群:
cephadm bootstrap --mon-ip ip1 --cluster-network ip/mask
引导下令产生以下效果:
1、为本地主机上创建新集群的monitor和manager守护程序
2、ssh密钥:/root/.ssh/authorized_keys
3、与新集群通讯的最小配置文件:/etc/ceph/ceph.conf
4、client.admin的特权级管理密钥的副本放在/etc/ceph/ceph.client.admin.keyring
5、公钥副本放在/etc/ceph/ceph.pub
成功如下所示:
Ceph Dashboard is now available at:
URL: https://ceph1:8443/
User: admin
Password: 28n1ce5qc8
复制代码
You can access the Ceph CLI with:
sudo /usr/sbin/cephadm shell --fsid 569eaaec-d4f0-11ed-8a92-000c29737e01 -c /etc/ceph/ceph.conf -k /etc/ceph/ceph.client.admin.keyring
复制代码
Please consider enabling telemetry to help improve Ceph:
ceph telemetry on
复制代码
For more information see:
https://docs.ceph.com/docs/master/mgr/telemetry/
复制代码
Bootstrap complete.
ceph1公钥免密:
ssh-copy-id -f -i /etc/ceph/ceph.pub ceph2
ssh-copy-id -f -i /etc/ceph/ceph.pub ceph3
添加新主机
ceph orch host add ceph2
ceph orch host add ceph3
若成功会自动扩展mon和mgr节点
ceph -s
安装osd
前置条件:设备无分区、无lvm相关状态、无已挂载、无文件体系、无Ceph Bluestore存储引擎、大于5G
查看所有osd:ceph orch device ls
查看单机osd:ceph orch device ls --hostname=ip --wide --refresh
测试全安装:ceph orch apply osd --all-available-devices --dry-run
正式全安装:ceph orch apply osd --all-available-devices
单主机安装:ceph orch daemon add osd ip:/dev/标识
默认情况:集群内发现新硬盘会自动创建osd;若移除osd,其上数据会自动迁徙,可以通过下令禁用该功能:ceph orch apply osd --all-available-devices --unmanaged=true
补充
删除单个osd:ceph orch osd rm <osd_id(s)> [–replace] [–force]
停止删除osd:ceph orch osd rm stop <osd_id(s)>
删除单机上的所有osd:ceph orch device zap
删除主机:ceph orch host drain
查看删除历程:ceph orch osd rm status
查看是否单机是否包罗ceph相关守护历程:ceph orch ps
逼迫删除:ceph orch host rm --offline --force
扫描设备:ceph orch host rescan [–with-summary]
其他
RGW:是Ceph对象存储网关服务RADOS Gateway的简称,是一套基于librado接口封装而实现的FastCGI服务
libvirt:是用于管理虚拟化平台的开源api、后台程序、管理工具。它可以用于管理kvm、Xen、esxi,qemu等
librbd:是ceph基于对象存储librados之上实现的块存储接口librbd、krbdqemu,客户端都是通过它举行块设备卷的io访问
libvirt的rbd存储需要在其他ceph节点上能实行ceph的下令,以是:
mkdir -p /etc/ceph
scp /etc/ceph/ceph* ceph2:/etc/ceph
scp /etc/ceph/ceph* ceph3:/etc/ceph
crushmap
1、crush算法通过计算数据存储位置来确定如何存储和检索,授权客户端直接连接osd
2、对象通过算法被切分成数据片,分布在不同的osd上
3、提供很多种的bucket,最小的节点是osd
#结构
osd (or device)
host #主机
chassis #机架
rack #机柜
row
pdu
pod
room #机房
datacenter #数据中心
zone #区域
region #地区
root #最高:根
#查看crushmap
ceph osd crush tree
ceph osd tree
# 查看详细
ceph osd crush dump
#查看规则
ceph osd crush rule ls
#某个规则关联起来的pool
ceph osd pool get xxxxx crush_rule
复制代码
举例
环境: 一个pool包罗3个host,多个osd,通过不同crushmap rule分隔,数据按照不同pool rule落盘。
1、先做crushmap文件备份
2、修改引起大量pg变更,后期不要动
3、调整配置osd crush update on start = false,
#创建root类型bucket,ssd是名称
ceph osd crush add-bucket ssd-bucket root
# 添加host类型bucket
ceph osd crush add-bucket node-1-ssd-bucket host
ceph osd crush add-bucket node-2-ssd-bucket host
# host bucket移到root bucket中去
ceph osd crush move node-1-ssd-bucket root=ssd-bucket
ceph osd crush move node-2-ssd-bucket root=ssd-bucket
# 把osd移到host bucket中
ceph osd crush move osd.3 host=node-1-ssd-bucket root=ssd-bucket
ceph osd crush move osd.4 host=node-2-ssd-bucket root=ssd-bucket
ceph osd tree
#规则名称、rootbucket名称、容灾机制(默认default)、host类型、磁盘类型
#创建一条名为ssd-demo的新rule,将基于ssd的OSD作为复制池的目标
ceph osd crush rule create-replicated ssd-rule ssd-bucket host ssd
#关联pool和规则
ceph osd pool set ceph-ssd crush_rule ssd-rule
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
魏晓东
金牌会员
这个人很懒什么都没写!
楼主热帖
基础常用dos命令
Unity技术手册 - Shader实现灵魂状态 ...
云原生之旅 - 14)遵循 GitOps 实践的 ...
Vulnhub靶机-Al-Web-1
火山引擎 DataLeap 计算治理自动化解决 ...
.NET主流的几款重量级 ORM框架 ...
vuluhub_jangow-01-1.0.1
2022年总结-博客篇
Android studio连接MySQL并完成简单的 ...
数仓实践丨常量标量子查询做全连接导致 ...
标签云
挺好的
服务器
快速回复
返回顶部
返回列表