第 24 章 OSD 从 FileStore 迁移到 BlueStore

完成并验证升级过程后,您必须将 FileStore OSD 迁移到 BlueStore。您必须一次完成一个节点。以下流程使用 ceph-ansible 完成迁移。只有由 director 部署 Ceph 集群时才应用此步骤。

24.1. 检查集群是否在运行 FileStore,因此需要迁移

流程

  1. 在具有 Ceph MON 容器的节点上,以 heat-admin 用户身份登录,如 Controller 节点或单机 Ceph MON 节点。例如,在标准 overcloud 部署中,overcloud-controller-1 使用 Ceph MON 容器。
  2. 查询 Ceph 集群,以查看 OSD 使用什么驱动程序:

    [heat-admin@overcloud-controller-1 ~]$ sudo -i
    [root@overcloud-controller-1 ~]# podman exec -it ceph-mon-overcloud-controller-1 sh -c "ceph -f json osd metadata" | jq -c 'sort_by(.hostname) | .[] | ["host", .hostname, "osd_id", .id, "objectstore", .osd_objectstore]'
    [root@overcloud-controller-1 ~]#
  3. 如果有任何行返回 "objectstore": "filestore",则该节点需要 OSD 迁移。
警告

迁移时间可能会因集群大小而异。如果您有一个非常大的集群,迁移时间与该集群中的 OSD 数量成比例,以及保存的数据量。确保尽快完成迁移,以便您的环境不在混合架构场景中,从而影响性能。

警告

因为使用 Red Hat Ceph Storage (RHCS) 4 版本的 ceph-ansible 管理基于 FileStore 的 OSD 不被支持,所以在运行任何堆栈更新前先完成迁移。