本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
教學課程:將 Amazon EC2 執行個體連線至 Amazon RDS 資料庫
教學課程目標
本教學課程的目的是了解如何使用 AWS Management Console來設定 Amazon EC2 執行個體和 Amazon RDS 資料庫之間的連線。
設定連線有不同的選項。在本教學課程中,我們將探討以下三個選項:
-
選項 1:使用 EC2 主控台自動將執行個體連線至 RDS 資料庫
使用 EC2 主控台中的自動連線功能,自動設定 EC2 執行個體和 RDS 資料庫之間的連線,以允許 EC2 執行個體和 RDS 資料庫之間的流量。
-
選項 2:使用 RDS 主控台自動將執行個體連線至 RDS 資料庫
使用 RDS 主控台中的自動連線功能,自動設定 EC2 執行個體和 RDS 資料庫之間的連線,以允許 EC2 執行個體和 RDS 資料庫之間的流量。
-
選項 3:透過建立安全群組,以手動方式將執行個體連線至 RDS 資料庫
透過手動設定和指派安全群組來複製選項 1 和選項 2 中自動連線功能自動建立的組態,以設定 EC2 執行個體與 RDS 資料庫之間的連線。
Context
至於為什麼要在 EC2 執行個體和 RDS 資料庫之間設定連線,讓我們一起思考下面這種情況:您的網站向使用者提供表單以供填寫。您需要在資料庫中擷取表單資料。您可以在已被設定為 Web 伺服器的 EC2 執行個體上託管您的網站,並且可以在 RDS 資料庫中擷取表單資料。EC2 執行個體和 RDS 資料庫必須彼此相連,以便表單資料可以從 EC2 執行個體傳送到 RDS 資料庫。本教學課程會說明如何設定該連線。請注意,這只是連線 EC2 執行個體和 RDS 資料庫的其中一個使用案例範例。
架構
下圖展示了所建立的資源,以及完成本教學課程中的所有步驟後產生的架構組態。
此圖展示了您將建立的下列資源:
-
您將在相同的 AWS 區域 VPC 和可用區域中建立 EC2 執行個體和 RDS 資料庫。
-
您將在公有子網路中建立 EC2 執行個體。
-
您將在私有子網路中建立 RDS 資料庫。
當您使用 RDS 主控台建立 RDS 資料庫並自動連線 EC2 執行個體時,會自動選取資料庫的 VPC、資料庫子網路群組和公開存取設定。在與 EC2 執行個體相同之 VPC 內的私有子網路中自動建立 RDS 資料庫。
-
網際網路使用者可以透過網際網路閘道使用 SSH 或 HTTP/HTTPS 連線至 EC2 執行個體。
-
網際網路使用者無法直接連線至 RDS 資料庫;只有 EC2 執行個體可連線至 RDS 資料庫。
-
當您使用自動連線功能允許 EC2 執行個體和 RDS 資料庫之間的流量時,會自動建立並新增下列安全群組:
-
建立安全群組 ec2-rds-
x
並新增至 EC2 執行個體。它有一個傳出規則,該規則引用 rds-ec2-x
安全群組作為其目的地。這允許來自 EC2 執行個體的流量透過 rds-ec2-x
安全群組到達 RDS 資料庫。 -
建立安全群組 rds-ec2-
x
並新增至 RDS 資料庫。它有一個傳入規則,該規則引用 ec2-rds-x
安全群組作為其來源。這允許來自 EC2 執行個體的流量透過 ec2-rds-x
安全群組到達 RDS 資料庫。
透過使用單獨的安全群組 (一個用於 EC2 執行個體,一個用於 RDS 資料庫),您可以更好地控制執行個體和資料庫的安全性。如果您要在執行個體和資料庫上使用相同的安全群組,然後修改安全群組以適應資料庫,則修改會同時影響執行個體和資料庫。換句話說,如果您使用一個安全群組,您可能會無意中修改資源 (執行個體或資料庫) 的安全性,因為您忘記了安全群組已連接至該資源。
自動建立的安全群組也會遵守最低權限,因為其只允許透過建立特定於工作負載的安全群組對,在資料庫連接埠上進行此工作負載的相互連線。
-
考量事項
完成本教學課程中的任務後,請考量以下內容:
-
兩個主控台 - 在本教學課程中,您將使用下列兩個主控台:
-
Amazon EC2 主控台 – 您將使用 EC2 主控台啟動執行個體、自動將 EC2 執行個體連線到 RDS 資料庫,以及使用手動選項,透過建立安全群組來設定連線。
-
Amazon RDS 主控台 – 您將使用 RDS 主控台建立 RDS 資料庫,並自動將 EC2 執行個體連線到 RDS 資料庫。
-
-
一個 VPC - 若要使用自動連線功能,EC2 執行個體和 RDS 資料庫必須位於相同的 VPC 中。
如果您要手動設定 EC2 執行個體和 RDS 資料庫之間的連線,則可以在一個 VPC 中啟動 EC2 執行個體,並在另一個 VPC 中啟動 RDS 資料庫;不過,您需要設定其他路由和 VPC 組態。這是本教學課程中涵蓋的情況。
-
一 AWS 區域:EC2 執行個體和 RDS 資料庫必須位於相同的 區域。
-
兩個安全群組 - EC2 執行個體與 RDS 資料庫之間的連線由兩個安全群組設定 - 針對 EC2 執行個體的安全群組,以及針對 RDS 資料庫的安全群組。
當您使用 EC2 主控台或 RDS 主控台中的自動連線功能來設定連線 (本教學課程的選項 1 和選項 2) 時,會自動建立安全群組並指派給 EC2 執行個體和 RDS 資料庫。
如果您不使用自動連線功能,則需要手動建立並指派安全群組。您可以在本教學課程的選項 3 中執行此操作。
教學課程所需時間
30 分鐘
您可以一次性完成整個教學課程,也可以一次完成一個任務。
成本
完成本教學課程後,您建立 AWS 的資源可能會產生成本。
您可以在免費方案
如果您的 EC2 執行個體和 RDS 資料庫位於不同的可用區域,則需支付資料傳輸費用。若要避免產生這些費用,EC2 執行個體和 RDS 資料庫必須位於相同的可用區域。如需有關資料傳輸費用的資訊,請參閱「Amazon EC2 隨需定價」頁面中的資料傳輸
若要避免在完成教學課程後產生費用,請務必刪除不再需要的資源。如需刪除資源的步驟,請參閱 任務 4 (選用):清除。