如今我作SQL Server Always On了sql
实验环境中我会建立2个2016的虚机作为SQL,每个虚机3个硬盘来充当3个分区,一个系统分区,一个数据分区,一个是备份分区。生产环境中,通常分为100,100,150(GB),不过这里我就用10GB代替了。网卡要两张,还有一张要小心跳网络。数据库
固然最好是数据硬盘和备份的盘在不一样的分区上建立,这样就算一个存储坏了也不会丢失数据。服务器
好了,进系统。网络
IP地址方面网关为网络中的网关,这点不变,DNS为域服务器的地址。ide
在域中建立一个专门用于sql服务的帐号,这个账号要加到sql服务器本地的administrator组里。由于在真实的实施中,每每拿不到域管理员权限。sqlserver
先在角色中添加故障转移群集功能:spa
安装完成就能够建立群集了。.net
添加入全部的主机。3d
一直下一步到下图
日志
为群集添加名称和IP地址。
再这里我遇到了一个错误,建立群集的计算机帐号,而目前的这个账号是没有在域中建立计算机账号的权限的,所以我要用一个有权限的账号。(这里我会新建一个ctxadmin,这个账号是为后期批量生成桌面虚机准备的,咱们将提早使用它,而不是给sqladmin权限。权限越小越好。)
以下图,我在建立ctxadmin时,将它隶属于Account Operators,这个帐号是能修改域账号的。
把ctxadmin加到本地管理员组里(全部的群集中的服务器都要),而后此次以这个账号来运行。
此次成功了。
而后就开始配置新的群集了
这里我用了比较简单的共享见证
作完这些操做,还需开启一下防火墙的端口
开放如下端口
别忘了在功能安装.net3.5
这是为下一步的服务作准备
开始安装了
服务账户改成域中为sql服务提供的账户
这样就完成了安装。
进数据库控制台在服务中开启alwayson
在数据库设置中,修改日志文件和备份文件的路径
新建数据库
新的数据库为CTXPVSDB,为后面的PVS作准备
而后进行备份,备份是alwayson的一个前提条件。
新建可用性组向导
指定副本
一直下一步直到完成。
中间遇到了一个问题:
如图红圈部分,在验证的时候一直不经过,也不报错。就一直在进行中,我看到的现象是sql2一直在连AlwaysOn。后来看了一下sql2的日志管理器,发现不停的在报这个错。
服务账号sqlserver没有登陆的权限,因而在sql2的sql中加了它的权限,仍是不行,一直到加了sysadmin才成功。
添加侦听器
如此数据库的安装基本己经完成。总结一下这篇的信息:
当前环境中已经建立的账号:
ctxadmin:用于后期的citrix管理。加入了Account Operators组,有添加域账号的权限。至少或曾经是SQL的本地管理员权限。
sqladimn:用于登陆SQL服务器。至少是SQL的本地管理员权限。至少是全部SQL的系统管理员(sysadmin)。
sqlserver:用于启动SQL服务的账号。密码永不改变。至少是全部SQL的系统管理员(sysadmin)。
以上是账号的最小权限,低于这个权限可能就会在安装中出现问题了。
SQL的服务器中须要打开如下端口:
5022(AlwaysOn数据同步)
1433(侦听器)