View a markdown version of this page

在 上使用 Amazon RDS 的異地同步備份部署 AWS Outposts - Amazon Relational Database Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 上使用 Amazon RDS 的異地同步備份部署 AWS Outposts

對於異地同步備份部署,Amazon RDS 會在一個 AWS Outpost 上建立主要資料庫執行個體。RDS 會將資料同步複寫到不同 Outpost 上的待命資料庫執行個體。

上的異地同步備份部署 AWS Outposts 的運作方式與 中的異地同步備份部署類似 AWS 區域,但有下列差異:

上的異地同步備份 AWS Outposts 適用於所有支援的 MySQL、PostgreSQL 和 Oracle on RDS on Outposts 版本。異地同步備份部署不支援本機備份。如需詳細資訊,請參閱在 上建立 Amazon RDS 的資料庫執行個體 AWS Outposts

使用共同的責任模型

雖然 AWS 會盡商業上合理的努力來提供針對高可用性設定的資料庫執行個體,但可用性會使用共同的責任模型。Outpost 上的 RDS 進行容錯移轉和修復資料庫執行個體的能力需要您每個 Outpost 皆連接至其 AWS 區域。

Outpost 上的 RDS 還需要在託管主資料庫執行個體的 Outpost 和託管備用資料庫執行個體的 Outpost 之間建立連線以進行同步複製。對此連線的任何影響皆可阻止在 Outpost 上 RDS 執行容錯移轉。

由於同步資料複寫,您可能會看到標準資料庫執行個體部署的延遲增加狀況。託管主資料庫執行個體的 Outpost 與託管備用資料庫執行個體的 Outpost 之間的連線頻寬和延遲會直接影響延遲。如需詳細資訊,請參閱先決條件

提高可用性

我們建議採取下列措施來提高可用性:

  • 為您的任務關鍵型應用程式分配足夠的額外容量,以便在存在潛在主機問題時進行恢復和容錯移轉。此適用於資料庫子網路群組中包含子網路的所有 Outpost。如需詳細資訊,請參閱 中的彈性 AWS Outposts

  • 為您的 Outposts 提供備援網路連線。

  • 使用兩個以上的 Outpost。擁有兩個以上的 Outposts 允許 Amazon RDS 復原資料庫執行個體。如果目前 Outpost 遇到失敗時,RDS 會將資料庫執行個體移動至另一個 Outpost 來執行此復原。

  • 為您的 Outpost 提供雙電源和冗餘網路連線。

我們建議您的本機網路如下:

  • 託管主資料庫執行個體的 Outpost 與託管備用資料庫執行個體的 Outpost 之間的往返時間 (RTT) 延遲直接影響寫入延遲。將 AWS Outpost 之間的 RTT 延遲保持在低個位數毫秒內。我們建議不超過 5 毫秒,但您的要求可能會有所不同。

    您可在 WriteLatency 的 Amazon CloudWatch 指標中找到對網路延遲的淨影響。如需詳細資訊,請參閱Amazon RDS 的 Amazon CloudWatch 指標

  • Outpost 之間連線的可用性會影響資料庫執行個體的整體可用性。在 Outpost 之間有冗餘的網路連線。

先決條件

