スキップしてコンテンツを表示

AWS Backup でクロスアカウントコピーが失敗する原因を教えてください。

所要時間3分
0

AWS Backup でクロスアカウントコピージョブが失敗するため、原因をトラブルシューティングしたいです。

簡単な説明

複数の AWS アカウントでコピージョブが失敗する原因をトラブルシューティングするには、次の構成を確認します。

  • ソースアカウントと宛先アカウントが AWS Organizations の同じ組織に属していることを確認します。
  • リソースタイプは、指定した AWS リージョンでのクロスアカウントコピーをサポートしている必要があります。
  • ソースアカウントのバックアップに対する暗号化基準を確認します。
  • ソースの AWS Key Management Service (AWS KMS) キーポリシーが宛先アカウントを許可していることを確認します。
  • 宛先ボールトへのアクセスポリシーがコピー元アカウントを許可していることを確認します。
  • 組織のタグポリシーが正しく構成されていることを確認します。

解決策

重要: バックアップを新しいリージョンまたは複数のアカウントに初めてコピーする際、AWS Backup はバックアップ全体をコピーします。サービスが増分バックアップをサポートしている場合、同じリージョンまたはアカウントでは、以降のバックアップコピーは増分バックアップになります。AWS Backup は、コピー先ボールトのカスタマーマネージドキーを使用してコピーを暗号化します。クロスアカウントコピーには、ソースアカウントと宛先アカウント間の適切な認証とアクセス許可が必要です。

詳細については、「別のアカウントまたは AWS リージョンへのバックアップのコピーを暗号化する」を参照してください。

組織のメンバーアカウントを確認する

ソースアカウントと宛先アカウントが別々の組織に属している場合、次のエラーメッセージが表示されます。

"Copy job failed. Both source and destination account must be a member of the same organization."

この問題を解決するには、一方のいずれかのアカウントを、もう一方のアカウントと同じ組織に移行します。

リソースタイプがコピーアクションをサポートしているかどうかを確認する

リソースの AWS サービスは、クロスアカウントおよびクロスリージョンのバックアップをサポートしている必要があります。AWS サービスが AWS Backup でサポートしている機能のリストについては、「機能の可用性 (リソース別)」を参照してください。リージョンごとの、使用可能な機能のリストについては、「機能の可用性 (AWS リージョン別)」を参照してください。

リソースが、クロスアカウントとクロスリージョン両方のコピーバックアップを行うコピーアクションをサポートしていない場合、次の例に類似したエラーメッセージが表示されます。

"Copy job from us-west-2 to us-east-1 cannot be initiated for RDS resources. Feature is not supported for provided resource type."

次のサービスは、クロスアカウントとクロスリージョン両方のバックアップを行うコピーアクションをサポートしません。

  • Amazon Relational Database Service (Amazon RDS)
  • Amazon Aurora
  • Amazon DocumentDB (MongoDB 互換)
  • Amazon Neptune

上記のサービスでは、クロスアカウントバックアップ、クロスリージョンバックアップのいずれか一方を実行する必要があります。Amazon DynamoDB でクロスアカウントバックアップを実行するには、DynamoDB で AWS Backup アドバンスト機能を有効にする必要があります。

暗号化基準を確認する

暗号化の問題が原因でクロスアカウントバックアップジョブが失敗した場合、次のいずれかのエラーメッセージが表示されます。

"Copy job failed because the destination Backup vault is encrypted with the default Backup service managed key. The contents of this vault cannot be copied. Only the contents of a Backup vault encrypted by a customer master key (CMK) may be copied."

または、

"Snapshots encrypted with the AWS Managed CMK can't be shared. Specify another snapshot. (Service: AmazonEC2; Status Code: 400; Error Code: InvalidParameter; Request ID: ; Proxy: null)"

これらの問題を解決するには、次の手順を実行します。

  1. リソースのバックアップを新たに作成します。
  2. リソースを復元し、AWS KMS カスタマーマネージドキーを選択します。
  3. 復元されたリソースのバックアップを新たに作成します。
  4. クロスアカウントコピーを実行します。

リソースが AWS Backup により完全に管理されていない場合、バックアップはソースのリソースと同じ AWS KMS キーを使用します。リソースが完全に管理されている場合は、バックアップはバックアップボールトの暗号化キーを使用します。

詳細については、「AWS Backup でのバックアップの暗号化」を参照してください。

注: AWS Backup では、AWS Backup が完全に管理していないリソースに対しては、AWS マネージドキーを使用するクロスアカウントコピーはサポートされません。

ソースの KMS キーポリシーを確認する

ソースアカウントの AWS KMS キーポリシーで宛先アカウントが許可されていない場合、次のいずれかのエラーメッセージが表示されます。

"The source snapshot KMS key does not exist, is not enabled or you do not have permissions to access it"

または、

"AMI snapshot copy failed with error: Given key ID is not accessible. You must have DescribeKey permissions on the default CMK."

これらの問題を解決するには、ソースの AWS KMS キーポリシーに、宛先アカウントに対するアクセス許可を追加します。

次のポリシー例を使用してください。

{  "Version": "2012-10-17",
  "Id": "cab-kms-key",
  "Statement": [
    {
      "Sid": "Enable IAM User Permissions",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::SourceAccountID :root"
      },
      "Action": "kms:*",
      "Resource": "*"
    },
    {
      "Sid": "Allow use of the key",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::SourceAccountID :root",
          "arn:aws:iam::DestinationAccountID:root"
        ]
      },
      "Action": [
        "kms:DescribeKey",
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey",
        "kms:GenerateDataKeyWithoutPlaintext"
      ],
      "Resource": "*"
    },
    {
      "Sid": "Allow attachment of persistent resources",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::SourceAccountID:root",
          "arn:aws:iam::DestinationAccountID:root"
        ]
      },
      "Action": [
        "kms:CreateGrant",
        "kms:ListGrants",
        "kms:RevokeGrant"
      ],
      "Resource": "*",
      "Condition": {
        "Bool": {
          "kms:GrantIsForAWSResource": "true"
        }
      }
    }
  ]
}

注: SourceAccountID をソースアカウント ID に、DestinationAccountID を宛先アカウント ID に置き換えてください。

宛先ボールトのアクセスポリシー

宛先の AWS Backup ボールトがソースアカウントと共有されていない場合、次のエラーメッセージが表示されます。

"Access Denied trying to call AWS Backup service"

この問題を解決するには、宛先の ボールトアクセスポリシー に対するアクセス許可を、ソースアカウントに追加します。

次のポリシー例を使用してください。

{  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::SourceAccountID:root"
      },
      "Action": "backup:CopyIntoBackupVault",
      "Resource": "*"
    }
  ]
}

注: SourceAccountID をソースアカウント ID に置き換えてください。

組織のタグポリシーを確認する

AWS Backup は、リソースのタグを復旧ポイントにコピーします。たとえば、Amazon Elastic Block Store (Amazon EBS) ボリュームをバックアップする場合、AWS Backup はタグをスナップショットにコピーします。詳しくは、「復元中にタグをコピーする」を参照してください。

タグポリシーの設定ミスが原因でクロスアカウントバックアップジョブが失敗した場合、次のいずれかのエラーメッセージが表示されます。

"We are unable to copy resource tags to your backup because of the Internal Failure"

または、

"The tag policy does not allow the specified value for the following tag key: 'xyz'"

これらの問題を解決するには、次の確認を行ってください。

AWS公式更新しました 6ヶ月前
コメントはありません

関連するコンテンツ