准备工作
1、 四台已安装windows server 2008 r2 系统的虚拟机,配置如下:
CPU : 1核
MEMORY : 2GB
DISK : 40GB(未分区)
NetAdapter : 2块
2、 网卡设置:
本地连接:外网IP(由于虚拟机本身处于内网网段,192.168.1.2-192.168.1.255,在此我们把当前内网视为外网公开的IP)。
PC01:192.168.1.241 (域主机)
PC02:192.168.1.242 (集群主节点)
PC03:192.168.1.243 (集群辅助节点)
PC04:192.168.1.244 (集群辅助节点)
本地连接2:域内网IP。这里设置为192.168.10.1
PC01:192.168.10.1 (域主机)
PC02:192.168.10.2 (集群主节点)
PC03:192.168.10.3 (集群辅助节点)
PC04:192.168.10.4 (集群辅助节点)
3、 虚拟机默认安装只有一块网卡,以下演示添加网卡:
注意:此时两块网卡都处于NAT模式,在此我将第一个网络适配器的网络连接模式改为桥连接,目的是为了与我物理机所处的内网电脑进行交互。
安装域控制器和配置域
安装域控制器
在IP:192.168.1.241这台虚拟机上建立域控制器
注意:在未配置固定IP时,无法安装有效的域控制器
此时我们设置虚拟机的固定外网IP(注意:这里没有配置DNS服务器地址,所以无法在虚拟机上面连接到真实外网,在正式环境中,需要配置DNS服务器地址):
内网IP:
再次来安装域控制器:
域控制器安装完成
安装域服务和配置域
域配置完成后,会提示重启虚拟机,请立即重启!
将其它几台虚拟机加入域
先将其它几台虚拟机的第二块网卡,也就是本地连接2的IP地址改为准备工作中的IP地址,
同时,DNS服务器指向内网IP为192.168.10.1的虚拟机,这个是必须的,否则无法加入新建的域。
加入域成功,立即重启虚拟机!
安装和配置windows server故障转移集群
先安装.net framework 3.5
安装完成!
安装故障转移功能
配置故障转移集群
使用NewCluster\administrator账户登录除域主机外的所有虚拟机,
注意:域管理员账户才能配置故障转移集群
创建一个故障转移集群
检查防火墙,将域防火墙关闭
但依旧有问题,这时我发现PC03和PC04两台虚拟机的外网IP是自动获取,于是将其分别修改:
然后再添加节点:
集群配置完成。
安装和配置sqlserver 2012 always on集群
安装sqlserver 2012
在集群的每一台虚拟机上安装sqlserver2012
选择安装账户,这里选择是域管理员账户
重启计算机,完成sqlserver2012的安装!
配置sqlserver 2012
为每个节点的虚拟机的sqlserver服务开启alwayson功能
配置别名
IP:192.168.10.2
同样在32位的客户端也添加上同样的别名
打开32位和64位客户端协议中的命名协议
IP:192.168.10.3(操作步骤跟上面相同)
IP:192.168.10.4
使用别名测试登录
注意:如果安装时未使用域管理员账户,并且未将与管理员账户加入sqlserver管理员账户组中,将无法采取windows验证模式使用域管理员账户免密码登录sqlserver
配置always on
准备工作
1、 创建文件夹用于存储数据库备份。
2、 创建一个测试数据库,并备份数据库。如果已有数据库,只需备份数据库。
3、 将备份路径共享
创建alwayson高可用性组
只需要在IP:192.168.10.2上创建即可
注意:一定要先修改数据库恢复模式为完整恢复模式,并完整备份数据库。否则这里的状态会显示为不满足先决条件。
添加侦听器
到此alwayson集群完成:
测试集群:
在主节点IP:192.168.10.2上创建一个表,并插入一条数据
在辅助节点IP:192.168.10.3上查看表和数据
在辅助节点IP:192.168.10.4上查看表和数据
测试成功!
关于应用程序连接集群问题,应该是连接集群的虚拟IP,也可以用SSMS直接连接虚拟IP,此时,sa账户的密码一定要在集群所有节点上配置一样。否则集群切换后,使用sa的账户连接会出现密码错误问题。