一、测试需求介绍与准备
公司计划服务器迁移过程计划同时上线SQL Server2012,引入SQL Server2012群集提高高可用性,需要对SQL Server2012群集技术进行研究、测试,确保此项技术是否能满足公司的业务和容灾需求。
此文档记录了SQL Server2012群集测试的详细过程。
群集采用基于iSCSI方式的1+1模式,因此测试用Hyper-V准备四台虚拟服务器分别用于:域控制器[AD]、存储服务器、群集活动节点、群集备节点。
设置四个网络适配器,分别用于内网连接,外网连接,存储连接,心跳监测连接;具体如下图所示
二、AD安装
安装之前需要各个网络适配器相互对应,对于域安装此处不做讲解
关注:
-
此次林根域级别限定域名:FZCYJH.NET
-
使用网络IP:10.0.0.201
-
无需设置转发器;无需向域中添加第二台域控制器
-
设置每台服务器内网在相应网络和域之间通信;心跳和存储只在连线服务器之间通信
-
将SQL01、SQL02服务器加入域中
-
需添加域帐户FZCYJH\SQLClusTest;并将此域帐户加入SQL01、SQL02的管理员组中。
三、存储安装[StarWind]
Sartwind安装与配置
安装参照文档http://www.cnblogs.com/chhuang/p/3623305.html
iSCSI连接设置
安装参照文档http://www.cnblogs.com/chhuang/p/3623325.html
四、Windows群集安装
安装参照文档 http://www.cnblogs.com/chhuang/p/3623341.html
五、SQL Server 2012群集安装
1、SQL Server2012群集安装前期准备
1.1、安装群集之前,准备好相关安装信息,本次采用1+1节点
1.2 安装.net 3.5框架
1.3 检查window群集安装是否正常
为确保SQL Server群集安装顺利完成,以及SQL Server群集安装后正常运行,在安装SQL Server群集之前,对windows群集已经各个节点的系统监控状况作适当的检查很有必要。
1.3.1 windows群集服务管理单元
整个windows群集包括以几个单元:服务和应用程序、节点、存储、网络、群集事件;需确保这些单元都正常运行中,需查看最近的群集事件是否有影响群集的错误未处理。
1.3.2 服务和应用程序
下图为已经安装好的SQL Server群集服务,服务包括:SQL Server群集虚拟名称,IP,共享磁盘,其他资源;以及各资源是否联机。各资源之间的依赖关系如下图
1.3.3 windows群集节点
此群集两个群集节点,需知道节点的基本情况可单击节点查看。
1.3.4存储
下图显示仲裁磁盘和SQL Server已经使用磁盘(若有未使用的存储,则会显示可用存储)
还有各个存储的连接情况以及细节信息等。
1.3.5网络
此次群集测试网络分为:
外网-用于日常运维管理等
内网-用于内部通信,客户端连接,群集之间通信,应用程序连接等
心跳-专用于windows群集之间通信
存储-专用于存储的通信
详细信息如下
具体设置可以通过属性:设置是否允许网络上通信和是否运行客户端连接通信等
1.3.6 检查群集日志和各节点windows日志
检查windows是否运行正常,很重要的一部份是确认是否有影响群集的相关日志,检查日志并处理相关问题直到不会再报。
故障转移群集管理器里面的群集事件可以自定义配置,使其包含自己想要的事件内容。也可以在群集节点点选某个对象后,也可以右键选择显示相关对象的群集事件。
Windows 事件日志管理单元里面不包含群集事件,如果需要在故障群集管理器外面查看群集日志,可以使用Cluster.exe 命令来将群集日志转存到其它位置,比如:
cluster.exe dbcluster log /generate /copy:”c:\cluster_log”
1.3.7 验证群集名称解析正常
在每个节点ping群集IP,看解析是否正常。
在群集外部ping群集IP,看解析是否正常。
1.4 验证群集资源是否能正常故障转移和读写
为最大程度保证SQL Server群集安装完后能正常使用,需保证群集资源能在群集节点之间正常转移和读写正常。
可以通过cluster.exe查看资源组所在节点和转移资源组:cluster group
在此节点上查看是否正常是否使用正常,再转移到vms002节点看是否使用正常,如下步骤
1.4.1 可用存储是否能正常转移和读写
确保存储能正常读写后尝试转移存储:cluster group “可用存储” /move:VMS002
1.4.2 验证资源组是否能正常转移
确保存储能正常读写后尝试转移存储:cluster group “群集组” /move:VMS002
1.4.3 验证网络传输带宽是否正常
简单的方式采用共享路径,通过不同网段IP映射,上载或下载文件,看传送速率是否异常。
2、安装主要SQL Server 2012群集
安装软件:SQL Server 2012 SP1 64位简体中文版
2.1 DTC服务未做集群警告说明
由于DTC服务未做集群,SQL Server安装程序会显示一个警告。警告大概内容是:
“MSDTC服务未做集群,从Windows Server 2008开始,SQL Server 安装不再需要MSDTC服务必须做集群。在早期OS版本中,MSDTC服务是必须要做集群的,
否则SQL Server某些功能可能不正常。可以通过Windows 故障转移集群管理单元添加MSDTC集群。”
MSDTC主要用在分布式事物中,公司现在没有应用分布式事物,为了减少维护成本暂时先不安装MSDTC集群服务。
2.2 网卡绑定警告说明
网卡绑定警告,大概内容:
“域所在网络在网卡绑定顺序上并不是第一个,这可能会影响域操作缓慢,甚至延迟;可以通过Windows网络和共享中心高级配置来改变绑定顺序”
网卡绑定警告解决办法:
- 开始 - 控制面板 - 网络和 Internet - 网络和共享中心.
- 点击 修改适配器设置
- 按 Alt + F 打开高级菜单
- 点击高级设置
- 将公共网络所在网卡移到最顶层
- 必须以管理员身份进行登录,才能执行这些步骤。
2.3 SQL Server2012功能选择
功能选择生产使用:
数据库引擎服务+SQL Server复制+全文索引+Data Quality Services 作为一个整体必须一起选择;
将安装目录放在D盘下,一定要在Microsoft SQL Server 指定目录下
2.4 SQL Server网络名称和命名实例
SQL Server网络名称:外部客户端或用户通过该名称访问SQL Server群集,相当于非群集环境的Hostname。需提前规范指定:SQLClusTest
命名实例:由于只能安装一次默认实例,群集大部分情况下会有多节点多群集情况,因此备节点会出现多个SQL Server服务,为了容易辨认,建议均安装指定的命名实例:SQLClusTest
Instance ID:安装过程中进行配置,用于唯一区分已经安装的SQL Server 实例。SQL Server安装位置会形如:X:\Program Files\Microsoft SQL Server\MSSQL11.InstanceID,如果是默认实例,则InstanceID 为MSSQLSERVER。但是如果通过文件系统去看SQL Server实例,MSSQLSERVER很难区分是哪个SQL Server虚拟服务器下的默认实例。为便于从名字辨认SQL Server实例,最佳建议是:
如果是命名实例,建议将Instance ID设置为SQL Server Network Name。
实例安装在D盘
2.5 SQL Server 虚拟IP
虽然从Windows Server 2008 开始,群集支持DHCP协议配置IP,但DHCP管理服务器IP还是有很多风险,所以取消DHCP,手动输入预先申请好的静态IP地址:10.0.0.206。
注意“Network” 部分选择的是Public网卡。Public网卡用于外部访问群集,心跳线主要用于群集节点间通讯,不提供外部访问群集功能。此ip配置用于客户端和外部用户连接,因此要设置为puliic网卡。
SQL Server网络名称+ SQL Server网络IP:会自动在域中创建
2.6 启动账户配置
群集安装中,SQL Server 数据库引擎以及Agent服务需要使用域账户,一般建议单独为SQL Server和Agent服务建立专用账户,并加入到每个SQL Server群集节点Administrators组。
这里使用已经建立的群集管理员账户::FZCYJH\sqlclustest
全文索引和浏览器服务使用“Local Service”账户,无法修改。
所有服务启动类型,无法手动修改。SQL Server群集,因为各个数据库相关服务是由Windows群集服务来控制的。
排序规则[Collation]选择:Chinese_PRC_CI_AS (默认)
2.6 sa、制动管理员、指定数据目录
Sa验证采用混合身份验证,并设置强密码
管理员:加入当前域用户和管理员组用户
数据目录:将数据文件和备份文件放在指定的共享磁盘下(建议将数据文件磁盘与备份文件存放磁盘分开)
安装完成即可
3、添加SQL Server 2012群集节点
相同的安装文件拷贝到SQL02服务器安装
此处选择:安装-向SQLServer故障转移群集添加节点
选择已有的群集实例和已经默认的IP
以下服务均是默认有的,登陆账户必须与SQL01的登陆账户相同,输入密码,下一步
安装完成即可