翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ステップ 3: アプリケーションプログラムを変更する
AWS Resilience Hub ではアプリケーションのドラフトバージョンを編集し、その変更を新しい 「発行済みの」バージョンに発行することで、アプリケーションリソースを変更できます。AWS Resilience Hub は、回復力評価を実行するために、更新されたリソースを含むアプリケーションの発行済みバージョンを使用します。
詳細については、次のトピックを参照してください。
リソースのアプリケーションへの手動追加
リソースが入力ソースの一部としてデプロイされていない場合は、AWS Resilience Hub ではCreateAppVersionResource
API を使用してリソースをアプリケーションに手動で追加できます。この API の詳細については、「https://docs.aws.amazon.com/resilience-hub/latest/APIReference/API_CreateAppVersionResource.html」を参照してください。
に以下のパラメータを提供する必要があります。
-
アプリケーションの Amazon リソースネーム (ARN)。
-
リソースの論理的な ID。
-
リソースの物理 ID
-
AWS CloudFormation type
次の例では、CreateAppVersionResource
APIを使用してAWS Resilience Hubのアプリケーションにリソースを手動で追加する方法を示しています。
リクエスト
aws resiliencehub create-app-version-resource \ --app-arn
<App_ARN>
\ --resource-name "backup-efs" \ --logical-resource-id '{"identifier": "backup-efs"}' \ --physical-resource-id '<Physical_resource_id_ARN>
' \ --resource-type AWS::EFS::FileSystem \ --app-components '["new-app-component"]'
レスポンス
{ "appArn": "
<App_ARN>
", "appVersion": "draft", "physicalResource": { "resourceName": "backup-efs", "logicalResourceId": { "identifier": "backup-efs" }, "physicalResourceId": { "identifier": "<Physical_resource_id_ARN>
", "type": "Arn" }, "resourceType": "AWS::EFS::FileSystem", "appComponents": [ { "name": "new-app-component", "type": "AWS::ResilienceHub::StorageAppComponent", "id": "new-app-component" } ] } }
リソースを 1 つのアプリケーションコンポーネントにグループ化
アプリケーションコンポーネント (AppComponent) は、1 つのユニットとして機能し、障害が発生する AWS 関連リソースのグループです。たとえば、スタンバイデプロイメントとして使用されるクロスリージョンのワークロードがある場合です。AWS Resilience Hub には、どの AWS リソースをどの種類の AppComponent に属させることができるかを管理するルールがあります。AWS Resilience Hub では以下のリソース管理 API を使用して、リソースを単一の AppComponent にグループ化できます。
-
UpdateAppVersionResource
— この API はアプリケーションのリソース詳細を更新します。この API の詳細については、UpdateAppVersionResourceを参照してください。 -
DeleteAppVersionAppComponent
— この API はアプリケーションから AppComponent を削除します。この API の詳細については、DeleteAppVersionAppComponentを参照してください。
次の例では、DeleteAppVersionAppComponent
API を使用してAWS Resilience Hubのアプリケーションのリソース詳細を更新する方法を示しています。
リクエスト
aws resiliencehub delete-app-version-app-component \ --app-arn
<App_ARN>
\ --id new-app-component
レスポンス
{ "appArn": "
<App_ARN>
", "appVersion": "draft", "appComponent": { "name": "new-app-component", "type": "AWS::ResilienceHub::StorageAppComponent", "id": "new-app-component" } }
次の例では、AWS Resilience HubでUpdateAppVersionResource
API を使用して、前の例で作成した空の AppComponent を削除する方法を示しています。
リクエスト
aws resiliencehub delete-app-version-app-component \ --app-arn
<App_ARN>
\ --id new-app-component
レスポンス
{ "appArn": "
<App_ARN>
", "appVersion": "draft", "appComponent": { "name": "new-app-component", "type": "AWS::ResilienceHub::StorageAppComponent", "id": "new-app-component" } }
AppComponent からのリソースの除外
AWS Resilience Hub ではUpdateAppVersionResource
API を使用してリソースを評価から除外できます。これらのリソースは、アプリケーションの回復力を計算する際には考慮されません。この API の詳細については、「https://docs.aws.amazon.com/resilience-hub/latest/APIReference/API_UpdateAppVersionResource.html」を参照してください。
注記
入力ソースからインポートされたリソースのみを除外できます。
次の例は、UpdateAppVersionResource
APIを使用する際にAWS Resilience Hubのアプリケーションのリソースを除外する方法を示しています。
リクエスト
aws resiliencehub update-app-version-resource \ --app-arn
<App_ARN>
\ --resource-name "ec2instance-nvz" \ --excluded
レスポンス
{ "appArn": "
<App_ARN>
", "appVersion": "draft", "physicalResource": { "resourceName": "ec2instance-nvz", "logicalResourceId": { "identifier": "ec2", "terraformSourceName": "test.state.file" }, "physicalResourceId": { "identifier": "i-0b58265a694e5ffc1", "type": "Native", "awsRegion": "us-west-2", "awsAccountId": "123456789101" }, "resourceType": "AWS::EC2::Instance", "appComponents": [ { "name": "computeappcomponent-nrz", "type": "AWS::ResilienceHub::ComputeAppComponent" } ] } }