写在前面的槽点
glusterfs该功能在业务闲暇时段同步数据,达到容灾的一个功能,也是比较难的一块,主要的坑分两点:
1,redhat7中没有对应的命令补全,这个就很糟心了
2,红帽3.1在之前的基础上增加了很多补丁包,实际上就是shell脚本,嗯,这些脚本的路径对萌新来说不好找,然后找到了打开一看,更糟心
0、目的
通过指定账号完成简单数据的区域复制,glusterfs区域同步可以设置同步频率、主卷删除数据备卷是否删除等,今天我们搭建一个简单的区域同步就行。
声明:
mastervol:主卷,存储数据,业务实际使用的卷,节点之一为servera
salvevol:备份的卷,根据我们的设置从mastervol中复制数据,salvevol所在的节点与mastervol所在的节点任意一个都不重合(不然备什么份),节点之一为servere
思路:
1)、在servera上设置共享存储及账号geoaccount免密登录servere
2)、在servere上创建数据同步的挂载点
3)、在servere上配置挂载点的信息
4)、在servera上创建数据同步的密匙
5)、在servere上将数据同步密匙正确的配置
6)、在servera上设置数据同步方式并开启同步
7)、查验是否成功
1、配置共享存储及免密
servera上
gluster volume list
gluster volume set all cluster.enable-shared-storage enable
ssh-keygen
ssh-copy-id geoaccount@servere
2、创建共享存储的挂载点
servere上
mkdir -m 711 /var/mountbroker-root #让geoaccount用户有操作权限
semanage fcontext -a -e /home /var/mountbroker-root
restorecon -Rv /var/mountbroker-root #配置挂载点的上下文标签,如果selinux关闭可不做
3、配置挂载点信息
servere上
gluster system:: execute mountbroker opt mountbroker-root /var/mountbroker-root
#设置挂载点
gluster system:: execute mountbroker user geoaccount slavevol
#设置通过哪个用户复制到哪个卷
gluster system:: execute mountbroker opt geo-replication-log-group geogroup
#设置区域复制的组
gluster system:: execute mountbroker opt rpc-auth-allow-insecure on
#允许使用1024以上的端口
4、数据同步密匙
这点比较坑,红帽在3.0的时候手动copy,到了3.1专门写了个脚本给我们用,功能还是copy。。
servera上
gluster system:: execute gsec_create
gluster volume geo-replication mastervol geoaccount@servere::slavevol create push-pem
5、配置数据同步密匙
servere上
/usr/libexec/glusterfs/set_geo_rep_pem_keys.sh geoaccount mastervol slavevol
6、开启同步,检查
gluster volume geo-replication mastervol geoaccount@servere::slavevol config use_meta_volume true
gluster volume geo-replication mastervol geoaccount@servere::slavevol start
gluster volume geo-replication status
7、总结
将servera和servere上的操作分开,即可发现主要做了以下操作,但是整体的来说,是先在mastervol节点上开启区域同步配置,然后再在slavevol上设置区域同步的配置,最后再在mastervol上开启同步
servera上
1)、开启共享存储
gluster volume set all cluster.enable-shared-storage enable
2)、免密设置
ssh-keygen
ssh-copy-id
3)、创建数据传输免密
gluster system:: execute gsec_create
4)、发送数据免密密匙
gluster volume geo-replication mastervol geoaccount@servere::slavevol create push-pem
5)、链接mastervol和slavevol
gluster volume geo-replication mastervol geoaccount@servere::slavevol config use_meta_volume true
6)、启动同步
gluster volume geo-replication mastervol geoaccount@servere::slavevol start
7)、查验
gluster volume geo-replication mastervol geoaccount@servere:slavevol status
servere上
1)、创建挂载点
mkdir -m 711 /var/mountbroker-root
semanage fcontext -a -e /home /var/mountbroker-root
2)、将挂载点及用户信息写入到配置文件
gluster system:: execute opt rpc_auth_allow_insecure on
gluster system:: execute opt mountbroker-root /var/mountbroker-root
gluster system:: execute opt geo-replication-log-group geogroup
gluster system:: execute user geoaccount slavevol
这些配置都可以在/etc/glustefs/glusterd.vol中查看到
3)、将数据免密的密匙发送到正确的位置
/usr/libexec/glusterfs/set_geo_rep_pem_keys.sh geoaccount mastervol slavevol
4)、重启glusterd服务,使配置生效
systemctl restart glusterd
详情见官方文档https://access.redhat.com/documentation/en-us/red_hat_gluster_storage/3.1/html/administration_guide/sect-preparing_to_deploy_geo-replication#Geo-replication_Deployment_Overview
网友评论