Java自学者论坛

 找回密码
 立即注册

手机号码,快捷登录

恭喜Java自学者论坛(https://www.javazxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,会员资料板块,购买链接:点击进入购买VIP会员

JAVA高级面试进阶训练营视频教程

Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程Go语言视频零基础入门到精通Java架构师3期(课件+源码)
Java开发全终端实战租房项目视频教程SpringBoot2.X入门到高级使用教程大数据培训第六期全套视频教程深度学习(CNN RNN GAN)算法原理Java亿级流量电商系统视频教程
互联网架构师视频教程年薪50万Spark2.0从入门到精通年薪50万!人工智能学习路线教程年薪50万大数据入门到精通学习路线年薪50万机器学习入门到精通教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程MySQL入门到精通教程
查看: 412|回复: 0

SQLServer 2014 本地机房HA+灾备机房DR解决方案

[复制链接]
  • TA的每日心情
    奋斗
    2024-4-6 11:05
  • 签到天数: 748 天

    [LV.9]以坛为家II

    2034

    主题

    2092

    帖子

    70万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    705612
    发表于 2021-6-21 12:24:25 | 显示全部楼层 |阅读模式

    SQLServer 2014 主数据中心HA+灾备机房DR解决方案

     

    SQLServer 2008 的时候使用 local WSFC+DR Mirror方式,对象是单数据库

    两个单独的 WSFC 上使用两个 FCI

    每个WSFC有两个以上的节点

    数据库镜像允许单独 WSFC 上的多个 FCI 使用相同的实例名称

     

     

    SQLServer 2012/2014 的时候使用 local WSFC+DR AG方式,对象是可用性组(一般为整个实例)

    单个 WSFC 上使用两个 FCI

    单个 WSFC 含有四个以上节点,每个FCI(failover cluster instance)有两个以上的节点

    在同一个 WSFC 内,两个 FCI 必须使用不同的实例名称,例如,使用“INST_A”作为主 FCI 的实例名称,使用“INST_B”作为 DR FCI 的实例名称

     核心业务dr使用集群

     

     非核心业务dr使用单实例

     

     

    (*)由于跨机房的WSFC,共享存储的注意事项

    每个 FCI 都有自己的共享存储(其他数据中心内的节点无法访问),称作非对称存储

    两个 FCI 中的数据库文件和事务日志文件也应该使用完全相同的文件路径,磁盘应使用完全相同的驱动器号(避免搭建ag,还原辅助副本的时候使用restore with move/创建文件组或者日志操作的失败)

    每个FCI中,SQL Server 实例的 FCI 故障转移是自动执行的;AG的故障转移模式必须是手动,AG同步模式建议异步提交

     

    (*)由于跨机房的WSFC,仲裁投票、仲裁模型 的注意事项 

    默认情况下,故障转移群集中的每个节点都具有投票( 节点的 NodeWeight 属性),引入一个修补程序 (http://support.microsoft.com/kb/2494036(用于将 1 个投票分配给 WSFC 中的特定节点,将 0 个投票分配给其他一些节点),拓扑中的每个节点上都必须安装此修补程序

    投票方案:

    • 主数据中心的每个节点有 1 个投票
    • DR数据中心的每个节点有 0 个投票

    作为最佳做法,WSFC 的投票总数应为奇数。如果投票节点数目为偶数(上图示例拓扑),应在各自FCI中备机节点(避免使用文件仲裁,管理成本高)

    (*)发生dr切换时

    如果主数据中心发生停机,正常切换到DR数据中心时,需要对DR重新设置仲裁配置。必须向DR数据中心的每个节点都分配一个投票,而将主数据中心每个节点上的投票都设置为“0”

    当主数据中心恢复活动后,还要再次对投票进行调整

    --查看仲裁设置

    SELECT cluster_name, quorum_type_desc, quorum_state_desc
    FROM sys.dm_hadr_cluster;

     --查看是否有投票权

    SELECT member_name, number_of_quorum_votes
    FROM sys.dm_hadr_cluster_members
    order by number_of_quorum_votes desc

     

     --完全设置

     

     

    PowerShell

    查看所有节点的当前投票设置

             Get-ClusterNode | fl NodeName, NodeWeight

    将某一节点的投票设置为“0

       (Get-ClusterNode "DRNode1").NodeWeight=0

     

     

     

     

     

    --注意:

    windows故障转移集群+ag环境时,不能再将ag的自动故障转移打开,但可以打开同步模式

    由于只能使用windows故障转移,所以避免主机房节点失败,没有正常切换到主机房的备机,需要拉掉dr机房的投票权(避免故障转移到dr,实际上搭ag之前需要拉掉overlap的节点,不允许集群不同实例间出现节点交叉)

    The FCI already has automatic failover configured between the nodes.

    The current implementation of AG doe not allow a failover outside of the FCI nodes.

    详见:

    https://blogs.msdn.microsoft.com/arvindsh/2012/09/26/alwayson-availability-group-forced-failover-under-the-hood/

     

    哎...今天够累的,签到来了1...
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|小黑屋|Java自学者论坛 ( 声明:本站文章及资料整理自互联网,用于Java自学者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-5-8 12:39 , Processed in 0.072813 second(s), 29 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表