分布式存储ceph对象存储配置zone同步

栏目: 服务器 · 发布时间: 5年前

内容简介:Ceph天生带两地三中心概念,我们要去的双活就是两个数据中心,Ceph两数据中心可以在一个集群也可以在不同的集群中。zone:包含多个RGW实例的一个逻辑概念。zone不能跨集群。同一个zone的数据保存在同一组pool中。zonegroup:一个zonegroup如果包含1个或多个zone。如果一个zonegroup包含多个zone,必须指定 一个zone作为master zone,用来处理bucket和用户的创建。一个集群可以创建多个zonegroup,一个zonegroup也可以跨多个集群。

一、架构:

Ceph天生带两地三中心概念,我们要去的双活就是两个数据中心,Ceph两数据中心可以在一个集群也可以在不同的集群中。

二、概念:

zone:包含多个RGW实例的一个逻辑概念。zone不能跨集群。同一个zone的数据保存在同一组pool中。

zonegroup:一个zonegroup如果包含1个或多个zone。如果一个zonegroup包含多个zone,必须指定 一个zone作为master zone,用来处理bucket和用户的创建。一个集群可以创建多个zonegroup,一个zonegroup也可以跨多个集群。

realm:一个realm包含1个或多个zonegroup。如果realm包含多个zonegroup,必须指定一个zonegroup为master zonegroup, 用来处理系统操作。一个系统中可以包含多个realm,多个realm之间资源完全隔离。

分布式存储ceph对象存储配置zone同步

分布式存储ceph对象存储配置zone同步

RGW多活方式是在同一zonegroup的多个zone之间进行,即同一zonegroup中多个zone之间的数据是完全一致的,用户可以通过任意zone读写同一份数据。 但是,对元数据的操作,比如创建桶、创建用户,仍然只能在master zone进行。对数据的操作,比如创建桶中的对象,访问对象等,可以在任意zone中 处理。

三、在Cluster1集群上配置master zone

1、创建realmradosgw-admin realm create --rgw-realm=earth --default

2、创建master zonegroup

先删除默认的zonegroup

radosgw-admin zonegroup delete --rgw-zonegroup=default 

创建一个为china的zonegroup

radosgw-admin zonegroup create --rgw-zonegroup=china --endpoints=ceph-1:7480 --master --default 

3、创建master zone

先删除默认的zone

adosgw-admin zone delete --rgw-zone=default 

创建一个为huabei的zone

radosgw-admin zone create --rgw-zonegroup=china --rgw-zone=huabei --endpoints=ceph-1:7480 --default --master 

4、创建一个system账户用于和huadong zone同步

radosgw-admin user create --uid="sync-user" --display-name="sync user" --system 

5、用创建system账户产生的access 和secret更新zone配置

radosgw-admin zone modify --rgw-zone=huabei --access-key={access-key} --secret={secret} 

6、更新period

radosgw-admin period update --commit 

7、配置ceph.conf

[client.rgw.ceph-1] 
host = ceph-1 
rgw frontends = "civetweb port=7480" 
rgw_zone=huabei 

四、在Cluster2集群上配置slave zone

1、从master zone拉取realm

radosgw-admin realm pull --url=ceph-2:7480 --access-key={access-key} --secret={secret} 

注意:这里的access key 和secret是master zone上system 账户的access key和secret

2、拉取period

radosgw-admin period pull --url=ceph-2:7480 --access-key={access-key} --secret={secret} 

注意:这里的access key 和secret是master zone上system 账户的access key和secret

3、创建slave zone

radosgw-admin zone create --rgw-zonegroup=china --rgw-zone=huadong \ 
 --access-key={system-key} --secret={secret} \ 
 --endpoints=ceph-2:7480 

注意:这里的access key 和secret是master zone上system 账户的access key和secret

4、更新period

radosgw-admin period update --commit 

注意:如果出现认证错误,重启master zone的实例服务

配置ceph.conf

[client.rgw.ceph-2] 
host = ceph-2 
rgw frontends = "civetweb port=7480" 
rgw_zone=huadong 

五、验证zone之间数据同步

1、在secondary zone节点执行

radosgw-admin sync status 

2、在master zone节点上创建用户

radosgw-admin user create --uid="testuser" --display-name="First User" 

3、用s3客户端 创建桶,并put 对象

注意: 在slave zone节点上也要创建相同的用户才会看到创建的桶,和上传的对象。


以上所述就是小编给大家介绍的《分布式存储ceph对象存储配置zone同步》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

PHP和MySQL Web开发

PHP和MySQL Web开发

Luke Welling、Laura Thomson / 武欣、邵煜 / 机械工业出版社 / 2005-12 / 78.00元

本书将PHP开发与MySQL应用相结合,分别对PHP和MySQL做了深入浅出的分析,不仅介绍PHP和MySQL的一般概念,而且对PHP和MySQL的Web应用做了较全面的阐述,并包括几个经典且实用的例子。一起来看看 《PHP和MySQL Web开发》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

SHA 加密
SHA 加密

SHA 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具