![适用于 cPanel DNS 仅服务器的规格](https://linux22.com/image/489325/%E9%80%82%E7%94%A8%E4%BA%8E%20cPanel%20DNS%20%E4%BB%85%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%E8%A7%84%E6%A0%BC%20.png)
我管理着一组 cPanel 共享托管服务器,正在考虑使用仅限 cPanel DNS运行两个(或更多)独立于托管服务器的专用 DNS 服务器。我希望这能让我在共享托管服务器之间移动托管帐户时拥有更大的灵活性。
我想了解一些关于仅运行 cPanel DNS 的机器的合适规格的想法。
可以理解的是,专用 DNS 服务器的规格要求在一定程度上取决于其提供的 DNS 记录数量。
我想要了解的是,与完整的 cPanel 机器相比,cPanel DNS 机器需要什么。
仅 DNS 的机器没有常规 cPanel 服务器上存在的邮件服务器、Web 服务器、数据库服务器和其他相关的非 DNS 应用程序。因此,与常规 cPanel 服务器的要求相比,仅 DNS 的 cPanel 服务器在 CPU 和 RAM 方面的性能相对较低。
我没有使用 cPanel DNS only 的经验,因此不知道 cPanel DNS only 与常规 cPanel 服务器相比要求有多高。我认为 RAM 不是那么重要,但需要的内存有多小,或者实际的最大值是多少,我说不上来。
有人有处理 cPanel DNS 的经验吗?您的 cPanel DNS 专用机器的规格与您的常规 cPanel 机器相比如何?像小型 VPS 这样低规格的东西能解决问题吗,还是完全专用更好,如果是,为什么?
答案1
我使用一个巨大的 cPanel DNSONLY 集群,该集群有 4 个集群服务器,连接着 60-80 多个共享服务器。
DNSONLY 取得了很大进步,目前确实令人印象深刻,我从未遇到过任何问题,它确实是即插即用的。文档非常清晰,cPanel 比我们几年前知道的 cPanel 先进和专业得多。
我的 DNS 服务器的规格是 4GB RAM、300GB Velociraptor、四核 Xeon。另外,与你所说的不同,RAM是DNS 服务器上最重要的事情之一就是将请求缓存在内存中,这样请求速度会更快,而不是让硬盘旋转。您可能不必采用 10K RPM HDD 的方式,但更重要的是关注 RAM,现在在我的 DNS 服务器上,所有 RAM 都充满了缓存,这很好。
我真的建议你也使用一个好的 VPS,因为在这种情况下,你的 DNS 服务器将成为你的故障点,不同之处在于,如果 DNS 服务器之前停止运行,那么只有该服务器上的客户端会受到影响,而现在所有 DNS 服务器都发生故障 = 一切都将彻底失败。不要在这方面吝啬,否则你会吃亏的。
不需要设置一些奇怪的 rsyncing 方法和 cronjobs,只需使用 cPanel DNSONLY,它是免费的,它有一个很好的界面,它只是作品沒有問題。
最后,将它放在好的硬件上。堆积内存。不要贪便宜,否则会成为很大的故障点。祝你好运。我花了大约 1 天时间创建 DNS 服务器 (4),然后将所有 60-80 台服务器链接到它们。
如果您还有其他问题,请告诉我,过去 8 年来,我使用 cPanel 学到了很多东西。:)
答案2
仅有 DNS 的服务器比完整的 cPanel 服务器小得多,因为它运行的只是 DNS 服务器(绑定?)、用于管理界面的 Apache 副本和 cPanel 后台守护程序。
如果我没记错的话(距离我上次使用 cPanel 已经有一段时间了),64Mb 是规定的绝对最小 RAM(有些建议 128Mb),磁盘空间要求非常小,几乎没有 VPS 在这方面会太小。CPU 要求也应该很低。
如果您有大量域名,那么您当然需要更多资源进行绑定。我的第二和第三台 DNS 服务器(基于 Debian,使用其原有的 bind9,没有 cPanel)在 48Mb 下运行良好,我怀疑它们在 32Mb 下也同样运行良好,尽管它们只管理几个区域。
需要注意的一件事是确保从 VS 提供商处获得高质量的服务。许多提供非常小的服务器的提供商在一台主机上有很多服务器,这可能会导致严重的 IO 和 CPU 争用,即使您分配的所有 RAM 都是“保证的”而不是“可突发的”,甚至考虑到在现代机器上没有运行许多区域时对轻负载的限制。
最好的办法是设置一个仅 DNSOnly 的副本,然后查看它如何运行。您可以将其作为从属服务器添加到您现有的 cPanel 配置中,而不会让其他人看到它(因为您尚未更改注册商处的名称服务器设置)。然后,当配置了主服务器中的所有域时,您可以查看它在空闲时施加了多少负载 RAM/CPU。一旦您确定您有足够的资源来应对空闲时的情况,请通过运行模拟一堆请求
dig@<newserver> <sub>.<doamin>.<tld>
以合理的速率循环(“合理”由您希望 cPanel 服务器获得的 DNS 流量定义)从几个位置进行测试,以查看它是否能在负载下应对(即,不会开始交换,并且在负载测试循环运行时不会花很长时间来响应单个手动请求)。
当我运行几个 cPanel 服务器时,我很难让 DNSOnly 正常工作,因此我转而使用简单的 Debian+Bind 设置设置辅助 DNS,编写脚本从 cPanel 服务器 rsync 区域文件并重新创建 named.conf 以匹配,然后重新启动 bind,并将这些脚本设置为每 10 分钟运行一次。这比我尝试让 cPanel DNSOnly 工作所花费的设置和测试时间少了很多,工作可靠,并且 DNS 更新到从属服务器的额外延迟长达 10 分钟是可以接受的,rsync 进程使用的带宽也是可以接受的。如果您这样做,请确保您已关闭 bind 的公告(它们不会破坏任何东西,但您的日志中最终会出现许多不必要的消息)。