我正在使用 Amazon Relational Database Service (Amazon RDS) 多可用區部署。為什麼在容錯移轉之後無法與 RDS 資料庫執行個體通訊? 我該怎麼做才能避免這種情況?
簡短說明
當您使用多可用區部署時,Amazon RDS 會在與子網路關聯的一個可用區域中建立主要資料庫執行個體。然後,Amazon RDS 會在與不同子網路關聯的不同可用區域中建立待命資料庫執行個體。
如果主要執行個體的子網路具有與待命資料庫執行個體子網路不同的流量路由規則,您可能會在容錯移轉後遇到連線問題。若要避免這些連線問題,請確定資料庫子網路群組中的子網路具有一致的路由規則 (如路由表中所定義)。
若要確定資料庫子網路群組中的子網路具有一致的路由規則,請將子網路與一個路由表建立關聯。若要使用與相同路由表關聯的子網路建立資料庫子網路群組,請依照下列步驟執行:
- 建立 Amazon Virtual Private Cloud (Amazon VPC)。
- 建立網際網路閘道並將其連接至您的 VPC。
- 在每個可用區域中建立子網路。
- 建立通往網際網路閘道的路由。
- 將子網路與路由表相關聯。
- 建立與 VPC 相關聯的資料庫子網路群組。
**注意:**還有其他問題也可能導致資料庫執行個體的連線問題。如需疑難排解 Amazon RDS 連線問題的其他方法,請參閱連線到 Amazon RDS 資料庫執行個體時如何解決問題?
解決方法
建立 VPC
- 開啟 Amazon VPC 主控台。
- 在瀏覽窗格中,選擇「 您的 VPCs」。
- 選擇「 建立 VPC」。
- 對於「 名稱標籤」,輸入 VPC 的名稱。
- 對於「 ** IPv4 CIDR 區塊**」,請輸入 CIDR 區塊。
- 對於「 IPv6 CIDR 區塊」,請選擇 無 IPv6 CIDR 封鎖。
- 對於「 租賃」,選擇「 預設」。
- 選擇「 是,建立」。
建立網際網路閘道並將其連接至您的 VPC
請遵循建立並連接網際網路閘道中的步驟。
在每個可用區域中建立子網路
- 開啟 Amazon VPC 主控台。
- 在瀏覽窗格中,選取「子網路」。
- 選擇「 建立子網路」。
- 對於「 名稱標籤」中,輸入子網路的名稱。
- 對於「 VPC」,請選擇您建立的 VPC。
- 對於「 可用區域」,請在 VPC 中選擇一個可用區域。
- 對於「 IPv4 CIDR 區塊」,請輸入 VPC 的 CIDR 中的 CIDR 區塊子集。
- 選擇「 是,建立」。
- 針對 VPC 中的每個可用區域重複步驟 2 到 8。
建立通往網際網路閘道的路由
- 開啟 Amazon VPC 主控台。
- 在導覽窗格中,選擇「路由表」。
- 從資源清單中,選擇與您建立的 VPC 相關聯的路由表。
- 選擇「 路線」索引標籤。然後,選擇「 編輯」。
- 選擇「 新增其他路線」。
- 對於「 目的地」中,輸入 0.0.0.0/0。
- 對於「 目標」,選擇您建立的網際網路閘道。
- 選擇「 儲存 」。
將子網路與路由表相關聯
- 選取您的路由表,然後選擇「 子網路關聯 」索引標籤。
- 選擇「 編輯」。
- 針對 VPC 中的所有子網路選取「 關聯 」。
- 選擇「 儲存 」。
建立與 VPC 相關聯的資料庫子網路群組
- 開啟「 Amazon RDS 主控台」。
- 在瀏覽窗格中,請選擇「 子網路群組」。
- 請選擇「 建立資料庫子網路群組」。
- 對於「 名稱」中,請輸入資料庫子網路群組的名稱。
- 對於「 說明」,請輸入資料庫子網路群組的說明。
- 對於「 VPC」,請選擇您建立的 VPC。
- 對於「 可用區域」,選擇一個可用區域。
- 對於「 子網路 ID」,選擇與您先前選擇的可用區域對應的子網路。
- 選擇「 新增」。
- 針對子網路重複步驟 7 到 9。
**注意:**如果您要將 VPC 的所有子網路新增至子網路群組,則可以略過步驟 7 到 9。請改為選擇「 新增與此 VPC 相關的所有子網路」,將此 VPC 的所有子網路新增至子網路群組。
- 選擇「 建立」。
建立資料庫子網路群組後,您可以在關聯的 VPC 中啟動多可用區資料庫執行個體。執行個體現在具有一致的路由規則,因為資料庫子網路群組中的子網路與相同的路由表相關聯。
相關資訊
Amazon RDS 的高可用性 (多可用區)