Openstack Ceph 添加日志盘的操作步骤如下:
1.清理分区:
#sgdisk -o /dev/sdf
2.创建journal分区:
ssd 以 /dev/sd<X> 指代,分区序号以 <Y> 指代(在 ssd 创建的第一个分区, Y 即是 1,创建第 2 个时, Y 即是 2),命令:
#sgdisk -n <Y>:0:+5G -t <Y>:45B0969E-9B03-4F30-B4C6-B4B80CEFF106 -c <Y>:"ceph journal" /dev/sd<X>
其中, <Y>:0:+5G 表示,这个新建的序号为 <Y> 的分区的起点会自动计算,整个分区的大小是 5G;另外,45B0969E-9B03-4F30-B4C6-B4B80CEFF106 是固定用法,不能改动。
#sgdisk -n 1:0:+5G -t 1:45B0969E-9B03-4F30-B4C6-B4B80CEFF106 -c 1:"ceph journal" /dev/sdf
3.找到journal分区的partition UUID:
#sgdisk -i 1 /dev/sdf
Partition unique GUID:” 后面的字符串,即是 journal 分区的 uuid ,下面以 <journal_part_uuid> 指代。
4.创建ceph journal日志分区:
sgdisk -c <Y>:"ceph journal (osd.<osd_id>)" /dev/sd<X>
#sgdisk -c 1:"ceph journal (osd.2)" /dev/sdf
5.停止硬盘 osd 服务进程:
#ceph osd set noout
#systemctl stop osd.2
6.将硬盘原来 journal 文件中的内容写入到 osd 数据目录,以防出现数据损坏:
#ceph-osd -i 2 --flush-journal
7.在 Linux 系统中,会为每一个硬盘分区创建一个以分区 uuid 命名的软链接设备文件,即 /dev/disk/by-partuuid/<journal_part_uuid> 。为这个软链接再创建一个软链接,替换原来的 journal 文件:
#ln -sf /dev/disk/by-partuuid/<journal_part_uuid> /var/lib/ceph/osd/ceph-2/journal
8. 重新初始化硬盘 osd 的 journal:
#ceph-osd -i 2 --mkjournal
重新启动硬盘 osd:
#systemctl start ceph-osd@2
9.设置ceph osd noout状态:
#ceph osd unset noout
10.查看ceph集群状态:
#ceph -s