OSD Journal 运维操作

部署创建

可以使用ceph-osd命令单独创建初始化OSD日志

1
ceph-osd -i {osd-id} --mkjournal

默认在/var/lib/ceph/osd/ceph-{osd.id}目录下的journal文件中初始化日志数据;也可以通过-c制定配置文件ceph.conf,再在配置文件中制定OSD日志所在路径。

配置

osd journal

journal所在的位置,默认为/var/lib/ceph/osd/{cluster}-{osd.id}/jouranl。可以是一个文件也可以是一个块设备。

osd jouranl size

日志的大小,不同版本其默认值也不一样。通常根据OSD盘的性能来设置其大小。
osd journal size = 2 * 写入带宽 * filestore max sync interval 写入带宽一般是固定的,所以可以根据filestore max sync interval来计算journal的大小。或者根据journal大小来设置filestore max sync interval

更换迁移

更换Journal盘有2种情况

Journal盘挂了

只能删除对应的OSD重新创建

Journal还在运行

  1. 设置noout标记
  2. 停止关联的OSD
  3. 下刷 journal 到 osd ceph-osd -i {osd.io} --flush-journal
  4. 删除旧的 journal 链接
  5. 重建journal 链接
  6. 重建 journal ceph-osd -i {osd.id} --mkjournal
  7. 启动关联的OSD
  8. 去除noout标记

参考&鸣谢