簡體   English   中英

帶有Amazon RDS的VPC中的AWS Elastic Beanstalk

[英]AWS Elastic Beanstalk in a VPC with Amazon RDS

我想運行一個簡單的Ruby Rack應用程序(一種REST API),該應用程序接收來自iPhone客戶端的Internet請求,與PostgreSQL數據庫進行對話並以JSON進行響應。

究竟是如何設置這對亞馬遜網絡服務(AWS)?

  1. 我希望該應用程序能夠擴展以服務於越來越多的客戶端,因此我認為我應該將Auto Scaling與Elastic Load Balancing結合使用。

  2. 我應該使用Elastic Beanstalk還是自己手動設置所有內容?

    使用PostgreSQL設置Ruby Rack服務器時,“ 手動部署與Amazon Elastic Beanstalk ”問題如何適用?

  3. 默認與自定義VPC

    我是否應該僅使用默認VPC並使用安全組來阻止直接Internet訪問EC2和DB實例? 或者,是否應該按照示例:使用Amazon RDS在VPC中啟動Elastic Beanstalk中所述創建一個自定義VPC並使用專用子網?

使用公共和私有子網的概念為您的AWS應用程序增加了一層奇妙的安全性。 通過將數據庫和應用程序服務器實例放置在專用子網中,您可以通過設計保護它們免受外部滲透和意外暴露。

我建議您首先在兩個可用區中配置一個VPC,每個可用區中有1個公共子網和1個私有子網(總共4個子網)。

在每個公共子網中放置一個NAT實例 ,並為您的私有子網更新主路由表,以將所有非vpc流量發送到NAT 這將允許啟動到您的私有子網中的實例與WAN Internet進行通信,即使它們本身不能公開尋址。

我建議您對Postgres部署使用可用區RDS部署 ,並在每個可用區的專用子網中使用RDS實例。 這將最大程度地提高安全性(Postgres不能公開訪問),並為您提供容錯能力(AZ故障不會關閉您的應用程序)。

我將在Elastic Beanstalk上設置您的Ruby應用程序 這將為您提供容錯和自動縮放功能。 您的Elastic Beanstalk負載平衡器將位於每個可用區的公共子網中,而您的Elastic Beanstalk EC2實例將位於專用子網中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM