SlideShare a Scribd company logo
1 of 15
COME TESTARE LA RESILIENZA
DELLA MIA APPLICAZIONE AL
FALLIMENTO DI UNA ZONA DI
DISPONIBILITÀ
O COME PIACE A ME: DARE FUOCO A UNA ZONA DI
DISPONIBILITÀ
CHI SONO:
• Giuseppe Borgese SRE @ Nozomi Networks – Istruttore AWS
Freelance
• Azienda Americana con Headquarter Europeo a Mendrisio
Svizzera
• Cybersecurity in ambito OT/IoT – Cloud principale AWS
• HIRING!!! https://www.nozominetworks.com/company/careers/
• Mi piace scrivere articoli, codice Terraform, video tutorial su
youtube trovate tutto partendo da www.borsoft.ch
• Admin AWS User Group Catania (citta’ Natale)
ZONE DI DISPONIBILITÀ – LA REGION NON
ESISTE
• Le zone si trovano in zone
“distanti” una dall’altra NORD-
SUD-OVEST-EST
• Progettare tutte le applicazioni in
modo che resistano al down di
una zona di disponibilità
DOV’E’ VENUTA L’IDEA
X`
• SIMULIAMO NON LO FACCIAMO DAVVERO 
• Risata spontanea
COME SIMULARLO? NETWORK ACL DENTRO IL
VPC
• Cosa sono le Network ACL
(NACL)?
• Firewall Stateless a livello di
subnet
• Tutto quando arriva dentro le
subnet deve passare anche
attraverso le NACL
• Nel nostro esempio ogni
subnet ha la sua NACL, ma
possono essere condivise
SERVIZI DENTRO IL VPC O FUORI IL VPC
• Fuori: S3, DynamoDB, Lambda (default), API GW (Regional/Edge)
• Dentro: Ec2, DynamoDB DAX, Lambda (con ENI), ELB, RDS, API
GW(internal)
• Con questo esperimento testiamo tutto quello che sta dentro il
VPC
TERRAFORM
MODULE TO
CREATE THE
EXAMPLE
• Potete ripetere
l’esperimento “a casa
vostra”
• Gia’ creato per motivi di
tempo
• ALB e’ uno ma in verita’ …
• Visualiziamo ELB, facciamo
curl
• Host del dns ELB
• Target Group e ECS
DIAMO FUOCO CON IL NACL
• Ogni subnet ha la sua NACL
• Scegliamo una zona di disponibilita’
• Rimuoviamo la allow per le due subnet sia in ingress che
in uscita
• Facciamo partire un cronometro
EFFETTI
• In circa 4 minuti (tempi variano) 1 IP del ALB verra’ rimosso
• In base ai tempi di health check del target group uno dei
container verra’ messo in draining
• ECS fara’ partire un container in un’altra subnet
• Downtime (parziale) molto basso in caso di un evento
catastrofico
• Auto riparazione del sistema
FIX
• Sistemando le ACL in circa 1 o 2 minuti IP del ALB torna su
• Il container rimane nella zona, per un bilanciamento bisogna
aspettare il prossimo evento di scaling.
INGEGNERIA DEL CAOS
• Per fare ancora piu’ esperimenti
FINE
• Colleghiamoci su linkedin - Giuseppe Borgese o tramite il mio
sito:
• www.borsoft.ch
• Articolo in inglese su questo argomento, c’e’ anche il github
repository.
• https://www.linkedin.com/pulse/set-fire-aws-availability-
zone-giuseppe-borgese/
• Se volete lavorare per la Svizzera dall’Italia (vi garantisco che
conviene farlo), tantissimi ruoli aperti. Contattatemi e google
nozomi careers
DOMANDE?

More Related Content

Similar to Come testare la resilienza della mia applicazione al fallimento di una zona di disponibilità

SQL Saturday 871 - Sardegna 2019 - SQL Server DR on Azure
SQL Saturday 871 - Sardegna 2019 - SQL Server DR on AzureSQL Saturday 871 - Sardegna 2019 - SQL Server DR on Azure
SQL Saturday 871 - Sardegna 2019 - SQL Server DR on AzureMarco Obinu
 
Come l’Open Source può essere alla base di un business di successo: il caso H...
Come l’Open Source può essere alla base di un business di successo: il caso H...Come l’Open Source può essere alla base di un business di successo: il caso H...
Come l’Open Source può essere alla base di un business di successo: il caso H...MariaDB plc
 
Agileday2013 pratiche agili applicate all'infrastruttura
Agileday2013 pratiche agili applicate all'infrastrutturaAgileday2013 pratiche agili applicate all'infrastruttura
Agileday2013 pratiche agili applicate all'infrastrutturaXPeppers
 
VMUGIT - Virtualizzare con i piedi per terra
VMUGIT - Virtualizzare con i piedi per terraVMUGIT - Virtualizzare con i piedi per terra
VMUGIT - Virtualizzare con i piedi per terraVMUG IT
 
Presentazione al VMUGIT UC 2014 - Virtualizzare con i piedi per terra
Presentazione al VMUGIT UC 2014 - Virtualizzare con i piedi per terraPresentazione al VMUGIT UC 2014 - Virtualizzare con i piedi per terra
Presentazione al VMUGIT UC 2014 - Virtualizzare con i piedi per terraAndrea Mauro
 
Arduino + Azure: Dal circuito allo sketch e controllo remoto con una app web ...
Arduino + Azure: Dal circuito allo sketch e controllo remoto con una app web ...Arduino + Azure: Dal circuito allo sketch e controllo remoto con una app web ...
Arduino + Azure: Dal circuito allo sketch e controllo remoto con una app web ...Giuseppe Cramarossa
 
Redis Cluster by S. Sanfilippo
Redis Cluster by S. SanfilippoRedis Cluster by S. Sanfilippo
Redis Cluster by S. SanfilippoCorley S.r.l.
 
VMUGIT UC 2013 - 09b VMUGIT SMB
VMUGIT UC 2013 - 09b VMUGIT SMB VMUGIT UC 2013 - 09b VMUGIT SMB
VMUGIT UC 2013 - 09b VMUGIT SMB VMUG IT
 
Ottimizzazione della gestione dei dati sul cloud
Ottimizzazione della gestione dei dati sul cloudOttimizzazione della gestione dei dati sul cloud
Ottimizzazione della gestione dei dati sul cloudNicolò Carandini
 
Inversion of Control @ CD2008
Inversion of Control @ CD2008Inversion of Control @ CD2008
Inversion of Control @ CD2008Mauro Servienti
 

Similar to Come testare la resilienza della mia applicazione al fallimento di una zona di disponibilità (12)

Python <3 Azure
Python <3 AzurePython <3 Azure
Python <3 Azure
 
SQL Saturday 871 - Sardegna 2019 - SQL Server DR on Azure
SQL Saturday 871 - Sardegna 2019 - SQL Server DR on AzureSQL Saturday 871 - Sardegna 2019 - SQL Server DR on Azure
SQL Saturday 871 - Sardegna 2019 - SQL Server DR on Azure
 
Come l’Open Source può essere alla base di un business di successo: il caso H...
Come l’Open Source può essere alla base di un business di successo: il caso H...Come l’Open Source può essere alla base di un business di successo: il caso H...
Come l’Open Source può essere alla base di un business di successo: il caso H...
 
Bbox
BboxBbox
Bbox
 
Agileday2013 pratiche agili applicate all'infrastruttura
Agileday2013 pratiche agili applicate all'infrastrutturaAgileday2013 pratiche agili applicate all'infrastruttura
Agileday2013 pratiche agili applicate all'infrastruttura
 
VMUGIT - Virtualizzare con i piedi per terra
VMUGIT - Virtualizzare con i piedi per terraVMUGIT - Virtualizzare con i piedi per terra
VMUGIT - Virtualizzare con i piedi per terra
 
Presentazione al VMUGIT UC 2014 - Virtualizzare con i piedi per terra
Presentazione al VMUGIT UC 2014 - Virtualizzare con i piedi per terraPresentazione al VMUGIT UC 2014 - Virtualizzare con i piedi per terra
Presentazione al VMUGIT UC 2014 - Virtualizzare con i piedi per terra
 
Arduino + Azure: Dal circuito allo sketch e controllo remoto con una app web ...
Arduino + Azure: Dal circuito allo sketch e controllo remoto con una app web ...Arduino + Azure: Dal circuito allo sketch e controllo remoto con una app web ...
Arduino + Azure: Dal circuito allo sketch e controllo remoto con una app web ...
 
Redis Cluster by S. Sanfilippo
Redis Cluster by S. SanfilippoRedis Cluster by S. Sanfilippo
Redis Cluster by S. Sanfilippo
 
VMUGIT UC 2013 - 09b VMUGIT SMB
VMUGIT UC 2013 - 09b VMUGIT SMB VMUGIT UC 2013 - 09b VMUGIT SMB
VMUGIT UC 2013 - 09b VMUGIT SMB
 
Ottimizzazione della gestione dei dati sul cloud
Ottimizzazione della gestione dei dati sul cloudOttimizzazione della gestione dei dati sul cloud
Ottimizzazione della gestione dei dati sul cloud
 
Inversion of Control @ CD2008
Inversion of Control @ CD2008Inversion of Control @ CD2008
Inversion of Control @ CD2008
 

Come testare la resilienza della mia applicazione al fallimento di una zona di disponibilità

  • 1. COME TESTARE LA RESILIENZA DELLA MIA APPLICAZIONE AL FALLIMENTO DI UNA ZONA DI DISPONIBILITÀ O COME PIACE A ME: DARE FUOCO A UNA ZONA DI DISPONIBILITÀ
  • 2.
  • 3. CHI SONO: • Giuseppe Borgese SRE @ Nozomi Networks – Istruttore AWS Freelance • Azienda Americana con Headquarter Europeo a Mendrisio Svizzera • Cybersecurity in ambito OT/IoT – Cloud principale AWS • HIRING!!! https://www.nozominetworks.com/company/careers/ • Mi piace scrivere articoli, codice Terraform, video tutorial su youtube trovate tutto partendo da www.borsoft.ch • Admin AWS User Group Catania (citta’ Natale)
  • 4. ZONE DI DISPONIBILITÀ – LA REGION NON ESISTE • Le zone si trovano in zone “distanti” una dall’altra NORD- SUD-OVEST-EST • Progettare tutte le applicazioni in modo che resistano al down di una zona di disponibilità
  • 6. X` • SIMULIAMO NON LO FACCIAMO DAVVERO  • Risata spontanea
  • 7. COME SIMULARLO? NETWORK ACL DENTRO IL VPC • Cosa sono le Network ACL (NACL)? • Firewall Stateless a livello di subnet • Tutto quando arriva dentro le subnet deve passare anche attraverso le NACL • Nel nostro esempio ogni subnet ha la sua NACL, ma possono essere condivise
  • 8. SERVIZI DENTRO IL VPC O FUORI IL VPC • Fuori: S3, DynamoDB, Lambda (default), API GW (Regional/Edge) • Dentro: Ec2, DynamoDB DAX, Lambda (con ENI), ELB, RDS, API GW(internal) • Con questo esperimento testiamo tutto quello che sta dentro il VPC
  • 9. TERRAFORM MODULE TO CREATE THE EXAMPLE • Potete ripetere l’esperimento “a casa vostra” • Gia’ creato per motivi di tempo • ALB e’ uno ma in verita’ … • Visualiziamo ELB, facciamo curl • Host del dns ELB • Target Group e ECS
  • 10. DIAMO FUOCO CON IL NACL • Ogni subnet ha la sua NACL • Scegliamo una zona di disponibilita’ • Rimuoviamo la allow per le due subnet sia in ingress che in uscita • Facciamo partire un cronometro
  • 11. EFFETTI • In circa 4 minuti (tempi variano) 1 IP del ALB verra’ rimosso • In base ai tempi di health check del target group uno dei container verra’ messo in draining • ECS fara’ partire un container in un’altra subnet • Downtime (parziale) molto basso in caso di un evento catastrofico • Auto riparazione del sistema
  • 12. FIX • Sistemando le ACL in circa 1 o 2 minuti IP del ALB torna su • Il container rimane nella zona, per un bilanciamento bisogna aspettare il prossimo evento di scaling.
  • 13. INGEGNERIA DEL CAOS • Per fare ancora piu’ esperimenti
  • 14. FINE • Colleghiamoci su linkedin - Giuseppe Borgese o tramite il mio sito: • www.borsoft.ch • Articolo in inglese su questo argomento, c’e’ anche il github repository. • https://www.linkedin.com/pulse/set-fire-aws-availability- zone-giuseppe-borgese/ • Se volete lavorare per la Svizzera dall’Italia (vi garantisco che conviene farlo), tantissimi ruoli aperti. Contattatemi e google nozomi careers