기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
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 단원을 참조하세요.
다음 파라미터를 이 API에 입력해야 합니다.
-
애플리케이션의 Amazon 리소스 이름(ARN)입니다.
-
리소스의 논리적 ID
-
리소스의 물리적 ID
-
AWS CloudFormation 유형
다음 예제는 AWS Resilience Hub에서 CreateAppVersionResource
API를 사용하여 애플리케이션에 리소스를 수동으로 추가하는 방법을 보여줍니다.
요청
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" } ] } }
리소스를 단일 애플리케이션 구성 요소로 그룹화
애플리케이션 구성 요소(AppComponent)는 단일 단위로 작동하고 실패하는 관련 AWS 리소스 그룹입니다. 예를 들어, 리전 간 워크로드가 스탠바이 배포로 사용되는 경우가 있습니다. AWS Resilience Hub은 어떤 AWS 리소스가 어떤 유형의 AppComponent에 속할 수 있는지를 규정하는 규칙이 있습니다. AWS Resilience Hub을 사용하면 다음 리소스 관리 API를 사용하여 리소스를 단일 AppComponent로 그룹화할 수 있습니다.
-
UpdateAppVersionResource
– 이 API는 애플리케이션의 리소스 세부 정보를 업데이트합니다. 이 API에 대한 자세한 내용은 UpdateAppVersionResource 단원을 참조하세요. -
DeleteAppVersionAppComponent
– 이 API는 애플리케이션에서 AppComponent를 삭제합니다. 이 API에 대한 자세한 내용은 DeleteAppVersionAppComponent 단원을 참조하세요.
다음 예제는 AWS Resilience Hub에서 DeleteAppVersionAppComponent
API를 사용하여 애플리케이션의 리소스 세부 정보를 업데이트하는 방법을 보여줍니다.
요청
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 단원을 참조하세요.
참고
입력 소스에서 가져온 리소스만 제외할 수 있습니다.
다음 예제는 AWS Resilience Hub에서 UpdateAppVersionResource
API를 사용할 때 애플리케이션의 리소스를 제외하는 방법을 보여줍니다.
요청
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" } ] } }