Ceph Multisite

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ceph Multisite相关的知识,希望对你有一定的参考价值。

参考技术A

说明: 多数据中心(multisite)功能oNest v6.1新增的功能,旨在实现异地双活,提供了备份容灾的能力。并且具有多个数据中心供用户选择,存放资源。

主节点在对外提供服务时,用户数据在主节点落盘后即向用户回应“写成功”应答,然后实时记录数据变化的相关日志信息。备节点则实时比较主备数据差异,并及时将差异化数据拉回备节点。异步复制技术适用于远距离的容灾方案,对系统性能影响较小。

一个realm代表了全局唯一的命名空间,这个命名空间由一个或者多个zonegroup,zonegroup可以包含一个或多个zone,zone包含了桶,桶里包依次存放了对象。

单个数据中心的配置一般由一个zonegroup组成,这个zonegroup包含一个zone和一个或者多个rgw实例。在这些rgw中可以平衡网关请求。

搭建realm前最好删除本地的pool,删除前请确认, 谨慎操作 。若仍需保留这些数据,可以不作删除。

创建一个全局唯一的命名空间,realm有领域、王国的意思。为了便于管理,规定在这个realm里所有的元数据名称都是全局唯一的,无法创建同名的用户(指uid)和桶(bucket或container)。

执行节点:beiji1.com

zonegroup是数据中心的概念。说到王国的概念,就不能缺少国王,或者我们中国古代的皇帝(master zone),所以这个zonegroup很特别,是zonegroup中的master。

执行节点:beiji1.com

为了前向兼容,所以会存在默认的zonegroup,需要删除。

master zonegroup的master zone,或者说是王国中的国王。中央集权,权力较大,所有用户的创建、删除、修改都必须通过他进行,其他zone创建、删除或者修改桶级别的元数据的所有请求都需要转发给他。不通过他创建的用户,则无法创建桶。

执行节点:beiji1.com

为了前向兼容,所以会存在默认的zone,需要删除。

各个zone拉取主主zone的数据中心结构都需要通过这个系统用户,需要获取他的AK和SK。系统用户就像一位总管。

在zonegroup中slave zone主要用于与master zone的数据异地同步备份。当master zone出现故障时,可以将slave zone切成master zone继续对外提供服务。待原master zone故障修复时,可以重新切回,不受数据丢失的影响。具体切换步骤请参照 Multisite结构调整 章节

执行节点:nanji1.com

为了在同一realm中,需要拉取master zonegroup的master zone的配置,此配置包含realm的信息,已经创建zonegroup的信息。并将其设置为默认的realm和zonegroup

slave zonegroup也是一个数据中心,只是在slave zonegroup上创建的用户无法实现同步,需要master zonegroup的master zone直接创建,不能进行请求转发,但是各个用户创建、删除bucket可以在slave zonegroup的各个zone上进行,他会将这些请求转发到master zonegroupo的master zone进行日志登记,然后通知各个zone进行同步。

执行节点:nanji2.com

执行节点:nanji2.com

执行节点:beiji2.com

同步状态查看
分别在zone所在的节点上执行以下命令查看状态

列出和获取节点的realm

列出realm的periods

列出和获取节点的zonegroup

获取zonegroup map

列出和获取节点的zone

通过命令行修改

通过配置文件修改

说明: 将在不同realm下的两个zonegroup组合成同一个realm,并且zonegroup中只含有master zone,不存在slave zone。

原拓扑结构
数据中心1(site1)

数据中心2(site2)

目标拓扑结构

说明: 如果一个zonegroup中主zone挂了,此时需要涉及到把从zone设置为主zone,待原主zone恢复后,需要切换回来。

将原从zone切换为主zone:

原主zone故障恢复后,将原主zone设置为主zone。

使用以下的步骤可以将使用默认的zonegroup和zone的数据中心迁移到多数据中心

ceph对象网关通过placement targets进行存 储桶 对象 的数据,通过placement target来指定桶和对象的存储池。如果不配置placement targets,桶和对象将会存到网关实例所在zone配置的默认存储池中。

存储策略给对象网关提供了一个获得存储策略的权限,比如,指定特殊的存储类型(SSDs,SAS drivers, SATA drivers)

说明: 本节主要涉及到zone和zonegroup关于placement的配置,以下操作以配置纠删码(EC)存储池为例,说明多数据中心的placement配置规则和使用方法。

增加以下内容:(以单节点ceph集群为例)

设置修改后的crush map

以上是关于Ceph Multisite的主要内容,如果未能解决你的问题,请参考以下文章

ceph 的安装和维护

ceph--Ceph 物理和逻辑结构

Ceph浅析笔记Ceph是什么.md

ceph

ceph安装部署

ceph--Ceph RBD 接口和工具