View a markdown version of this page

Convalida delle dipendenze - AWS Resilience Hub

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Convalida delle dipendenze

Il test di convalida delle dipendenze blocca le dipendenze all'interno della regione per vedere come si comporta il servizio quando non sono disponibili. Può aiutarti a verificare che il tuo servizio rimanga intatto quando le dipendenze soft sono compromesse e le dipendenze superficiali che forse non sapevi fossero difficili. Puoi anche includere dipendenze rigide note per comprenderne l'impatto.

Cosa rende questo test unico
  • Si concentra sugli errori di dipendenza all'interno della regione.

  • Sei tu a scegliere quali dipendenze scegliere come target.

  • Se hai abilitato il rilevamento delle dipendenze nella nuova generazione di Resilience Hub, puoi scegliere tra le dipendenze scoperte. In caso contrario, puoi inserire gli endpoint DNS manualmente.

Come superare questo test
  • Si tratta di un test prolungato. Il test viene superato se tutti gli allarmi di esito positivo rimangono invariati fino OK al termine delle azioni di test. Usalo per confermare che le dipendenze soft sono davvero morbide: se i tuoi allarmi violano, la dipendenza potrebbe effettivamente essere difficile.

Cose a cui pensare
  • Inizia con una singola dipendenza soft e crea: convalidane una alla volta prima di bloccarne molte.

  • Se includi una dipendenza rigida, aspettati che gli allarmi violino e che il test abbia esito negativo: le dipendenze rigide hanno un impatto significativo se bloccate. Ciò è utile per confermare che una dipendenza è davvero difficile.

  • Scegliete allarmi di successo che misurino lo stato generale del servizio, non lo stato della dipendenza stessa.

  • Assicurati che le tue dipendenze vengano utilizzate attivamente durante il test (il traffico fluisce verso di esse): questo convalida l'effetto del blocco. Prendi in considerazione l'aggiunta di allarmi o metriche che tengano traccia dell'utilizzo delle dipendenze (ad esempio, il conteggio delle richieste o gli errori di connessione) per verificare che la dipendenza venga esercitata durante il test.

  • Le dipendenze devono essere endpoint DNS risolvibili: se il DNS non si risolve, l'azione fallirà.

  • Il blocco delle dipendenze che causano errori di controllo dello stato può causare la sostituzione dell'elaborazione (ad esempio, le attività di Amazon ECS). L'azione di perdita di pacchetti non si applica nuovamente alle attività di sostituzione e può essere segnalata come fallita.

Parametri chiave del test
  • Durata: il periodo di tempo in cui vengono eseguite le azioni di test. Sono necessari alcuni minuti aggiuntivi per raccogliere i risultati finali prima della fine del test. L'impostazione predefinita è 30 minuti quando si crea il test per la prima volta.

  • Dipendenze da bloccare: per impostazione predefinita, la dipendenza soft rilevata con il volume di query più elevato è preselezionata. Se nessuna dipendenza è stata classificata come soft, non ne viene selezionata nessuna. È possibile adattare le dipendenze in base a singole dipendenze o gruppi specifici oppure aggiungere manualmente le dipendenze in base al nome di dominio DNS. Le dipendenze aggiuntive aggiunte qui vengono utilizzate solo per questo test e non verranno salvate nel rilevamento delle dipendenze del servizio. Queste impostazioni predefinite si applicano nella console; quando si utilizza l'API, si forniscono le dipendenze in modo esplicito.

Azioni

Questo test esegue le seguenti AWS FIS azioni per indirizzare il traffico verso le dipendenze selezionate. Le azioni comportano una perdita del 100% dei pacchetti sulle istanze Amazon EC2, sulle attività di Amazon ECS (Amazon EC2 e Fargate) e sui pod Amazon EKS (Amazon EC2). Se il servizio non dispone di risorse corrispondenti al tipo di destinazione di un'azione, tale azione viene ignorata.

Nota

Le azioni utilizzate per bloccare le dipendenze richiedono una configurazione aggiuntiva: agente SSM installato sulle istanze Amazon EC2, un contenitore SSM Agent nella definizione delle attività di Amazon ECS o un account di servizio Kubernetes per i pod Amazon EKS.

Azione Description
aws:ssm:send-command Riduce il traffico dalle istanze Amazon EC2 alle dipendenze selezionate.
aws:ecs:task-network-packet-loss Riduce il traffico dalle attività di Amazon ECS alle dipendenze selezionate.
aws:eks:pod-network-packet-loss Riduce il traffico dai pod Amazon EKS alle dipendenze selezionate.

Per visualizzare i parametri di questo test e i relativi valori predefiniti, usa. get-test-template