首页
首页
文章目录
  1. 简介
  2. 添加SSD,并配置分区
  3. 查看该节点中的journal所在位置
  4. 获取硬盘的UUID
  5. 配置步骤与思路

CEPH更换OSD中的Journal位置

简介

ceph部署完成后,在使用过程中,发现写入效率过低,所以就有了今天这篇文章,记录如何将ceph的journal切换到SSD硬盘上面。废话不多说 直接看操作记录。

添加SSD,并配置分区

没啥技术含量,关机,插入SSD开机。
我这边添加了一块100G的SSD硬盘。
如下图
添加SSD 添加SSD

因为我这台机器上面有俩个osd 所以需要划分俩个分区,每个分区20GB,分别用来放俩个osd的 journal日志

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@ceph-02 ~]# parted /dev/sdd
GNU Parted 3.1
使用 /dev/sdd
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt
(parted) mkpart 'ceph journal' 0% 20%
(parted) print
Model: VMware Virtual disk (scsi)
Disk /dev/sdd: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number Start End Size File system Name 标志
1 1049kB 21.5GB 21.5GB ceph journal

(parted) mkpart 'ceph journal' 21.5GB 41.5GB
(parted) quit
信息: You may need to update /etc/fstab.

查看该节点中的journal所在位置

命令为

1
ceph-disk list

注意,因为有一块osd是直接用的xfs分区所以没有显示出来osd.4的journal在/var/lib/ceph/osd/ceph-4/journal中

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@ceph-02 ~]# ceph-disk list
/dev/dm-0 other, xfs, mounted on /
/dev/dm-1 swap, swap
/dev/sda :
/dev/sda1 other, xfs, mounted on /boot
/dev/sda2 other, LVM2_member
/dev/sdb :
/dev/sdb1 ceph data, active, cluster ceph, osd.1, journal /dev/sdb2
/dev/sdb2 ceph journal, for /dev/sdb1
/dev/sdc other, xfs, mounted on /var/lib/ceph/osd/ceph-4
/dev/sdd :
/dev/sdd1 other, ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
/dev/sdd2 other, ebd0a0a2-b9e5-4433-87c0-68b6b72699c7

获取硬盘的UUID

命令为

1
ll /dev/disk/by-partuuid/ -l

回显信息

1
2
3
4
5
6
[root@ceph-02 ~]# ll /dev/disk/by-partuuid/ -l
总用量 0
lrwxrwxrwx 1 root root 10 8月 18 13:44 68e902fe-6feb-4bf2-9495-0c05e389d0be -> ../../sdd1
lrwxrwxrwx 1 root root 10 8月 18 13:44 8b594870-c1fd-438a-b03d-24cf48b22979 -> ../../sdd2
lrwxrwxrwx 1 root root 10 8月 18 13:40 b5a6e570-7b94-46b2-8a39-cc109f6b6963 -> ../../sdb2
lrwxrwxrwx 1 root root 10 8月 18 13:40 bd826bdf-9697-485c-ae22-bace8712f202 -> ../../sdb1

获取硬盘的UUID 获取硬盘的UUID

配置步骤与思路

我这里是osd.1 所以直接停止服务

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 给 Ceph 集群设置 noout 标志
ceph osd set noout
# 停止osd1 服务
systemctl stop ceph-osd@1
# 刷新数据到osd
ceph-osd -i 1 --flush-journal
# 备份journal
mv journal journal_bak
# 修改软连接到journal
ln -s /dev/disk/by-partuuid/68e902fe-6feb-4bf2-9495-0c05e389d0be /var/lib/ceph/osd/ceph-1/journal
# 将硬盘UUID写入到journal_uuid
echo 68e902fe-6feb-4bf2-9495-0c05e389d0be >journal_uuid
# 赋权给ceph
chown -R ceph:ceph /var/lib/ceph/osd/ceph-1/journal
chown -R ceph:ceph /dev/sdd1
# 初始化journal分区
ceph-osd -i 1 --mkjournal
# 查看分区是否正常
ceph-disk list | grep osd.1
# 启动服务
systemctl start ceph-osd@1
# 取消noout标志
ceph osd unset noout
支持一下
扫一扫,我会更有动力更新
  • 微信扫一扫
  • 支付宝扫一扫