标签:云端 网络 说明 允许 影响 primary RKE crash 目的
1、 什么是DRBD?4、 drbd与现在的HA集群的关系
一个drbd系统由两个以上节点构成,与HA集群类似,也有主用节点和备用节点之分,在带有主要设备的节点上,应用程序和操作系统可以运行和访问drbd设备(/dev/nbX)。
在主节点写入的数据通过drbd设备存储到主节点的磁盘设备中,同时,这个数据也会自动发送到备用节点相应的drbd设备,最终写入备用节点的磁盘设备中,在备用节点上,drbd只是将数据从drbd设备写入到备用节点的磁盘设备中。
大部分现行高可用性集群都会使用共享存储,而Drbd也可以作为一个共享存储设备,使用drbd不需要任何硬件的投资。因为它在IP网络中运行,所以,利用drbd作为共享存储设备,要节约很多成本,因为在价格上IP网络要比专用的存储网络经济的多。
5、 DRBD内部实现原理图
6、 DRBD协议说明
A 数据一旦写入磁盘并发送到网络中就认为完成了写入操作.
B 收到接收确认就认为完成了写入操作.
C 收到写入确认就认为完成了写入操作.
协议A 异步复制协议。只要主节点完成本地写操作就认为写操作完成,并且需要复制的数据包会被存放到本地TCP发送缓存中。当发生failover故障,数据可能丢失。当failover 故障发生时,在standby节点的数据会认为仍是稳固的,然而,在crash 发生的时间点上很多最新的更新操作会丢失。
协议B 内存同步(半同步)复制协议。当本地磁盘的写已经完成,并且复制数据包已经到达对应从节点,此时主节点才认为磁盘写已经完成。通常情况下,发生failover 不会导致数据丢失(因为后备系统内存中已经获得了数据更新)。然而,如果所有节点同时出现电源故障,则主节点数据存储会发生不可逆的错误结构,主节点上多数最新写入数据可能丢失。
协议C 同步复制协议。只有在本地和远程磁盘都确定写入已完成时,主节点才会认为写入完成。这样可确保发生单点故障时不会导致任何数据丢失。如果发生数据丢失的现象,那也只会在所有节点同时存在错误存储时才会发生这种情况。
在DRBD设置中,最常用的复制协议是协议C ,选择哪种复制协议受到部署的两个因素影响:保护要求和延迟
7、drbd设备的三个进程
每个drbd设备会有三个进程:
drbd0_worker是drbd0的主要进程,
drbd0_asender是primary上drbd0的数据发送进程,
drbd0_receiver是secondary上drbd0的数据接收进程
注意事项
1、主备服务器同步的两个分区大小最好相同
2、开始同步两个节点的磁盘,需要一定时间,在同步完成前,不要重启,否则会重新同步。
3、挂载之前一定要先切换当前节点为主节点
4、两个节点中,同一时刻只能有一台处于primary状态,另一台处于secondary状态。
5、处于从节点(secondary)状态的服务器不能加载drbd块设备
6、将主节点切换为从节点之前要先卸载
7、一台机切换为主节点之前,要确保另一台机已切换为从节点
UCACHE灾备云利用现有的数据中心及软硬件的整体方案实现了云端灾备,成本低,灵活的方案,保证企业重复数据删除技术:累积重删比高达99%,减少备份窗口,压缩比例1:7.UCACHE灾备云功能。
标签:云端 网络 说明 允许 影响 primary RKE crash 目的
原文地址:https://blog.51cto.com/14817364/2500477