本文属于 基于SQL Alwayson的Windows Server 2012 WSFC搭建指南 系列文章
前言:
作为SQL Server DBA,在搭建SQL Server AlwaysOn(从SQL 2012引入)时,需要涉及Windows Server Failover Cluster的知识。在过去,本人任职的公司有专门的系统管理员负责提供基础环境,但是到了今时今日,即使有这样的环境,为了提升个人能力和解决一系列的问题,不能单纯只关注在SQL Server层面,无奈的是网上很难搜索到满意的内容,所以专门整理一个系列文章,也作为本人
另外一系列文章的参考资料。由于本人不是系统管理员,所以不打算过于深入介绍WSFC,我们的关注点还是为了给SQL Server 提供基础架构环境。
由于有目的地搭建,所以本系列的文章主要分为下面章节:
- 简介及Windows Server AD搭建和配置
- Windows Server Failover Cluster(WSFC)搭建和配置 https://clusteringformeremortals.com/2012/12/31/windows-server-2012-clustering-step-by-step/
本节先做一个简要介绍。
简介:
正如上面所说,这个系列的目的并不是介绍完整的Windows Server功能,而是为了提供SQL AlwaysOn一个基础环境,所以目标很明确。大家可以看一下我的另外一篇文章里面提到的“
SQL Server AlwaysON从入门到进阶(3)——基础架构”,我们在搭建SQL AlwaysOn之前,需要有Windows AD域、DNS服务器、TCP/IP网络、WSFC这些核心组件。其安装顺序大概为:
- 规划架构并安装Windows Server (由于工作需要,这里使用Windows 2012为例)。
- 安装和配置AD、DNS和TCP/IP网络,为了服务另外一个系列文章,这里使用5节点,并按照该系列文章的要求搭建。
- 安装和配置WSFC。
首先,我们需要有多台装有Windows Server的服务器(由于实验环境有限,这里使用一台物理机上的Hyper-V部署整套环境),但是初始化安装Windows Server是作为一个运维相关岗位人员需要学会的基础技能,所以这里不演示。只列出一些信息:
Computername | IP Address |
---|---|
ClusterNode1 | 192.168.0.171 |
ClusterNode2 | 192.168.0.172 |
ClusterNode3 | 192.168.0.173 |
ClusterNode4 | 192.168.0.174 |
ClusterNode5 | 192.168.0.175 |
WIN2K12R2-01 | 192.168.0.176 |
然后进行加域。
Windows Server AD搭建和配置:
前面提到过我们的目的,所以这里不打算讲解AD的概念,直接进行搭建。在生产环境中,AD可能有多个域控(DC,Domain Controller),但是为了演示之用,这里只考虑单DC。
首先我们这里有一台Windows Server虚拟机会作为AD。以下是步骤,注意,一般情况下我们都会使用虚拟机来做这些事情,为了保证一些可恢复性,在操作之前强烈建议对虚拟机创建快照(Hyper-V中文版叫检查点)。
准备阶段:
1. 机器名修改:
Windows安装之后都是一些随机字符作为机器名,这个命名规则不适合在正式环境中使用。所以我们需要按照企业的命名规范进行重命名,这个在纯Windows运维过程中没什么影响,但是在SQL Server的运维过程会有致命的问题。本人在使用Windows Server 2008 +SQL Server 2008R2搭建SQL 复制(Replication)的过程中就发现各种报错,其原因就是在安装完SQL Server之后又对Windows服务器进行了重命名,导致SQL Server记录的信息不一致,虽然后办法可以进行“缓解”,但是本人不喜欢运维一些有潜在风险的系统,并且本身这种现象就是“不应该存在”的,所以建议先配置好OS再安装SQL以免不必要的问题。
修改机器名有很多方式,也很容易,这里就不做过多延时。本例中把这台机器名命名为:AGAD,AG for AlwaysOn Availability Group。AD自然就是活动目录的缩写。由于修改机器名需要重启服务器,在对后期操作不影响的前提下,我会选择先配置好其他可以配置的内容之后再一次性重启。

下一步就是修改IP地址。
2.IP地址修改:
按下图配置IP地址:(
修正:由于在配置过程中的手误,默认网关中应该为192.168.0.254,但是由于某些原因环境被毁,无法重新截图,所以只能做个标注,敬请原谅)

关闭LMHOSTS查找:(
修正:由于在配置过程中的手误,默认网关中应该为192.168.0.254,但是由于某些原因环境被毁,无法重新截图,所以只能做个标注,敬请原谅)

启用“Jumbo Frame”:

至此配置已经完毕,建议再做一次虚拟机快照。重启机器以便配置生效。
安装阶段:
1. 在服务器管理器|仪表板中,点击【添加角色和功能】:

2. 一直选择【下一步】,直到下图,选择【Active Directory 域服务】,并添加所需功能,另外把【DNS服务器】也一并安装上:

3. 勾选安装.NET 3.5,在创建虚拟机之初本人已经手动安装了,所以这里不会显示空白:

4.勾选【如果需要,自动重新启动目标服务器】,并点击安装:

5. 安装完毕后,右上方的旗子处会显示一个黄色叹号,在Windows Server 2012中,域服务器的配置需要分2步完成,所以刚才只是第一步,现在是第二步,选择【将此服务器提升为域控制器】:

6. 选择【添加新林】,输入根域名称:

7. 配置DSRM密码:一般情况下这一个页面只输入密码,其他保持默认:

8. DNS选项:此处略过,继续下一步
9. 到了【路径】部分,选择SYSVOL的日志文件存放地址,由于这里不是编写如何配置和管理AD,所以保持默认值继续下一步。

10. 一直到【先决条件检查】,当看到下图红框部分即可进行安装,点击【安装】,安装过程会自动重启:

11. 安装完成后,打开服务器管理器,可以看到AD DS和DNS都出现在服务器管理器的左边。但是这个不是管理界面,最好进入开始菜单中进行对应的管理:



至此,AD已经算完成。建议再做一次快照。
3. 简单校验阶段:
1. AD数据文件是否产生:

2. DNS服务器是否工作正常,与域相关的资源记录,特别是SRV记录是否正确写入:

3. SYSVOL文件夹是否存在,能正常访问:

4. 日志中是否有错误事件等。
至此,我们的准备工作已经完毕。下面是一些资料整理,以便下文使用,下文是搭建WSFC的操作:
角色 | 机器名 | IP地址 |
AD/DNS服务器 | AGAD | 192.168.0.1 |
群集节点1 | ClusterNode1 | 192.168.0.171 |
群集节点2 | ClusterNode2 | 192.168.0.172 |
群集节点3 | ClusterNode3 | 192.168.0.173 |
群集节点4 | ClusterNode4 | 192.168.0.174 |
群集节点5 | ClusterNode5 | 192.168.0.175 |