bluestore的osd自启动
前言
自启动相关的文章很多,有分析的很详细的文章,这里就不做赘述,本篇讲述的是什么情况下用,怎么用的问题
使用场景
一台机器的系统盘坏了,需要重装系统,相关的一些信息没有了,但是上面的数据盘还是在的,所以需要保留
某个磁盘需要换台机器进行启动,但是那台机器上没有相关的信息
处理过程
自启动的相关处理
先扫描下lvm
vgscan
pvscan
lvscan
本篇的场景是lvm没有损坏的情况,如果lvm本身损坏了,那么就是去恢复lvm的问题,本篇的基础是有一个完整的osd的数据盘,也就是磁盘本身是没问题的
查询osd相关的磁盘信息
lvdisplay |grep "LV Path"|grep ceph
LV Path /dev/ceph-b748833c-b646-4b1c-a2ef-f50576b0a165/osd-block-38657557-5ce3-43a1-861a-e690c880ddf6
LV Path /dev/ceph-aa2304f1-a098-4990-8f3a-46f176d4cece/osd-block-f8a30c38-48fd-465c-9982-14cd22d00d21
LV Path /dev/ceph-8b987af1-f10a-4c9a-a096-352e63c7ef83/osd-block-07d1c423-8777-4eea-8a1d-34dc06f840ae
LV Path /dev/ceph-f39ac1da-2811-4486-8690-4ccfb1e45e18/osd-block-0cb9186e-6512-4582-a30d-9fb4cf03c964
LV Path /dev/ceph-6167d452-a121-4602-836a-ab378cf6eccc/osd-block-2e77e3b5-9d5c-4d5f-bf18-c33ddf0bbc0a
注意osd-block后面的字段,这个信息是会记录在osd dump输出信息的,我们查询下osd-block-38657557-5ce3-43a1-861a-e690c880ddf6这个的信息
[root@node1 ~]# ceph osd dump|grep 38657557-5ce3-43a1-861a-e690c880ddf6
osd.31 down in weight 1 up_from 395 up_thru 395 down_at 399 last_clean_interval [391,392) 66.66.66.60:6830/10392 66.66.66.60:6847/10392 66.66.66.60:6875
/10392 66.66.66.60:6882/10392 exists 38657557-5ce3-43a1-861a-e690c880ddf6
做自动挂载
可以得到如下信息,osd.31的lvm标记为38657557-5ce3-43a1-861a-e690c880ddf6
systemctl start ceph-volume@lvm-31-38657557-5ce3-43a1-861a-e690c880ddf6
systemctl enable ceph-volume@lvm-31-38657557-5ce3-43a1-861a-e690c880ddf6
检查下挂载
[root@node1 ~]# df -h|grep osd|grep 31
tmpfs 48G 24K 48G 1% /var/lib/ceph/osd/ceph-31
可以看到挂载的操作是通过下面这个命令进行挂载的,然后enable下就是自启动了
systemctl start ceph-volume@lvm-osdid-osdfsid
做自启动osd
启动osd
[root@node1 ~]# systemctl start ceph-osd@31
[root@node1 ~]# systemctl enable ceph-osd@31
Created symlink from /etc/systemd/system/ceph-osd.target.wants/ceph-osd@31.service to /usr/lib/systemd/system/ceph-osd@.service.
检查启动情况
[root@node1 ~]# ps -ef|grep osd|grep 31
ceph 31177 1 1 10:42 ? 00:00:02 /usr/bin/ceph-osd -f --cluster ceph --id 31 --setuser ceph --setgroup ceph
那么自挂载,自启动的过程就是上面的操作
脚本处理整机的osd
如果觉得一个个去查询太麻烦了,那就准备脚本就好了
创建startosd.sh脚本写入下面的内容
#! /usr/bin/bash
# @Author:momo
# @Time: 2019/9/4 11:05
vgscan
pvscan
lvscan
osddump=`ceph osd dump`
for osdfsid in `lvdisplay |grep "LV Path"|grep ceph|awk '{print $3}'|cut -d "/" -f 4|cut -d - -f 3-7`
do
osdid=`echo "${osddump}"|grep $osdfsid|awk '{print $1}'|cut -d . -f 2`
echo "start $osdid with fsid $osdfsid"
# auto mount
systemctl start ceph-volume@lvm-$osdid-$osdfsid
systemctl enable ceph-volume@lvm-$osdid-$osdfsid
# auto start
systemctl start ceph-osd@$osdid
systemctl enable ceph-osd@$osdid
done
总结
本篇是因为做对比测试,不想重搭集群,把36盘位的磁盘全部换一个平台测试,想直接启动起来测试,然后就有了这篇文章记录,在filestore下面的处理逻辑比较简单,可以用fstab,可以用trigger,可以用mount tmp检查后手动挂载,方式很多,从Jewel版本开始启动相关的都慢慢集成到数据本身,用服务去控制了
变更记录
| Why | Who | When |
|---|---|---|
| 创建 | 武汉-运维-磨渣 | 2018-09-04 |
bluestore的osd自启动的更多相关文章
- Ceph OSD从filestore 转换到 bluestore的方法
前言 前段时间看到豪迈的公众号上提到了这个离线转换工具,最近看到群里有人问,找了下没什么相关文档,就自己写了一个,供参考 实践步骤 获取代码并安装 git clone https://github.c ...
- HEALTH_WARN too few PGs per OSD (21 < min 30)解决方法
标签(空格分隔): ceph,ceph运维,pg 集群环境: [root@node3 ~]# cat /etc/redhat-release CentOS Linux release 7.3.1611 ...
- ceph luminous版部署bluestore
简介 与filestore最大的不同是,bluestore可以直接读写磁盘,即对象数据是直接存放在裸设备上的,这样解决了一直被抱怨的数据双份写的问题 Bluestore直接使用一个原始分区来存放cep ...
- openstack高可用集群21-生产环境高可用openstack集群部署记录
第一篇 集群概述 keepalived + haproxy +Rabbitmq集群+MariaDB Galera高可用集群 部署openstack时使用单个控制节点是非常危险的,这样就意味着单个节 ...
- ceph mimic版本 部署安装
ceph 寻址过程 1. file --- object映射, 把file分割成N个相同的对象 2. object - PG 映射, 利用静态hash得到objectID的伪随机值,在 "位 ...
- TUNING FOR ALL FLASH DEPLOYMENTS
Ceph Tuning and Best Practices for All Flash Intel® Xeon® ServersLast updated: January 2017 TABLE OF ...
- centos-7.4_ceph-12.2.4部署
centos-7.4_ceph-12.2.4部署: 前言: 基于centos7.4安装ceph-luminous的主要步骤有一下几点: 1.安装centos7.4的系统,并配置网卡 2.安装前的环境配 ...
- CentOS7.5 部署Ceph luminous
环境 两台CentOS7.5,每台各两块硬盘部署OSD public network = 10.0.0.0/24 cluster network = 172.16.0.0/24 导入ceph的rpm ...
- openstack高可用集群16-ceph介绍和部署
Ceph Ceph是一个可靠.自动重均衡.自动恢复的分布式存储系统,根据场景划分可以将Ceph分为三大块,分别是对象存储.块设备和文件系统服务.块设备存储是Ceph的强项. Ceph的主要优点是分布式 ...
随机推荐
- jenkins 构建 job 并获取其状态的实现
目录 BACKGROUND INVESTIGATION I 1. 连续触发的相同 job 构建不会重复入队 2. 连续触发的不同 job 构建会各自入队 3. 参数变动的相同 job 构建将分别入队 ...
- docker-阿里云加速
系统版本 centos7 阿里云登录 ->容器镜像服务->镜像加速器 复制下面的直接执行即可 sudo mkdir -p /etc/docker sudo tee /etc/doc ...
- nginx优化: timeout超时配置
一,为什么要做连接超时设置? nginx在保持着与客户端的连接时,要消耗cpu/内存/网络等资源, 如果能在超出一定时间后自动断开连接, 则可以及时释放资源,起到优化性能.提高效率的作用 说明:刘宏缔 ...
- centos8平台使用slabtop监控slab内存的状态
一,slabtop 所属的包: [root@yjweb ~]# whereis slabtop slabtop: /usr/bin/slabtop /usr/share/man/man1/slabto ...
- git 撤销push到远程仓库的无用commit
一 回退代码 git reset <版本号> --soft // 软回退 - 所有的commit修改都被撤销了,且修改的代码统一撤回到暂存区 git reset <版本号> - ...
- Jquery特效之=》仿京东多条件筛选特效
仿京东多条件筛选特效 * { margin: 0; padding: 0; list-style-type: none } a, img { border: 0 } body { font: 12px ...
- sync-player:使用websocket实现异地同步播放视频
本文作者:星空无限 原文链接:https://liyangzone.com/2020/09/20/前端/sync-player/ GoEasy已获作者授权转载,GoEasy转载时有改动,感谢作者的分享 ...
- JUC---13各种锁
一.公平锁与非公平锁 公平锁:加锁前检查是否有排队等待的线程,优先排队等待的线程,先来先得 非公平锁:加锁时不考虑排队等待问题,直接尝试获取锁,获取不到自动到队尾等待 非公平锁性能比公平锁高5~10倍 ...
- JUC---04Lock(二)ReentrantReadWriteLock
1.读写锁 分为读锁和写锁,多个读锁不互斥,读锁与写锁互斥,这是由jvm自己控制的,你只要上好相应的锁即可.如果你的代码只读数据,可以很多人同时读,但不能同时写,那就上读锁:如果你的代码修改数据,只能 ...
- Luogu P3846 [TJOI2007] 可爱的质数/【模板】BSGS
题意 给定 \(y,z,p\),求最小的正整数 \(x\) 满足 \(y^x\equiv z\bmod p\),保证 \(p\) 是质数. \(\texttt{Data Range:}2\leq y, ...