

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 예: 다중 계정 애플리케이션 모델링
<a name="next-gen-modeling-example-multiacccount"></a>

이 예제는 차세대 Resilience Hub의 10개 계정에서 30개의 서비스로 대규모 전자 상거래 플랫폼을 모델링하는 방법을 보여줍니다.

**다중 계정 애플리케이션을 모델링하려면**

1. **중앙 계정에서 시스템을 생성합니다.**

   먼저 전체 전자 상거래 플랫폼을 나타내는 단일 시스템을 생성합니다. 중앙 거버넌스 계정에서 시스템을 생성하고 교차 계정 공유를 활성화합니다.

   ```
   aws resiliencehubv2 create-system \
     --name "acme-ecommerce" \
     --description "Acme Corp e-commerce platform" \
     --sharing-enabled
   ```

1. **해당 계정에서 서비스를 생성합니다.**

   각 팀은 중앙 시스템 ARN을 참조하여 자신의 계정에 서비스를 생성합니다.

   ```
   # In account A (auth team)
   aws resiliencehubv2 create-service \
     --name "auth-service" \
     --regions '["us-east-1", "us-west-2"]' \
     --permission-model '{"invokerRoleName": "AWSResilienceHubAssessmentRole"}' \
     --associated-systems '[{"systemArn": "arn:aws:resiliencehub:us-east-1:111111111111:system/acme-ecommerce:abc123"}]'
   
   # In account B (checkout team)
   aws resiliencehubv2 create-service \
     --name "checkout-service" \
     --regions '["us-east-1", "us-west-2"]' \
     --permission-model '{"invokerRoleName": "AWSResilienceHubAssessmentRole"}' \
     --associated-systems '[{"systemArn": "arn:aws:resiliencehub:us-east-1:111111111111:system/acme-ecommerce:abc123"}]'
   ```

1. **각 서비스에 입력 소스를 추가합니다.**

   각 팀은 리소스 검색 구성을 추가합니다.

   ```
   # Auth team adds their CloudFormation stack
   aws resiliencehubv2 create-input-source \
     --service-arn "arn:aws:resiliencehub:us-east-1:222222222222:service/auth-service:def456" \
     --resource-configuration '{"cfnStackArn": "arn:aws:cloudformation:us-east-1:222222222222:stack/auth-prod/..."}'
   
   # Checkout team adds their EKS cluster
   aws resiliencehubv2 create-input-source \
     --service-arn "arn:aws:resiliencehub:us-east-1:333333333333:service/checkout-service:ghi789" \
     --resource-configuration '{"eks": {"clusterArn": "arn:aws:eks:us-east-1:333333333333:cluster/checkout-cluster", "namespaces": ["checkout"]}}'
   ```

1. **사용자 여정을 정의합니다.**

   중앙 계정에서 비즈니스 기능별로 서비스를 그룹화하는 사용자 여정을 생성합니다.

   ```
   aws resiliencehubv2 create-user-journey \
     --system-arn "arn:aws:resiliencehub:us-east-1:111111111111:system/acme-ecommerce:abc123" \
     --name "Path to purchase" \
     --description "Customer browses, adds to cart, and completes checkout"
   ```

1. **복원력 정책을 적용합니다.**

   정책을 생성하고 서비스와 연결합니다.

   ```
   # Create a policy
   aws resiliencehubv2 create-policy \
     --name "mission-critical" \
     --availability-slo '{"target": 99.99}' \
     --multi-az '{"rtoInMinutes": 5, "rpoInMinutes": 1, "disasterRecoveryApproach": "ACTIVE_ACTIVE"}' \
     --multi-region '{"rtoInMinutes": 30, "rpoInMinutes": 5, "disasterRecoveryApproach": "WARM_STANDBY"}'
   
   # Associate with a service
   aws resiliencehubv2 update-service \
     --service-arn "arn:aws:resiliencehub:us-east-1:333333333333:service/checkout-service:ghi789" \
     --policy-arn "arn:aws:resiliencehub:us-east-1:111111111111:policy/mission-critical:xyz"
   ```

1. **평가를 실행합니다.**

   각 서비스에서 장애 모드 평가를 시작하여 복원력 격차를 식별합니다.

   ```
   aws resiliencehubv2 start-failure-mode-assessment \
     --service-arn "arn:aws:resiliencehub:us-east-1:333333333333:service/checkout-service:ghi789"
   ```

서비스를 점진적으로 추가할 수 있습니다. 가장 중요한 서비스로 시작하여 시간이 지남에 따라 더 많이 온보딩합니다. 콘솔의 시스템 수준 보기에는 단일 캔버스의 계정 전체의 모든 서비스가 표시됩니다.