在权限受限制的AD域环境中部署SQL Server AlwaysOn高可用性
最近在给一个客户部署基于微软TFS的软件生命周期管理平台时,客户要求数据库层实现高可用性,减少因数据库服务器故障影响软件开发进展。
客户现有域是一台搭建在Windows Server 2008上的级别为Windows 2008的企业域。为了符合客户企业域的安全规定,需要在部署数据库高可用性期间使用最低权限,即只赋予操作账户(tfsadmin)在AD目录中用于ALM的组织单元的完全权限。在综合考虑和调用的基础上,我们提出了以下方案,并附上了操作说明。
方案:
1. 在AD域中为ALM创建用于保存计算机和用户的组织单位,并为tfsadmin用户指派这个组织单位的完全控制权限,如下图。
图一:AD域中用于ALM的组织单元
图二:tfsadmin用户对改组织单元具备完全控制的权限
2. 提前在AD域中为客户端和服务器在AD域的ALM组织单元中创建计算机对象。如图一中所示,ALM中的所有客户端和服务器计算机对象,都保存在制定的OU中。
操作指南:
操作指南中的关键点:
1. 使用操作账户domain\tfsamdin创建好故障转移群集(FC01)后,需要将计算机账户FC01$设置为数据库集群计算机所在OU的“创建/删除计算机对象”的权限
在创建数据库AlwaysOn的侦听器过程中,需要在OU中创建一个虚拟的计算机账户,创建过程使用的操作账户实际上是故障转移的计算机账户(FC01$),如果此账户对群集计算机对象所在的OU没有创建计算机的权限,则会出现创建侦听器失败的错误。
(可以通过查看AD控制器上的Event ID为4741的安全日志,得知故障转移计算机账户创建了侦听器计算机账户,如下表)
已创建计算机帐户。 主题: 安全 ID: TEST\fc01$ 帐户名: fc01$ 帐户域: TEST 登录 ID: 0x13b9ca 新计算机帐户: 安全 ID: TEST\agroup03$ 帐户名: agroup03$ 帐户域: TEST 属性: SAM 帐户名: agroup03$ 显示名: - 用户主体名称: - 主目录: - 主驱动器: - 脚本路径: - 配置文件路径: - 用户工作站: - 上次设置的密码: <从不> 帐户过期: <从不> 主要组 ID: 515 允许委派给: - 旧 UAC 值: 0x0 新 UAC 值: 0x80 用户帐户控制: '工作站信任帐户' - 已启用 用户参数: - SID 历史: - 登录时间(以小时计): <未设置值> DNS 主机名: - 服务主体名称: - 附加信息: 特权 - |
2. 下面的所有操作都使用domain\tfsadmin账户
3. 数据引擎的服务账户必须使用域账户(例如domain\sqlservice)
具体操作:
1. 在AD域中创建组织单元结构(图一),并配置domain\tfsadmin对ALM节点具备完全控制权限(图二)
2. 将数据库服务器的所有节点加入到域环境,将domain\tfsadmin账户加入到数据库服务器的本地管理员组中,并设置为数据服务器的管理员角色
( 如果需要将客户端计算机加入到指定OU中,可以使用命令行NETDOM JOIN %computername% /Domain:”OU=ALMCompuers, OU=ALM, DC=test, DC=local” )
3. 在节点一服务器上创建故障转移群集,并使用文件夹共享的方式配置仲裁
图三 - 创建好的故障转移群集
4. 在所有数据库服务器上启用AlwaysOn
图四 – 启用AlwaysOn
5. 在数据库的主节点上创建测试数据库(testdb),并对此数据库做完整备份,同时共享备份目录
6. 创建数据库服务器的高可用性组,在创建高可用性组的过程中,创建侦听器。
图五 – SQL Server AlwaysOn的侦听器
图六 - 与侦听器对应的虚拟机对象
图七 - 创建高可用性过程中自动注册的DNS记录
在权限受限制的AD域环境中部署SQL Server AlwaysOn高可用性的更多相关文章
- AD域环境的搭建 基于Server 2008 R2
AD(Active Directory)即活动目录,微软的基础件.微软的很多产品如:Exchange Server,Lync Server,SharePoint Server,Forefront Se ...
- Reporting Service服务SharePoint集成模式安装配置(1、虚拟机+ 2、AD域环境配置)
研究 Reporting Service SharePoint 集成模式安装有一段时间,最初其实只是想知道Power View 技术是怎么回事,能实现什么效果.(当然也可以通过Excel 配置好 Po ...
- AD域环境搭建
1.安装Windows server服务器 我安装的是Windows server 2012 Standard x64 下载地址:https://pan.baidu.com/s/1dZ_B5JIEit ...
- 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)
从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnb ...
- 64位环境中使用SQL查询excel的方式解决
--64位环境中使用SQL查询excel的方式 环境: OS:Windows Server 2008 R2 Enterprise MSSQL:Microsoft SQL Server 2008 R2 ...
- 如何在多机架(rack)配置环境中部署cassandra节点
cassandra节点上数据的分布和存储是由系统自动完成的.除了我们要设计好partition key之外,在多机架(rack)配置环境中部署cassandra节点,也需要考虑cassandra分布数 ...
- 关于 CDH 环境中部署 Dolphinscheduler 出现 hive-jdbc 包冲突的解决办法
目前社区小伙伴经常反映在 cdh 环境中部署 Dolphinscheduler 出现 hive 包冲突的问题,报错日志信息如下: [WARN] 2020-04-29 09:55:30.815 org. ...
- windows server 2012 AD 域和站点部署系列
http://blog.csdn.net/ronsarah/article/category/1495599 http://blog.csdn.net/david_520042/article/cat ...
- 搭建域环境,安装Exchange Server 2013,复现CVE-2019-1040
搭建域环境 操作系统: 域控:Windows server 2008 R2 域成员: Windows Server 2012 . Windows 7 对于将要安装成为DC的服务器来讲,其系统配置 ...
随机推荐
- 第十九课 golang中的下划线
在 Golang 里, _ (下划线)是个特殊的标识符. 用在 import 在导包的时候,常见这个用法: 1 2 import _ "net/http/pprof" import ...
- Custom Exception in ASP.NET Web API 2 with Custom HttpResponse Message
A benefit of using ASP.NET Web API is that it can be consumed by any client with the capability of m ...
- python socket 详细介绍
Python 提供了两个基本的 socket 模块. 第一个是 Socket,它提供了标准的 BSD Sockets API. 第二个是 SocketServer, 它提供了服务器中心类,可以简化网络 ...
- SOLR对多个(关联)表创建索引
又两天没写博客,关于SOLR的东西,写了一周了还没写完我也是醉了,毕竟会的东西真不多,周四晚上加班没写,周五晚上公司同事聚会也没写,今天在家,还是把最后的一点写完吧,我会的剩下的也就是一个对多个表创建 ...
- Sql2008 全文索引 简明教程
在SQL Server 中提供了一种名为全文索引的技术,可以大大提高从长字符串里搜索数 据的速度,不用在用LIKE这样低效率的模糊查询了. 下面简明的介绍如何使用Sql2008 全文索引 一.检查 ...
- Hyberledger-Fabric 1.00 RPC学习(2)尝试建立一个network
本文参考:http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html 这里我们学习建立第一个Hyperledger Fa ...
- mysql之SQLYog配置
SQLyog(MySQL图形化开发工具) 安装: 提供的SQLyog软件为免安装版,可直接使用 使用: 输入用户名.密码,点击连接按钮,进行访问MySQL数据库进行操作
- Redis搭建(七):Redis的Cluster集群动态增删节点
一.引言 上一篇文章我们一步一步的教大家搭建了Redis的Cluster集群环境,形成了3个主节点和3个从节点的Cluster的环境.当然,大家可以使用 Cluster info 命令查看Cluste ...
- Android开发之获取系统所有进程信息。
最近在做一个app,有一个进程管理模块用于管理系统中正在运行的进程,并且可以关闭进程进行加速手机的功能,基本把它实现了出来.界面的效果都是自己写的,虽然有BUG,但是基本上能满足需求,后期我会改进BU ...
- react-navigation的多次点击重复跳转同一页面、不在堆栈路由页面使用navigation方法的解决思路
一.react-navigation的初使用 createStackNavigator ==> createSwitchNavigator ==> createAppContaine ...