介绍,目前已经创建一个名为ceph的Ceph集群,和一个backup(单节点)Ceph集群,是的这两个集群的数据可以同步,做备份恢复功能
一、配置集群的相互访问
1.1 安装rbd mirror
rbd-mirror是一个新的守护进程,负责将一个镜像从一个集群同步到另一个集群
如果是单向同步,则只需要在备份集群上安装
如果是双向同步,则需要在两个集群上都安装
rbd-mirror需要连接本地和远程集群
每个集群只需要运行一个rbd-mirror进程,必须手动按章
[root@ceph5 ceph]# yum install rbd-mirror
1.2 互传配置文件
Ceph集群----->backu盘集群
[root@ceph2 ceph]# scp /etc/ceph/ceph.conf /etc/ceph/ceph.client.admin.keyring ceph5:/etc/ceph/
[root@ceph5 ceph]# ll -h
[root@ceph5 ceph]# chown ceph.ceph -R ./
[root@ceph5 ceph]# ll
[root@ceph5 ceph]# ceph -s --cluster ceph
cluster: id: 35a91e48-8244-4e96-a7ee-980ab989d20d health: HEALTH_OK services: mon: 3 daemons, quorum ceph2,ceph3,ceph4 mgr: ceph4(active), standbys: ceph2, ceph3 osd: 9 osds: 9 up, 9 in data: pools: 2 pools, 192 pgs objects: 119 objects, 177 MB usage: 1500 MB used, 133 GB / 134 GB avail pgs: 192 active+clean
1.3 把配置文件从从端传到主端
[root@ceph5 ceph]# scp /etc/ceph/backup.conf /etc/ceph/backup.client.admin.keyring ceph2:/etc/ceph/
[root@ceph2 ceph]# ll
[root@ceph2 ceph]# chown -R ceph.ceph /etc/ceph/
[root@ceph2 ceph]# ll
[root@ceph2 ceph]# ceph -s --cluster backup
cluster: id: 51dda18c-7545-4edb-8ba9-27330ead81a7 health: HEALTH_OK services: mon: 1 daemons, quorum ceph5 mgr: ceph5(active) osd: 3 osds: 3 up, 3 in data: pools: 1 pools, 64 pgs objects: 5 objects, 133 bytes usage: 5443 MB used, 40603 MB / 46046 MB avail pgs: 64 active+clean
二、 配置镜像为池模式
如果是单向同步,则只需要在主集群修改,如果是双向同步,需要在两个集群上都修改,(如果只启用单向备份,则不需要在备份集群上开启镜像模式)
rbd_default_features = 125
也可不修改配置文件,而在创建镜像时指定需要启用的功能
2.1 创建镜像池
[root@ceph2 ceph]# ceph osd pool create rbdmirror 32 32
[root@ceph5 ceph]# ceph osd pool create rbdmirror 32 32
[root@ceph2 ceph]# yum -y install rbd-mirror
[root@ceph2 ceph]# rbd mirror pool enable rbdmirror pool --cluster ceph
[root@ceph2 ceph]# rbd mirror pool enable rbdmirror pool --cluster backup
2.2 增加同伴集群
需要将ceph和backup两个集群设置为同伴,这是为了让rbd-mirror进程找到它peer的集群的存储池
[root@ceph2 ceph]# rbd mirror pool peer add rbdmirror client.admin@ceph --cluster backup
[root@ceph2 ceph]# rbd mirror pool peer add rbdmirror client.admin@backup --cluster ceph
[root@ceph2 ceph]# rbd mirror pool info --pool=rbdmirror --cluster backup
[root@ceph2 ceph]# rbd mirror pool info --pool=rbdmirror --cluster ceph
[root@ceph2 ceph]# rbd mirror pool status rbdmirror
[root@ceph2 ceph]# rbd mirror pool status rbdmirror --cluster backup
2.3 创建RBD并开启journaling
在rbdmirror池中创建一个test镜像
[root@ceph2 ceph]# rbd create --size 1G rbdmirror/test
[root@ceph2 ceph]# rbd ls rbdmirror
在从端查看,为空并没有同步,是因为没有开启journing功能,从端没有开启mirror
[root@ceph2 ceph]# rbd ls rbdmirror --cluster backup
[root@ceph2 ceph]# rbd info rbdmirror/test
rbd image 'test': size 1024 MB in 256 objects order 22 (4096 kB objects) block_name_prefix: rbd_data.fbcd643c9869 format: 2 features: layering,