从0开始搭建SQL Server AlwaysOn 第四篇(配置异地机房节点)

第一篇
http://www.cnblogs.com/lyhabc/p/4678330.html
第二篇
http://www.cnblogs.com/lyhabc/p/4682028.html
第三篇
http://www.cnblogs.com/lyhabc/p/4682986.html
第四篇
http://www.cnblogs.com/lyhabc/p/6136227.html

这一篇是从0开始搭建SQL Server AlwaysOn 的第四篇,这一篇开始搭建异地机房节点

注意点1

注意异地节点最好至少有2个AG节点,否则在本地节点进行手动故障转移的时候会出现仲裁警告,提示WSFC集群有脱机危险

在异地节点只有一个的情况下,虽然Windows2012R2有动态仲裁机制,但是,当本地节点非优雅宕机的情况下,整个WSFC集群有可能得不到任何票数

也就是异地节点也得不到票数而导致整个WSFC集群脱机!!

注意点2

当进行手动故障转移的时候,更新DNS缓存需要10分钟,所以当进行手动故障转移之后,用侦听器ip连接SQL Server会很慢,这是因为还在更新DNS缓存


步骤

这一篇依然使用step by step的方式介绍怎麽搭建AlwaysOn异地机房节点

新加异地机房节点机器名:JXCA-WMS08

1、在JXCA-WMS08上安装故障转移集群

2、在本地机房节点JXCA-WMS01机器上打开故障转移集群管理器,添加一个节点JXCA-WMS08

3、验证配置

4、解决新加节点OU不同问题,只需修改组织单位ou,不需要修改站点site,因为如果本地机房和异地机房的域设置了site,在验证配置的时候会警告,当然可以忽略也可以修正

因为只是警告已而,忽略也无所谓

5、添加节点成功

6、在新节点上安装好SQL Server并优化SQL Server,这里忽略安装和优化步骤

7、把异地机房新节点添加到alwayson可用性组里,打开alwayson的可用性属性界面,可用性组名称为:AGWMSJXC

可以看到添加了异地机房节点之后,这个异地机房节点还没有联接到可用性组,也就是当前可用性组还没识别到这个异地机房节点

8、对侦听器添加另一个子网的VIP,这一步,如果可用性组没有启用可用性组侦听器那么这一步可以忽略

如果可用性组启用了侦听器,那么需要分两种情况

1、异地节点的网段跟本地机房是一样的,比如都是192.168.1.x ,那么这一步也不需要做

2、异地节点的网段跟本地机房是不一样的,也就是跨子网,比如本地机房是192.168.1.x,异地机房是192.168.10.x,那么这一步需要做

现在侦听器IP有两个,一个是本地机房网段的IP,一个是异地机房网段的IP

添加了新的侦听器vip之后,故障转移集群管理器里会自动将这个侦听器vip资源脱机

9、新建一个测试可用性组,主要用来打通/开启本地节点和异地节点的5022端口

建好之后,在原AG刷新一下会看到异地节点JXCA-WMS08已经自动联接到可用性组AGWMSJXC

10、对数据库进行备份还原到异地节点JXCA-WMS08,在异地节点JXCA-WMS08上进行操作,将数据库逐个点击联接到可用性组

11、异地节点JXCA-WMS08添加完成

12、手动故障转移主副本到异地节点

注意当只有一个异地节点的时候,正在验证WSFC仲裁投票配置那一栏会出现警告!

故障转移之后会发现异地节点的侦听器ip联机,本地节点的侦听器ip脱机

13、在异地节点上使用异地节点侦听器ip连接SQL Server,并写入测试数据

14、把主副本手动故障转移回来本地节点

15、用本地节点侦听器ip连接SQL Server,发现刚才对异地节点侦听器ip的数据写入都已经同步过来本地

参考文章:

http://blog.itpub.net/29371470/viewspace-2087672

http://www.tech-coffee.net/understand-failover-cluster-quorum/

如有不对的地方,欢迎大家拍砖o(∩_∩)o