

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# でリソースを割り当てる AWS CLI
<a name="assigning-resources-json"></a>

## サービスまたはリソースタイプでフィルタリングする
<a name="resource-assignment-filter"></a>

リソースの選択は、サービス名とリソースタイプに基づいています。リソースの選択方法によって、リソースをバックアップに含めるかどうかが決定されます。これは、サービス名、リソースタイプ、オプトイン設定によって左右されます。

**サービス名による選択**  
リソース選択でサービス名のみを指定する場合、バックアップに含めるかどうかは、基盤となるリソースタイプのオプトイン設定によって異なります。例えば、`arn:aws:ec2:*` では、EC2 リソースタイプのオプトイン設定が有効になっている場合にのみ EC2 インスタンスがバックアップに含められます。

**リソースタイプによる選択**  
リソースタイプでリソース選択を直接指定すると、その特定のサービスのオプトイン設定に関係なくバックアップに含まれるようになります。例えば、`arn:aws:ec2:::instance/*` では、EC2 インスタンスはオプトイン設定に関係なくバックアップされます。

**共有リソースタイプ**  
複数のリソースが同じリソースタイプを共有する場合、バックアップを開始するには、特定のリソースタイプのオプトイン設定を有効にする必要があります。

**Example**  
Aurora クラスターと RDS クラスターは ARN 形式 `arn:aws:rds:::cluster:*` を共有します。Aurora データベースをバックアップするには、Aurora のオプトイン設定を有効にする必要があります。  
FSx と FSx for OpenZFS は ARN 形式 `arn:aws:fsx:::file-system/*` を共有します。それぞれのオプトイン設定を有効にして、これらのファイルシステムをバックアップします。

## JSON を使用してバックアッププランのリソース割り当てを定義する
<a name="backup-resource-json"></a>

JSON ドキュメントでリソースの割り当てを定義できます。

