通常在专用局域网中,假设我有一个web应用程序需要访问另一台计算机上的数据库。哪种做法更好?
如果是通过一个域名,那么我们需要设置像绑定(https://www.digitalocean.com/community/tutorials/how-to-configure-bind-as-a-private-network-dns-server-on-ubuntu-16-04)这样的东西来将域名映射到IP地址。
发布于 2016-11-04 06:26:12
使用域始终是一个很好的实践,因为您可以自由地替换服务器,而不必对应用程序进行任何更改(S)。假设您在一台机器(HostA)上运行一个web应用程序,在一台机器(DB1)上运行您的数据库。
几周后,您开始获得越来越多的流量,是时候进行扩展了,因此您开始添加web应用程序机器,现在您可以使用HostA、HostB、HostC和HostD运行您的web应用程序,但是正如您现在所看到的那样,您的数据库活动也在增加,您需要将您的数据库移动到一个更大更好的机器上。您继续准备一台新机器( DB2 ),现在是将应用程序从旧DB1迁移到新DB2的时候了。
IP地址:更改应用程序(S),部署到所有4或400台机器上。
FQDN:更改fqdn的DNS记录,然后将其传播到所有应用程序主机,无论是4还是400。
如果您刚刚开始,并且没有50多个主机的基础设施,那么您可以很好地不使用DNS,但迟早您会需要它。您将在多个主机上运行多个应用程序,并且需要内部DNS服务。
DNS的替代方法是使用/etc/hosts,在应用程序中使用FQDN (db.example.com),并确保所有应用程序主机都有相应的主机文件条目,可以使用任何配置管理工具对其进行管理。这与其说是一种解决方案,不如说是一种黑客攻击,但它是有效的,而且维护起来非常简单。
https://serverfault.com/questions/813130
复制相似问题