我计划使用Opscode Chef部署11个节点的基础设施,提供高可用性Web应用程序。 我想分散在数据中心的可用性的节点,为此,我想rrDNS解决了两个负载平衡器之一,每个在一个单独的数据中心与自己的集群节点(提供应用程序与nginx,memcached和狮身人面像) 。 第三个DC将被用于MySQL主/从布置,因为我已经读取复制在WAN上performance不佳。 该解决scheme不会导致单点故障。
我的问题涉及这些节点应该如何连接到另一个? 所有这些服务传输的信息通常都要求通过短的LAN连接,因此不提供内置的安全性,这意味着我需要在链接本身上提供这些信息。
我正在考虑用SOCKS隧道或VPN做这个。 后者会增加节点本身的安全性,因为这样他们就不需要在他们的Internet接口上公开多个服务,而只是公开说OpenVPN的一个实例。
对于在这种基础设施中提供节点之间的链接的解决scheme有什么想法?
所以我认为你有你的答案。 VPN是做到这一点的方法。 这将适用于几乎所有的数据中心或云解决scheme。
现在,如果你正在同心协调或拥有自己的基础设施,你还有另外一个select可能会更好。 EVPL(以太网虚拟专用线),基本上是站点之间的专用连接,大多数主要的ISP可以为此提供解决scheme。 你也可以看看私人线路。
我之前使用过EVPL,他们为这种types的站点间通信提供了一个很好的解决scheme。 为了增加冗余,如果EVPL停机,一个好主意就是创build一个VPN作为数据的辅助path。
如果这是节点到节点的通信,并且您不处于可以build立专用链路(或基于防火墙的VPN通道)的情况,那么我build议使用一种名为n2n的点对点客户端解决scheme。
这一切都需要用一个超级节点来控制,但是这很容易成为厨师系统。 我使用这种方法对没有VPN或远程防火墙控制的系统进行SNMP监控 。