堆叠是把多台服务器组合起来,形成一个集群,每台服务器都可以负责一部分工作,从而提高系统的可用性和性能。双机热备与数据备份的关系
一些用户在规划双机热备或双机备份时,会有这样的问题:我已经有了RAID,以及磁带备份,还有必须做双机吗?或者,如果我做了双机备份,还有必要做磁带备份吗?
应该说RAID和数据备份都是很重要的。但是,RAID技术只能解决硬盘的问题,备份只能解决系统出现问题后的恢复。而一旦服务器本身出现问题,不论是设备的硬件问题还是软件系统的问题,都会造成服务的中断。因此,RAID及数据备份技术不能解决避免服务中断的问题。对于需要持续可靠地提供应用服务的系统,双机还是非常重要的。只要想一想,如果你的服务器坏了,你要用多少时间将其恢复到能正常工作,你的用户能容忍多长的恢复时间就能理解双机的重要性了。
从另外一个方面,RAID以及磁带备份也是非常需要的。对于RAID而言,可以以很低的成本大大提高系统的可靠性,而且其复杂程度远远低于双机。因为毕竟硬盘是系统中机械 *** 作最频繁、易损率最高的部件,如果采用RAID,就可以使出现故障的系统很容易修复,也减少服务器停机进行切换的次数。
数据备份更是必不可少的措施。因为不论RAID还是双机,都是一种实时的备份。任何软件错误、病毒影响、误 *** 作等等,都会同步地在多份数据中发生影响。因此,一定要进行数据的备份(不论采取什么介质,都建议用户至少要有一份脱机的备份),以便能在数据损坏、丢失时进行恢复。
如果采用了备特佳容灾备份系统,可以完全解决存储双活不能保证的数据安全问题和业务连续问题,数据丢失或错误 *** 作后可以100%恢复数据,出现系统故障也能进行业务接管,保障业务的连续性。Windowscluster要求同一个cluster中的所有windows版本都是相同的,这样就出现一个问题,当我们要将对windows进行升级时,(例如从windows2008R2升级到windows2012)不得不搭建一套新的windowscluster。你可以选择使用新的硬件搭建,或者将现有windowscluster中的节点一台一台的evict掉,重装/升级系统后加入到新的windowscluster中。具体的cluster升级方案我就不在这里讨论。马上进入主题:sqlserverAlwaysOnAvailabilityGroup(后文简称为AG)的一个要求是:所有的replica都要求隶属于同一个windowscluster。所以当我们对windowscluster进行升级时,无法在新的windowscluster和现有的windowscluster之间建立AG。那么在迁移过程中会有一段时间内AG无法对外提供服务。从数据库的角度上说,我们需要做下面的事情接下来停止应用并删除cluster1中的Listener,确保没有外界来接使用SQLSERVERBackupdatabaseBackuptaillog将备份文件copy到新的服务器Restore到各个服务器然后重新建立AG创建Listener重启应用我们需要将数据库备份并还原到新的primaryreplica和secondaryreplica。相应的downtime时间就是1+2+3+4+5+6+7+8想要的时间。或许你想到了在新旧cluster之间创建一个mirroring,但遗憾的是,创建了AG的数据库是不再允许创建mirroring的那应当如何进行迁移呢从SQLServer2012SP1开始,允许在两套不同的windowscluster之间创建AG。下面用一个例子说明一下有一个三个节点的windowscluster,windows版本为Windows2008R2Domain:liweiyin3labClustername:cluster1Server002Server003Server004Listenername:Listener1三个节点上装有SQLServer2012SP1的standalone实例。均为默认实例。之间建立了AG拓扑图如下:现在创建一套两个节点的windows2012的windowsclusterDomain:liweiyin3labClustername:cluster2Server005Server006对cluster1上的AG数据库进行备份,包含fulldatabasebackup和logbackup两个cluster中间创建AG:将第一步得到的文件在cluster2的节点上进行还原,指定为withnorecovery接下来在cluster2的三个数据库上执行下面的语句ALTERSERVERCONFIGURATIONSETHADRCLUSTERCONTEXT='cluster1liweiyin3lab'这条语句执行完毕后,这台数据库的clustercontext就会切换为cluster1了。这个结果可以从下面的DMV中检查到selectcluster_namefromsysdm_hadr_cluster接下就可以在cluster1和cluster2之间建立AG。我们可以使用UI或者T-SQL语句。需要注意的是,请将cluster2中的至少一个SQLServer的同步模式设置为Synchronouscommit,以保证迁移是没有数据损失的。这样,我们就建立了一套既包含win2008R2,也包含win2012的AG环境了。并且也可以正常地向外界提供服务,整个流程不需要downtime但需要注意的是,这种情况下是不允许在两个cluster之间进行failover的。相应的提示信息如下AnattempttofailoverorcreateanavailabilitygroupfailedThisoperationisnotsupportedwhenAlwaysOnAvailabilityGroupsisrunningunderaremoteWindowsServerFailoverClustering(WSFC)clustercontextUnderaremoteclustercontext,failingoverorcreatingavailabilitygroupsarenotsupported接下来停止应用并删除cluster1中的Listener,确保没有外界来接使用SQLSERVER在Cluster1将AG进行offline *** 作ALTERAVAILABILITYGROUPdbNameoffline将cluster2中所有sqlserver的CLUSTERCONTEXT切换回来ALTERSERVERCONFIGURATIONSETHADRCLUSTERCONTEXT=local在cluster2中重新创建AG在cluster2中创建新的listener重启应用这样所涉及的downtime就是5+6+7+8+9+10和之前的解决方案相比,省去了backup,文件copy和restore的时间。其余的 *** 作都是句 *** 作,很大程度地减少了downtime。更多信息===迁移之前,Cluster2中的sqlserver不允许创建任何AG。迁移之前需要授予cluster2中的sqlserver启动账号访问cluster1注册表的权限ChangetheHADRClusterContextofServerInstance(SQLServer)DNS 分发双活是指在两个数据中心之间实现 DNS 服务器的同步和双向部署,以确保当其中一个数据中心发生故障时,可以自动切换到另一个数据中心继续提供服务。如果 DNS 分发双活失败,可能有以下几个原因:
1 DNS 服务器配置错误:确保 DNS 服务器配置正确,并且在双向部署时已正确同步。
2 网络故障:网络故障可能阻止 DNS 服务器之间的通信。确保两个数据中心之间的网络正常,并且没有防火墙或其他网络设备会阻止数据的传输。
3 数据同步问题:如果在同步 DNS 数据时发生错误,则可能会导致 DNS 分发双活失败。请确保在同步 DNS 数据时没有错误或者数据丢失。
4 其他故障:除了上述原因外,还可能有其他原因,如硬件故障、电源故障等,这些故障可能导致 DNS 分发双活失败。
如果发现 DNS 分发双活失败,建议您立即检查发生故障的数据中心,并采取必要的措施来解决问题,以确保系统稳定运行。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)