如何在使用 AWS DMS 時,對 Amazon S3 端點連線測試失敗進行疑難排解?

2 分的閱讀內容
0

我使用 Amazon Simple Storage Service (Amazon S3) 做為 AWS Database Migration Service (AWS DMS) 工作的來源或目標端點。由於端點連線測試失敗,因此我收到錯誤訊息。

簡短說明

您必須為使用 Amazon S3 端點的 AWS Identity and Access Management (IAM) 角色,設定正確的權限。如果您沒有正確的權限,則會看到以下項目之一:

訊息:

  • 測試端點失敗: 應用程式狀態: 1020912,應用程式訊息: 無法連線到 S3 端點。拒絕存取。
  • 測試端點失敗: 應用程式狀態: 1020912,應用程式訊息: 無法列出儲存貯體 wan-dms 無法連線至資料庫;應用程式詳細訊息:無法列出儲存貯體 wan-dms AWS 無法列出儲存貯體列出儲存貯體因例外 '拒絕存取' 失敗、訊息 '拒絕存取'、錯誤類型 '15' AWS 無法列出儲存貯體無法擷取的錯誤: 拒絕存取
  • 測試端點失敗: 應用程式狀態: 1020912,應用程式訊息: 無法連線到資料庫。
  • 錯誤詳細資料:[message=putDatabase call failed, errType=ERROR_RESPONSE, status=1020414, errMessage= 無法連線至資料庫;errDetails=]

解決方法

**注意:**您使用 Amazon S3 作為 AWS DMS 的來源或目標時,請務必先檢閱下列文章:

若要解決這些錯誤,請授予存取 Amazon S3 端點所需的最低 IAM 權限。Amazon S3 來源和目標端點對 AWS DMS 具有不同的最低權限。

請參閱以下適用於 Amazon S3 來源端點的 IAM 政策範例:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:aws:s3:::awsexamplebucket",
        "arn:aws:s3:::awsexamplebucket/*"
      ]
    }
  ]
}

**注意:**請以您自己的儲存貯體名稱替換 awsexamplebucket

請參閱以下適用於 Amazon S3 做為目標端點的 IAM 政策範例:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:PutObject",
        "s3:DeleteObject",
        "s3:PutObjectTagging"
      ],
      "Resource": [
        "arn:aws:s3:::awsexamplebucket/*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:aws:s3:::awsexamplebucket"
      ]
    }
  ]
}

**注意:**請以您自己的儲存貯體名稱替換 awsexamplebucket

疑難排解權限錯誤

1.    確認 IAM 角色具有存取 Amazon S3 端點所需的最低權限。

2.    確認為 Amazon S3 端點指定的儲存貯體名稱,與 IAM 角色中允許的資源相符。例如,IAM 角色只允許存取一個儲存貯體,例如先前範例政策中的 awsexamplebucket。但是,如果在 Amazon S3 端點的儲存貯體名稱中指定了 awsexamplebucket2 ,則測試連線會失敗。

3.    確認 dms.amazonaws.com 是與 IAM 角色相關聯的受信任實體。如需詳細資訊,請參閱編輯現有角色的信任關係,和此 AWS DMS 的範例信任政策:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "Service": "dms.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

4.    如果您使用 AWS Organizations,請確認使用的 IAM 角色隸屬於允許存取的 Amazon S3 的組織。如果您的組織不允許存取,則 AWS DMS 將無法使用該 IAM 角色連線到 Amazon S3 端點。即使角色具有所有必要的權限,也不例外。如果您的組織不允許存取,請聯絡您的帳戶管理員,以允許 Amazon S3 存取您的組織。

5.    如果您的複寫執行個體版本為 3.4.7 或更新版本,請執行下列動作之一:

        讓您的複寫執行個體子網路可以公開地路由。將網際網路閘道 (IGW) 路由新增至 AWS DMS 複寫執行個體所使用的 VPC。

        -或-

        建立 VPC 端點,使複寫執行個體可以存取 AWS DMS 使用的所有來源和目標端點。如需詳細資訊,請參閱準備遷移至 AWS DMS 版本 3.4.7 及更新版本


相關資訊

如何疑難排解 AWS DMS 端點連線失敗的問題?

AWS 官方
AWS 官方已更新 1 年前