双机热备( 二 )


双机热备

文章插图
数据同步方式B、利用资料库所带有複製功能 , 比如SQLServer2000或2005所带的定阅複製 , 这种方式用户要根据自己的套用小心使用 , 原因主要是:(1)SQLServer的定阅複製会在用户表上增加栏位 , 对那些套用软体编程要求较高 , 如果在套用软体端书写时未明确指定栏位的用户 , 而使用此功能会造成应用程式无法正常工作 。(2)数据滞留 , 这个限制怕也是最要命的 , 因为SQLServer在数据传输过程中数据并非实时的到达主备机 , 而是数据先写到主机 , 再写到备机 , 如此一来 , 备机的数据往往来不及更新 , 此时如果发生切换 , 备机的数据将不完整 , 也不连续 , 如果用户发现已写入的数据在备机找不到 , 重新写入的话 , 则主机修复后 , 就会发生主备机数据严重冲突 , 资料库会乱掉 。(3)複杂套用切莫使用定阅複製来做双机热备 , 包括数据结构中存储过程的处理 , 触发器和序列 , 一旦发生冲突 , 修改起来非常麻烦 。(4)伺服器性能降低 , 对于大一点的资料库 , SQLServer2000或2005所带的定阅複製会造成伺服器资料库运行缓慢 。总之SQLServer2000或2005所带的定阅複製主要还是套用于数据快照服务 , 切莫用他来做双机热备中的数据同步 。C:硬碟数据拦截 , 目前国际国内 , 比较成熟的双机热备软体通常会使用硬碟数据拦截的技术 , 通常称为镜像软体即Mirror软体 , 这种技术当前已非常成熟 , 拦截的方式也不尽相同 。(1)分区拦截技术 , 以Pluswell热备份产品为例 , 他採用的是一种分区硬碟扇区拦截的技术 , 通过驱动级的拦截方式 , 将数据写往硬碟的数据提取 , 并首先写到备用伺服器 , 以保证备用伺服器的数据最新 , 然后再将数据回写到主机硬碟 。这种方式将绝对保证 , 主备机资料库的数据完全一致 , 无论发生哪种切换 , 都能保证资料库的完整性与连续性 。由于採用分区拦截技术 , 所以用户可以根据需要在一块硬碟上划分适合大小的分区来完成数据同步工作 。(2)硬碟拦截技术 , 以Symantec的Co-Standby为例 , 也是一种有效的硬碟拦截软体 , 他的拦截主要基于一整块硬碟 , 往往在硬碟初始化时需要消耗大量的时间 。双机热备中需要指出的几个概念工作原理故障隔离 , 简单的讲 , 高可用(热备)就是一种利用故障点转移的方式来保障业务连续性 。其业务的恢复不是在原伺服器 , 而是在备用伺服器 。热备不具有修复故障伺服器的功能 , 而只是将故障隔离 。概念辨析Active-Active方式指的是业务方式而不是伺服器状态 , 如果是同一种套用是不能完成Active-Active方式的 。例如热备的两台伺服器都是sqlserver资料库 , 那也是指的不同的资料库实例 。相同的资料库实例是不可能在热备这一级实现Active-Active方式,这与Active-Active方式的原理相违背 , 简单的讲Active-Active方式就是两个不同的业务使用Active-Standby方式运行于两台伺服器上 , 使两个业务同时实现双机热备 。故障检测故障检测是双机热备的任务 , 不同的双机检测点的多少决定了双机热备软体在功能和性能上的优劣 , 并不是所有的软体都具有相同的检测功能 , 以PlusWell双机热备软体为例 , 其提供的是一种全系统检测能力 , 即检测分为系统级、套用级、网路级三个方面 。系统级检测主要通过双机热备软体之间的心跳提供系统的检测功能 , 套用级提供用户应用程式、资料库等的检测功能 , 网路级的检测提供对网卡的检测及可选的对网路路径的检测功能 , 因此称为全故障检测能力 。伺服器资源双机热备的资源指某种业务运行过程中所依赖的最小的关联服务 , 不同的双机软体所提供的资源多少也不相同 , 当然提供的可切换资源越多 , 软体套用的範围也越广 , 在双机热备中提到的伺服器资源主要包括 , 可切换的网路IP资源、计算机名、磁碟卷资源、伺服器进程等 。切换种类双机热备的切换一般分为手动切换和故障切换 , 即计画性切换(即人为切换)和非计画性切换(即故障切换) 。需要大家注意的是并不是所有资源都具有可切换性 , 以PlusWell热备份软体为例他提供了:(1)本地资源监控 , 即不可切换的资源 , (2)普通资源 , 即可以在主备机切换的资源 。(3)快速资源 , 指的是快速切换的资源 , 一般情况下的双机切换时间为1-5分钟 , 而快速切换的时间为3-5秒种 。用户应根据自己的需求及业务特点来选择相关的切换服务 , 从价格成本上来说 , 切换的时间越短费用也越高 。备份介绍热备份指的是:high available即高可用 , 而备份指的是Backup , 即数据备份的一种 , 这是两种不同的概念 , 应对的产品也是两种功能上完全不同的产品 。热备份主要保障业务的连续性 , 实现的方法是故障点的转移 , 而备份 , 主要目的是(为了防止数据丢失 , 而做的一份拷贝)所以备份强调的是数据恢复而不是套用的故障转移 。产品分类国外产品Rose HARoseHA/RoseMirrorHA双机热备软体NEC ExpressCluster微软MSCSSymantec VCSLegatoLifeKeeperEMC Autostart红帽RHCS国内产品REYUN HA-mirror数据镜像软体REYUN HA 双机热备软体Moebius For SQL Server负载均衡集群REYUN Cluster集群热备份软体Lander Cluster联鼎集群软体DBTwin For SQL Server资料库集群PlusWell 集群软体EterneCluster集群软体ServHA Cluster双机集群软体ATang 集群软体eubase集群软体ENASCluster-DN/ENASMirrorHA双机热备软体ENASCluser/ENAS-MN多机集群软体开源软体Linux Heartbeat