1
2
3
4
5
6
7
作者:李晓辉

联系方式:

1. 微信:Lxh_Chat

2. 邮箱:939958092@qq.com

RBD镜像

可以将 RBD 镜像从一个红帽 Ceph 存储集群自动复制到另一个远程集群。这种机制会利用异步方式,通过网络来镜像来源(主要)RBD 镜像和目标(次要)RBD 镜像。如果包含主要 RBD 镜像的集群变得不可用,则可以从远程集群故障转移到次要 RBD 镜像,并重启使用它的应用。

从来源 RBD 镜像故障转移到镜像的 RBD 镜像时,您必须降级来源 RBD 镜像并升级目标 RBD 镜像。降级的镜像会变为锁定且不可用的状态。升级的镜像会变为可用状态,可以在读写模式中访问。

RBD 镜像功能要求 rbd-mirror 守护进程。rbd-mirror 守护进程从远程对等集群拉取镜像更新,并将其应用到本地集群镜像。

支持的镜像配置

RBD镜像支持两种配置:

  1. 单向镜像或active-passive

  2. 双向镜像或active-active

单向镜像或主动-被动

在单向模式中,一个集群的 RBD 镜像可以读写模式访问,远程集群中包含镜像。镜像代理在远程集群上运行。这种模式可以支持配置多个次要集群。

双向镜像或主动-主动

在双向模式中,Ceph 使来源与目标对(主要与次要)保持同步。此模式仅允许在两个集群之间进行复制,您也必须在每个集群上配置镜像代理。

受支持的镜像模式

RBD镜像支持两种模式: pool模式和image模式

pool模式

在池模式下,Ceph 自动为被镜像池中创建的每一个 RBD 镜像启用镜像功能。当在来源集群上的池中创建镜像时,Ceph 会在远程集群中自动创建目标镜像

image模式

在镜像模式中,可以选择性地为被镜像池中的个别 RBD 镜像启用镜像功能。在这种模式中,您必须显式选择要在两个集群之间复制的 RBD 镜像

RBD 镜像的镜像状态

基于日志的镜像

此模式通过 RBD 日志镜像功能来确保两个红帽 Ceph 存储集群之间的时间点和崩溃一致性复制。对 RBD 镜像的每一次写入首先要记录到相关日志中,然后再修改实际镜像。远程集群从此日志中读取,并将更新内容重播到其镜像的本地副本。

基于快照的镜像

基于快照的镜像使用定期调度或手动创建的 RBD 镜像快照,在两个红帽 Ceph 存储集群之间复制崩溃一致性 RBD 镜像。远程集群确定两个镜像快照之间的数据或元数据更新,并将增量复制到镜像的本地副本。在故障转移场景中,必须先同步两个快照之间的完整增量,然后才能使用。任何部分应用的增量集都会在故障转移时回滚。