我在非生产环境中有一个 2 节点 AG,我们希望关闭辅助节点以节省成本,只保留主节点。我有一些基于这个过程的问题,我的研究并没有回答所有这些问题。能以某种方式填补这里关于什么是可能/最好做的空白吗?
是否可以只保留一个节点 AG?如果是这样,是否有理由实际这样做?据我了解,如果您删除所有辅助节点,那么保留 AG 根本没有任何好处,因为它会变成一个独立的实例。如果我保留了 AG,那么 DB 的事务日志将不会被截断,因为它试图找到将日志发送到的地方,对吗?
AG 侦听器 - 如果我们完全移除 AG,但如果我将 AG 保留为单个节点,侦听器将无法正常工作?我的应用程序团队将需要更改代码以使用其他内容,因为侦听器名称已被编码为使用,他们希望尽可能避免这种情况。我认为这是不可能的,但想检查一下。
次要节点——我们可能会按需启动次要节点,那么在我们移除 AG 后将集群资源留在原处是否存在问题,或者移除是否会删除集群对象?我认为他们会留下来,但我还没有找到答案。
- SSRS 问题 - 我们处于横向扩展部署中,我是否需要从横向扩展中删除辅助节点?我宁愿留下它,因为我们可能需要在路上重新创建次要。我需要更新连接字符串等以使用主节点而不是侦听器。
根据我的发现,我假设的工作流程是这样的
- 连接到主副本
- 删除整个 AG(这会从所有数据库、主数据库和辅助数据库中删除 AG 设置),并使辅助数据库进入恢复状态,同时保持主数据库可访问且完全独立。
- 日志备份将像往常一样在主节点上继续,并且日志截断将按预期发生。
鉴于您对将来可能再次使用 AG 的评论,我个人不会删除 AG 和集群。我将从 AG 中删除数据库,从集群中删除辅助节点,并删除除集群中的一个节点之外的所有仲裁投票。现在少工作,以后少工作。
您没有提及备份是如何发生的,因此任何人都无法知道您的备份是否会按预期继续。
此外,您必须先从 AG 中删除数据库,然后才能删除 AG。