不同地区的VPC中的Amazon EC2 VM之间的通信?

我正在build立一个将在美国和欧洲有用户的网站。 我在美国东部地区build立了亚马逊虚拟私有云 (VPC),在欧洲西部地区build立了另一个VPC。 我还为Amazon Route 53 DNSconfiguration了基于延迟的选项,以便将用户引导到最近的VPC。 大多数请求将在本地提供,但对于某些请求,应用程序服务器将需要在其他区域提取一些数据。 更确切地说,我的网站将允许用户互相发送消息,虽然大多数消息可能会停留在同一个区域,但有些用户偶尔会向其他地区的用户发送消息。 所以需要在VPC之间进行一些沟通。

我可以看到4个选项:

  1. 如果亚马逊有一个select,通过VPN透明和安全地连接不同地区的VPC,这将是理想的。 但是我没有看到这个select在任何地方(这是2013年3月)。 我错过了什么吗? 这是他们的路线图吗?
  2. 我可以在两个VPC之间build立自己的VPN连接。 为了实现冗余,我需要在美国至less有两台虚拟机,在欧洲需要两台虚拟机,并在这些虚拟机上设置OpenVPN。 我担心吞吐量和延迟会受到影响,另外4台虚拟机pipe理(和支付)。
  3. 我可以configuration我的应用程序服务器来打开Internet上的数据库连接。 我将不得不使用SSL连接的安全性和设置一些身份validation和防火墙。 恐怕SSL连接对性能不利,除非我使用一些池塘来保持它们的活性。
  4. 我可以实现web服务,并让应用服务器通过这些web服务获取所需的数据。 通信必须是HTTPS。 这看起来比scheme3更清洁,但同时又复杂得多。 坦率地说,我不确定这是否值得麻烦。

你会推荐什么解决scheme? 任何其他的想法?

谢谢

亚马逊VPC目前不提供连接多个VPC的方法 – 您没有错过任何东西。

如果你决定去VPN路线,那么有一些关于在VPC之间设置的文章 – 一个使用IPsec和另一个使用OpenVPN 。

我实际上build议使用SSH隧道和从应用服务器到数据库服务器的端口redirect。 您可以使用诸如autossh之类的工具来确保SSH隧道始终处于运行状态。 您可以避免每个数据库连接的SSL协商开销。