条件、タグ、またはリソースを指定して、バックアッププランに何を含めるかを定義できます。含めるパラメータを決定するのに役立つ詳細情報については、「[https://docs.aws.amazon.com/aws-backup/latest/devguide/API_BackupSelection.html#Backup-Type-BackupSelection-ListOfTags](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_BackupSelection.html#Backup-Type-BackupSelection-ListOfTags)」を参照してください。

このサンプルリソース割り当ては、すべての Amazon EC2 インスタンスをバックアッププラン *BACKUP-PLAN-ID* に割り当てます。

```
{
  "BackupPlanId":"BACKUP-PLAN-ID",
  "BackupSelection":{
    "SelectionName":"resources-list-selection", 
    "IamRoleArn":"arn:aws:iam::ACCOUNT-ID:role/IAM-ROLE-ARN",
    "Resources":[
      "arn:aws:ec2:*:*:instance/*"
    ]
  }
}
```

この JSON が `backup-selection.json` として保存されていると仮定すると、次の CLI コマンドを使用して、これらのリソースをバックアッププランに割り当てることができます。

```
aws backup create-backup-selection --cli-input-json file://PATH-TO-FILE/backup-selection.json
```

以下では、対応する JSON ドキュメントとともに、リソース割り当ての例を示します。このテーブルを読みやすくするために、例ではフィールド `"BackupPlanId"`、`"SelectionName"`、および `"IamRoleArn"` を省略しています。ワイルドカード `*` は 0 個以上の空白でない文字を表します。

**Example 例: マイアカウント内のすべてのリソースを選択する**  

```
{
  "BackupSelection":{
    "Resources":[
      "*"
    ]
  }
}
```

**Example 例: マイアカウント内のすべてのリソースを選択するが、EBS ボリュームは除外する**  

```
{
  "BackupSelection":{
    "Resources":[
      "*"
    ],
    "NotResources":[
      "arn:aws:ec2:*:*:volume/*"
    ]
  }
}
```

**Example 例: "backup":"true" でタグ付けされたすべてのリソースを選択するが、EBS ボリュームは除外する**  

```
{
  "BackupSelection":{
    "Resources":[
      "*"
    ],
    "NotResources":[
      "arn:aws:ec2:*:*:volume/*"
    ],
    "Conditions":{
      "StringEquals":[
        {
          "ConditionKey":"aws:ResourceTag/backup",
          "ConditionValue":"true"
        }
      ]
    }
  }
}
```

**重要**  
RDS、Aurora、Neptune、および DocumentDB の ARN は `arn:aws:rds:` で始まります。これらのタイプをすべて含めない場合は、タグと条件演算子を使用して選択対象を絞り込みます。

**Example 例: "backup":"true" および "stage":"prod" の両方でタグ付けされたすべての EBS ボリュームと RDS DB インスタンスを選択する**  
ブール値の算術は IAM ポリシーの場合と同様であり、"Resources" はブール値 OR を使用して組み合わせ、`"Conditions"` はブール値 AND を使用して組み合わせます。  
対応する Aurora、Neptune、または DocumentDB リソースがないため、`"Resources"` 式 `"arn:aws:rds:*:*:db:*"` では RDS DB インスタンスのみが選択されます。  

```
{
  "BackupSelection":{
    "Resources":[
      "arn:aws:ec2:*:*:volume/*",
      "arn:aws:rds:*:*:db:*"
    ],
    "Conditions":{
      "StringEquals":[
        {
          "ConditionKey":"aws:ResourceTag/backup",
          "ConditionValue":"true"
        },
        {
          "ConditionKey":"aws:ResourceTag/stage",
          "ConditionValue":"prod"
        }
      ]
    }
  }
}
```

**Example 例: "backup":"true" でタグ付けされているが、"stage":"test" ではタグ付けされていないすべての EBS ボリュームと RDS インスタンスを選択する**  

```
{
  "BackupSelection":{
    "Resources":[
      "arn:aws:ec2:*:*:volume/*",
      "arn:aws:rds:*:*:db:*"
    ],
    "Conditions":{
      "StringEquals":[
        {
          "ConditionKey":"aws:ResourceTag/backup",
          "ConditionValue":"true"
        }
      ],
      "StringNotEquals":[
        {
          "ConditionKey":"aws:ResourceTag/stage",
          "ConditionValue":"test"
        }
      ]
    }
  }
}
```

**Example 例: "key1" でタグ付けされたすべてのリソースと、"include" で始まるが "key2" では始まらない値、および "exclude" という単語を含む値を選択する**  
ワイルドカード文字は文字列の先頭、最後、および途中で使用できます。上記の例の `include*` および `*exclude*` でワイルドカード文字 (\$1) を使用することに注意してください。前の例 `arn:aws:rds:*:*:db:*` のように、文字列の途中にワイルドカード文字を使用することもできます。  

```
{
  "BackupSelection":{
    "Resources":[
      "*"
    ],
    "Conditions":{
      "StringLike":[
        {
          "ConditionKey":"aws:ResourceTag/key1",
          "ConditionValue":"include*"
        }
      ],
      "StringNotLike":[
        {
          "ConditionKey":"aws:ResourceTag/key2",
          "ConditionValue":"*exclude*"
        }
      ]
    }
  }
}
```

**Example 例: FSx ファイルシステムと、RDS、Aurora、Neptune、および DocumentDB の各リソース以外の、"backup":"true" でタグ付けされたすべてのリソースを選択する**  
`NotResources` の項目は、ブール値 OR を使用して結合されます。  

```
{
  "BackupSelection":{
    "Resources":[
      "*"
    ],
    "NotResources":[
      "arn:aws:fsx:*",
      "arn:aws:rds:*"
    ],
    "Conditions":{
      "StringEquals":[
        {
          "ConditionKey":"aws:ResourceTag/backup",
          "ConditionValue":"true"
        }
      ]
    }
  }
}
```

**Example 例: タグ "backup" および任意の値でタグ付けされたすべてのリソースを選択する**  

```
{
  "BackupSelection":{
    "Resources":[
      "*"
    ],
    "Conditions":{
      "StringLike":[
        {
          "ConditionKey":"aws:ResourceTag/backup",
          "ConditionValue":"*"
        }
      ]
    }
  }
}
```

**Example 例: "stage":"test" でタグ付けされたリソースを除くすべての FSx ファイルシステム、Aurora クラスター "my-aurora-cluster"、および "backup":"true" でタグ付けされたすべてのリソースを選択する**  

```
{
  "BackupSelection":{
    "Resources":[
      "arn:aws:fsx:*",
      "arn:aws:rds:*:*:cluster:my-aurora-cluster"
    ],
    "ListOfTags":[
      {
        "ConditionType":"StringEquals",
        "ConditionKey":"backup",
        "ConditionValue":"true"
      }
    ],
    "Conditions":{
      "StringNotEquals":[
        {
          "ConditionKey":"aws:ResourceTag/stage",
          "ConditionValue":"test"
        }
      ]
    }
  }
}
```

**Example 例: `"stage":"test"` でタグ付けされた EBS ボリュームを除き、タグ `"backup":"true"` でタグ付けされたすべてのリソースを選択する**  
2 つの CLI コマンドを使用して、このリソースグループを選択するための 2 つの選択項目を作成します。最初の選択は、EBS ボリュームを除くすべてのリソースに適用されます。2 番目の選択は EBS ボリュームに適用されます。  

```
{
  "BackupSelection":{
    "Resources":[
      "*"
    ],
    "NotResources":[
      "arn:aws:ec2:*:*:volume/*"
    ],
    "Conditions":{
      "StringEquals":[
        {
          "ConditionKey":"aws:ResourceTag/backup",
          "ConditionValue":"true"
        }
      ]
    }
  }
}
```

```
{
  "BackupSelection":{
    "Resources":[
      "arn:aws:ec2:*:*:volume/*"
    ],
    "Conditions":{
      "StringEquals":[
        {
          "ConditionKey":"aws:ResourceTag/backup",
          "ConditionValue":"true"
        }
      ],
      "StringNotEquals":[
        {
          "ConditionKey":"aws:ResourceTag/stage",
          "ConditionValue":"test"
        }
      ]
    }
  }
}
```