我们已成功将内部部署活动目录扩展到 AWS,并将域控制器创建为 EC2 微实例,我们根据亚马逊白皮书大致进行了设置:在 AWS 云中实施 Active Directory 域服务
我们正在实施一个系统,该系统会在工作时间之外停止所有 EC2 实例,并在工作时间之内启动它们。但是,我似乎找不到任何有关停止和启动这些 DC 以及其他 EC2 实例的影响(如果有的话)的文档。
SatanicPuppy 在他的回答中对这个话题给出了一个非常模糊的警告Amazon VM 可以用作 Active Directory 域控制器吗?:
当您失去对域控制器的访问权限时,可能会遇到各种问题,因此任何网络中断都会对业务产生巨大的影响
Jesper Mortensen 详细阐述了不在 AWS 中放置 DC 的理由在 Amazon EC2 上运行 Windows 域但目前这可能已经过时了
最后,我的问题是:如果这些 DC 整个周末都关闭,这会导致其他 EC2 实例出现问题吗?
编辑 1:我很清楚这可能是一个很难回答的问题,但我不会接受“你为什么要这样做”或“不要这样做”之类的答案。问题在于这将导致哪些具体问题而不是这是否是个好主意
答案1
我们不必讨论这是否是一个好主意(您已经表示不想这样做),而是讨论当您无法访问域控制器时您会遭受什么损失。
- AD 登录。如果用户之前登录过,缓存的凭据将会起作用,但新的域登录将会失败。
- 网络共享。您的 Kerberos 票证期限和执行情况由域策略设置,但访问网络共享将开始在您的网络上失败。(默认为用户 10 小时,服务 600 分钟,或者我刚刚找到的文章发布时是这样的。)
- DNS。您的桌面仍可连接,但它们无法解析域(无论是内部还是外部)。
- 任何其他使用 AD 凭据的服务(VPN、网络访问控制、集成安全性的网站等)。
如果你每天晚上和周末都关掉你的 DCs,我会担心时钟漂移时钟漂移也会导致 AD 登录出现问题(因为 Kerberos 使用时间戳)。老实说,我不知道时钟漂移会有多大,因为我从未尝试过,但这会让我感到紧张。尤其是因为虚拟机以时钟漂移而闻名。
我也担心,好吧。非工作时间是进行破坏性维护的传统时间。我也不知道您在您的位置运行什么样的计划作业,以及他们使用什么样的凭据,但您运行的任务可能会在工作日运行,从而破坏用户体验。
答案2
我知道您正在寻找这不是一个好主意的具体原因,并且正如您自己的研究表明的那样,域控制器可以短时间关闭,几乎没有风险,但我的观点是,这不是任何人正常做法,并且与最佳实践相悖。您可以自由地对您的基础设施做任何您想做的事情,但据我所知,没有人会这样做,也不会允许这样做。
如果您偶尔因维护或其他目的而关闭它们,我不会担心,但如果您每个周末都关闭它们,那么我会考虑组策略同步问题、延迟对象、USN 回滚等问题。这些不太可能发生,但如果这是 SOP,我肯定会考虑这些问题。
答案3
这实际上并不是 AD 的设计用例。Windows 中通常有一个设计假设,即域控制器会持续运行,直到它们永远消失。长时间关闭它们会导致复制错误,如果它们在长时间不活动后恢复,甚至可能引发墓碑问题。
墓碑是标记为已删除的记录,保留一段时间以保持目录在复制过程中保持一致。
有关断开连接的域控制器引入的各种注意事项的更多内容,请查看文档:https://technet.microsoft.com/en-us/library/cc782557(v=ws.10).aspx
但不仅如此。这个计划不会为你省钱,而且可能会花费更多! EC2 实例预留假设使用率为 100%,则可获得非常大的实例折扣。最好的折扣来自全额预付选项,即您提前支付实例费用,以便在接下来的 1 年或 3 年内持续运行。如果折扣超过 28%(通常如此),那么每周关闭两天不会为您节省任何费用。
此外,有时人们确实会在周末和晚上使用该域名。
不仅如此,最佳实践通常要求使用域控制器作为 DNS 服务器。更新和后台任务往往需要这样做。
无论如何,如果您为 DC 使用三个微型实例,您的 EC2 费用(用于预留实例)可能每年约为 300 美元。通过放弃预留并每天仅运行 8 小时,您可能能够将费用减少 100 美元左右。这种节省根本不值得您付出额外的工作量。
即使每年由此引起的一次复制问题也会抵消 EC2 在额外劳动力方面节省的费用。
答案4
亚马逊对我的问题的回答非常有帮助,他们理解这样做的必要性并概述了这种方法的具体潜在问题。
他们强调的重点是,这种设置发挥作用的唯一方法是确保所有依赖 EC2 DC 的机器都与它们一起关闭,这正是我们计划做的。
除此之外,还应考虑其他三个因素
- 如果您在此 DC 上具有 FSMO 角色,则关闭 DC 并不是最佳做法
- 这些 DC 在关闭时将无法进行身份验证,并且当 DC 恢复时,实例或服务将恢复身份验证
- 您需要留出足够的时间以确保它们恢复后有足够的时间完成复制。