Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Beispiel: Modellieren einer Anwendung mit mehreren Konten
Dieses Beispiel zeigt, wie eine große E-Commerce-Plattform mit 30 Diensten auf 10 Konten im Resilience Hub der nächsten Generation modelliert wird.
Um eine Anwendung mit mehreren Konten zu modellieren
-
Erstellen Sie das System in einem zentralen Konto.
Erstellen Sie zunächst ein einziges System, das die gesamte E-Commerce-Plattform darstellt. Erstellen Sie das System in Ihrem zentralen Verwaltungskonto und aktivieren Sie die kontoübergreifende gemeinsame Nutzung:
aws resiliencehubv2 create-system \ --name "acme-ecommerce" \ --description "Acme Corp e-commerce platform" \ --sharing-enabled -
Erstellen Sie Dienste in ihren jeweiligen Konten.
Jedes Team erstellt seinen Service in seinem eigenen Konto und verweist dabei auf den ARN des Zentralsystems:
# 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"}]' -
Fügen Sie jedem Dienst Eingabequellen hinzu.
Jedes Team fügt seine Konfiguration für die Ressourcenerkennung hinzu:
# 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"]}}' -
Definieren Sie Benutzererfahrungen.
Erstellen Sie im zentralen Konto Benutzererfahrungen, die Dienste nach Geschäftsfunktionen gruppieren:
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" -
Wenden Sie eine Resilienzrichtlinie an.
Erstellen Sie eine Richtlinie und verknüpfen Sie sie mit Diensten:
# 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" -
Führen Sie Bewertungen durch.
Starten Sie für jeden Service eine Bewertung des Fehlermodus, um Ausfallsicherheitslücken zu identifizieren:
aws resiliencehubv2 start-failure-mode-assessment \ --service-arn "arn:aws:resiliencehub:us-east-1:333333333333:service/checkout-service:ghi789"
Dienste können schrittweise hinzugefügt werden — beginnen Sie mit den wichtigsten Diensten und integrieren Sie im Laufe der Zeit weitere. Die Ansicht auf Systemebene in der Konsole zeigt alle Dienste aller Konten auf einer einzigen Arbeitsfläche.