0

我们在2013年前端有SharePoint场。
我们正在使用sql server 2014企业版。始终处于可用性SharePoint场的故障转移无法在SQL Server中连接

最初,SharePoint场已连接到服务器A.
但我们希望为此配置Always On可用性。
我们从Sql端配置它。 服务器B是辅助副本

而且我们也配置了侦听器。
配置侦听器后,我们已将侦听器名称和IP授予SharePoint团队。
他们在客户端连接端将别名更改为Listner名称。
之后,我们完成了可能的场景来测试故障转移。

但是,故障切换方案失败。
我们观察到所有场景中都有一个共同的问题。
故障切换到服务器B后,SharePoint不会重定向到服务器B,它仍然只尝试连接到服务器A.
当我们关闭服务器A时,SharePoint也正在关闭。

当我们故障切换到服务器B(主服务器)并且服务器A可用并充当可读的辅助服务器时。 此时SharePoint网站处于可读状态。

这里的观察结果是SharePoint场只依赖于服务器A状态。

我们已要求SharePoint团队忘记始终处于开启状态和侦听器状态,并尝试直接连接到服务器B.
他们改变了cliconfg.exe中的一些设置。

之后,SharePoint再次尝试访问服务器A。
这可能是什么原因?

除了SQL和SharePoint以外,是否还有其他团队参与解决此问题?

法定配置为见证文件共享。 我们只有2个副本, 当服务器A关闭时,仲裁配置在文件共享和服务器B之间。 但是,当服务器A停机后立即检查故障转移群集管理器时,群集工作正常。

FS证人没有放在服务器A端或服务器B端。它被放置在另一台服务器上。

回答

0

我的理解是你正在寻找的是只读路由功能。

故障切换后,将流量路由到可读的辅助节点存在问题。 您的共享点始终只与AG Listener交谈。 AG Listener会告诉你谁是主要的,主要返回客户端(sharepoint)是建立连接的辅助URL。

很多人不明白,只读路由列表是副本属性。每个节点都有自己的只读路由列表。如果您在故障转移后遇到问题,但在此之前没有问题。我会建议你检查两个节点只读路由表配置。确保服务器B(主)有一个告诉客户端的列表,你应该去服务器A.使用以下查询来检查你的配置。

SELECT ar.replica_server_name "When This Server is Primary", 
    rl.routing_priority, 
    ar2.replica_server_name "Route to this Server", 
    ar.primary_role_allow_connections, 
    ar.secondary_role_allow_connections_desc, ar2.read_only_routing_url 
FROM sys.availability_read_only_routing_lists rl 
    inner join sys.availability_replicas ar 
    on rl.replica_id = ar.replica_id 
    inner join sys.availability_replicas ar2 
    on rl.read_only_replica_id = ar2.replica_id 
ORDER BY ar.replica_server_name, rl.routing_priority