Outpost 上 RDS 上的異地同步備份部署具有下列先決條件:

  • 至少有兩個 Outpost,透過本機連線連接並附加至 AWS 區域中的不同可用區域。

  • 請確定您的資料庫子網路群組包含下列資料:

    • 指定的 AWS 區域中至少兩個可用區域中有至少兩個子網路。

    • 僅在 Outpost 中的子網路。

    • 相同 virtual private cloud (VPC) 中至少兩個 Outpost 中至少有兩個子網路。

  • 將您資料庫執行個體的 VPC 與您所有本機閘道路由表產生關聯。此關聯是必要的,因為複寫會使用 Outpost 的本機閘道在您的本機網路上執行。

    例如,假設您的 VPC 在 Outpost-A 中包含 subnet-A,在 Outpost-B 中包含 subnet-B。Outpost-A 會使用 LocalGateway-A (LGW-A),而 Outpost-B 會使用 LocalGateway-B (LGW-B)。LGW-A 具有 RouteTable-A,而 LGW-B 具有 RouteTable-B。您想對複寫流量使用 RouteTable-A 和 RouteTable-B。如要執行此作業,請將您的 VPC 與 RouteTable-A 和 RouteTable-B 產生關聯。

    如需如何建立關聯的詳細資訊,請參閱 Amazon EC2 create-local-gateway-route-table-vpc-association AWS CLI 命令。

  • 確保您的 Outpost 使用客戶擁有的 IP (CoIP) 路由。每個路由表還必須至少有一個地址集區。Amazon RDS 為主資料庫執行個體和備用資料庫執行個體分配一個額外的 IP 地址,以進行資料同步。

  • 確定 AWS 帳戶 擁有 RDS 資料庫執行個體的 擁有本機閘道路由表和 CoIP 集區。或確保它屬於 Resource Access Manager 共用的一部分,可存取本機閘道路由表和 CoIP 集區。

  • 確保 CoIP 集區中的 IP 地址可從一個 Outpost 本機閘道路由至其他 Outpost。

  • 請確保 VPC 的 CIDR 區塊 (例如 10.0.0.0/4) 和 COIP 集區 CIDR 區塊不包含來自 E 類別 (240.0.0.0/4) 的 IP 地址。RDS 在內部使用這些 IP 地址。

  • 請確保正確設定傳出和相關傳入流量。

    Outpost 上的 RDS 建立主資料庫執行個體和備用資料庫執行個體之間的虛擬私有網路 (VPN) 連線。若要使其正常運作,您的本機網路必須允許網際網路安全關聯和金鑰管理通訊協定 (ISAKMP) 的傳出和相關傳入流量。其使用使用者資料包通訊協定 (UDP) 連接埠 500 和 IP 安全 (IPsec) 網路位址轉譯周遊 (NAT-T) 使用 UDP 連接埠 4500 來執行此作業。

如需 CoIP 的更多詳細資訊,請參閱此指南中的 上的 Amazon RDS 客戶擁有的 IP 地址 AWS Outposts《AWS Outposts 使用者指南》中的客戶擁有的 IP 地址

針對 Amazon EC2 許可權限使用 API 作業

無論您是否在 上使用資料庫執行個體CoIPs AWS Outposts,RDS 都需要存取您的 CoIP 集區資源。RDS 可代表您為異地同步備份部署呼叫 CoIP 下列 EC2 許可權限 API 作業:

  • CreateCoipPoolPermission – 在 Outpost 上 RDS 上建立多可用區域資料庫執行個體時

  • DeleteCoipPoolPermission – 在 Outpost 上 RDS 上刪除多可用區域資料庫執行個體時

這些 API 作業可對內部 RDS 帳戶授予或從中移除許可權限,以從該許可權限指定的 CoIP 集區分配彈性 IP 地址。您可使用 DescribeCoipPoolUsage API 作業檢視這些 IP 地址。如需 CoIP 的更多詳細資訊,請參閱《AWS Outposts 使用者指南》中的 上的 Amazon RDS 客戶擁有的 IP 地址 AWS Outposts客戶擁有的 IP 地址

RDS 還可代表您為異地同步備份部署呼叫本機閘道路由表的下列 EC2 許可 API 作業:

  • CreateLocalGatewayRouteTablePermission – 在 Outpost 上 RDS 上建立多可用區域資料庫執行個體時

  • DeleteLocalGatewayRouteTablePermission – 在 Outpost 上 RDS 上刪除多可用區域資料庫執行個體時

這些 API 作業可對內部 RDS 帳戶授予或從中移除許可權限,以使內部 RDS VPC 與本機閘道路由表產生關聯。您可使用 DescribeLocalGatewayRouteTableVpcAssociations API 作業來檢視這些路由表-VPC 關聯。