我有一个采用主动-被动配置的 2 个节点的 Windows Server 2003 集群。我可以 ping 两个节点、rdp 并访问它们的 unc 共享。
我还有一个别名,它指向 SQL 集群组之一中设置的集群 IP。(我不是 SQL 管理员,对它了解不多)。此别名响应 ping,并且 RDP 转到活动节点,工作正常。
但是我无法访问该别名的 UNC 共享。DNS 记录显然是正确的,因为它可以正常处理 ping 和 RDP。
有趣的是,我可以通过 RDP 连接到别名(反过来又是活动节点),然后尝试访问 \localhost 或 \127.0.0.1 的 unc 共享,但也失败了。
在提出这个问题之前,我已经查看了这里的其他问题,并检查了最近的更新等。但我觉得这些与我的问题无关。
这已经奏效了一段时间,唯一改变的是,我们最近不得不关闭整个数据中心,以进行急需的电力维护工作。这让我怀疑,也许某个服务没有启动。
另外值得一提的是,我本来希望故障转移到被动节点,看看问题是否仍然存在,但我只有很短的时间来关闭服务器,也就是凌晨,所以如果可以的话,我会尽量避免这种情况。
编辑
我的问题似乎是,我的所有组“集群组”和“SQL 组”都可以通过其集群名称和集群 IP 进行 ping 和 RDP,但我无法访问任何组的集群 IP 或名称上的任何 UNC 共享。
如果我从任何联网机器浏览到 \SQLGroupClusterName,我会出现“未找到网络路径”错误。
如果我通过 rdp 连接到 SQLGroupClusterName(可以工作),然后从 QLGroupClusterName 浏览到 \SQLGroupClusterName,我会收到相同的错误消息。
答案1
这是为了在 SQL 群集上进行文件共享吗?如果您在节点 1 上共享驱动器,然后对节点 2 进行故障转移,则文件共享将消失,除非您将其定义为群集服务。群集管理器中有一个资源类型,简称为文件共享,这样活动节点将具有文件共享(不要使用管理员文件共享)。使其依赖于物理磁盘和群集 IP 地址。
答案2
牢记以下两点:
- 如果您在集群中使用文件共享资源,则不需要这样做。
- 从您的描述来看,它应该可以正常工作。
这是一个解决方案:
在 2003 上,连接到具有与服务器名称不同的 DNS 别名的共享(也称为多宿主)需要您禁用DisableStrictNameChecking
注册表项。它应该是 SMB 的“功能”。
您可以在此处参考有关进行更改的完整说明:KB281308