簡體   English   中英

如何從一個區域到另一個區域使用 AWS DMS?

[英]How to use AWS DMS from a region to an other?

我正在嘗試使用 AWS DMS 將數據從巴黎地區 (eu-west-3) 的源數據庫 (AWS RDS MySQL) 移動到愛爾蘭地區 (eu-west-1) 的目標數據庫 (AWS Redshift)。 目標是不斷復制正在進行的更改。

我遇到了這些錯誤:

An error occurred (InvalidResourceStateFault) when calling the CreateEndpoint operation: The redshift cluster datawarehouse needs to be in the same region as the current region. The cluster's region is eu-west-1 and the current region is eu-west-3.

文檔說:

使用 AWS DMS 的唯一要求是您的終端節點之一必須位於 AWS 服務上。

所以我想要做的應該是可能的。 在實踐中,似乎是不允許的。

如何使用 AWS DMS 從一個區域到另一個區域? 在哪個地區,我的端點應該是? 在哪個地區,我的復制任務應該是? 我的復制實例必須與 RDS MySQL 實例位於同一區域,因為它們需要共享一個子網

AWS 提供了這份名為“將 AWS 資源遷移到新的 AWS 區域”的白皮書,該白皮書於去年更新。 您可能想聯系他們的支持,但一個想法是在遷移到 Redshift 之前將您的 RDS 移動到適當區域的另一個 RDS。 在白皮書中,他們提供了另一種遷移 RDS 的方法(沒有 DMS,如果您出於某種原因不想使用它):

  1. 停止所有事務或拍攝快照(但是,此時間點之后的更改將丟失,可能需要重新應用於目標 Amazon RDS 數據庫實例)。
  2. 使用臨時 EC2 實例,將所有數據從 Amazon RDS 轉儲到一個文件:
    • 對於 MySQL,請使用 mysqldump 工具。 您可能想要壓縮此轉儲(請參閱 bzip 或 gzip)。
    • 對於 MS SQL,使用 bcp 實用程序將數據從 Amazon RDS SQL 數據庫實例導出到文件中。 您可以使用 SQL Server 生成和發布腳本向導為整個數據庫或僅為選定對象創建腳本。 36
    • 注意:Amazon RDS 不支持 Microsoft SQL Server 備份文件還原。
    • 對於 Oracle,請使用 Oracle 導出/導入實用程序或數據泵功能(請參閱http://aws.amazon.com/articles/AmazonRDS/4173109646282306 )。
    • 對於 PostgreSQL,您可以使用 pg_dump 命令導出數據。
  3. 使用標准工具(例如 CP、FTP 或 Rsync)將此數據復制到目標區域中的實例。
  4. 使用新的 Amazon RDS 安全組在目標區域啟動新的 Amazon RDS 數據庫實例。
  5. 導入保存的數據。
  6. 驗證數據庫是否處於活動狀態並且您的數據是否存在。
  7. 刪除源區域中的舊 Amazon RDS 數據庫實例

我找到了我目前正在測試的解決方法。

我將“Postgres”聲明為 Redshift 集群的引擎類型。 它誘使 AWS DMS 認為它是一個外部數據庫,並且 AWS DMS 不再檢查區域。

我認為這會導致性能下降,因為 DMS 可能會使用 INSERT 而不是 COPY 命令將數據提供給 Redshift。

目前 Redshift 必須與復制實例位於同一區域。

Amazon Redshift 集群必須與復制實例位於相同的 AWS 賬戶和相同的 AWS 區域中。

https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Redshift.html

因此,應該在 VPC 內的 Redshift 區域中創建復制實例,然后使用VPC 對等使復制實例連接到另一個區域中的 MySQL 實例的 VPC

https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html

暫無
暫無

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

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