SQL可用性组侦听器创建失败

时间:2012-12-05 06:31:36

标签: dns active-directory sql-server-2012 windows-clustering

我在为新创建的SQL 2012 Enterprise AG创建可用性组侦听器时遇到了问题。

My AG驻留在具有Hyper-V角色的Server 2012 Datacentre之上的两台虚拟机上。 VM是我的域和WSFC的一部分。每个VM有4个子网:

  • (a)172.33.0.x for management
  • (b)用于iSCSI通信的172.33.1.x
  • (c)用于iSCSI通信的172.33.2.x
  • (d)用于VM间通信的172.33.5.x

仅在我的群集中设置(a)和(d)以允许群集通信,并允许客户端连接。

每当我尝试使用此查询创建一个侦听器时

USE [master]
GO
ALTER AVAILABILITY GROUP [Sharepoint-System-DB-AvailabilityGroup]
ADD LISTENER N'SQL-SHP-AG01-L1' (
WITH IP
((N'172.33.5.203', N'255.255.255.0'),(N'172.33.0.203', N'255.255.255.0'))
, PORT=1433);
GO

我收到此错误:

Msg 19471, Level 16, State 0, Line 1
The WSFC cluster could not bring the Network Name resource with DNS name 'SQL-SHP-AG01-L1' online. The DNS name may have been taken or have a conflict with existing name services, or the WSFC cluster service may not be running or may be inaccessible. Use a different DNS name to resolve name conflicts, or check the WSFC cluster log for more information.
Msg 19476, Level 16, State 4, Line 1
The attempt to create the network name and IP address for the listener failed. The WSFC service may not be running or may be inaccessible in its current state, or the values provided for the network name and IP address may be incorrect. Check the state of the WSFC cluster and validate the network name and IP address with the network administrator.

我试过了:

  • 一些在线帖子建议我尝试在AD中预先创建计算机对象,我做了,同样的错误
  • 在计算机OU上设置安全设置,以允许运行AG的计算机创建计算机对象,同样的错误
  • 我有另一个群集设置(对于另一个AG),它也会生成相同的错误

可能与之相关的是,我经常在群集的所有者节点上遇到以下错误之一:

Cluster network name resource 'Cluster Name' failed registration of one or more associated DNS name(s) for the following reason:
DNS server failure.

为此,我尝试过:

  • 手动创建A记录,设置“允许所有经过身份验证的用户更改此记录”
  • 允许“所有人”完全访问DNS A记录
  • 允许对我的域名的DNS记录进行非安全更新

也无济于事,这让我觉得有更深层次的错误。有什么建议吗?

4 个答案:

答案 0 :(得分:6)

我们遇到了同样的问题。解决方案是根据此链接授予与Active Directory中的群集组“创建计算机”权限关联的计算机对象 - http://technet.microsoft.com/en-us/library/cc731002%28WS.10%29.aspx#BKMK_steps_precreating

这是需要这些权限的群集组计算机对象。

答案 1 :(得分:1)

打开“Active Directory用户和计算机”,为将在其中创建可用性组的群集名称对象(CNO)授予权限。需要授予的两个权限是: "阅读所有属性"和"创建计算机对象"通过集装箱到CNO。更多细节可以在以下博客中找到 http://blogs.msdn.com/b/psssql/archive/2013/09/30/error-during-installation-of-an-sql-server-failover-cluster-instance.aspx

答案 2 :(得分:0)

我们遇到的另一个问题是 - 以AOAG和听众的名义对_。一旦我们使用下划线重新创建AOAG,我们就可以使用下划线创建监听器。

答案 3 :(得分:0)

在我们的例子中,所有的AD权限都已经到位-但是未能创建带有相同错误消息的侦听器。最终,我们发现(使用cluadmin.msc)在两个节点上停止和启动集群服务都可以通过某种方式纠正该问题,并成功创建了侦听器。