<\/figure><\/div>\n\n\n<\/p>\n\n\n\n
\u201cEsistono alcuni segreti che non si possono essere raccontati\u201d<\/em> Edgar Allan Poe – L\u2019uomo della folla<\/p>\n\n\n\nA volte, le infrastrutture possono essere perfette, ma possono comunque essere abusate. Questo \u00e8 il caso di un replatform di un\u2019applicazione e-commerce. Dopo una valutazione e una progettazione iniziali, abbiamo suggerito delle modifiche per integrarsi meglio in un ambiente cloud.<\/p>\n\n\n\n
Sono state implementate sessioni stateless usando a Elasticache per Redis, scalabilit\u00e0 del database usando Aurora Serverless per MySQL, e, infine, \u00e8 stata aumentata la sicurezza grazie all\u2019uso di ruoli e SecretsManager per memorizzare le credenziali del database e le chiavi API esterne, invece dei soliti file di configurazione in chiaro.<\/p>\n\n\n\n
Tutto andava bene quando, dopo un deployment, l\u2019applicazione rallentava e fallivano gli health check del load balancer. <\/p>\n\n\n\n
Si scopr\u00ec che, poich\u00e9 SecretsManager era cos\u00ec facile e comodo da usare, veniva usato per tutto, anche per i parametri di configurazione ordinari come ad esempio i nomi dei bucket, gli endpoint e varie configurazioni.<\/p>\n\n\n\n
Ogni richiesta a una pagina accedeva almeno una o due volte a diversi segreti, e, per peggiorare le cose, c\u2019erano picchi di traffico dovuti alle campagne di marketing. Alla fine del mese, la dashboard del billing AWS ha mostrato 25.000.000 di chiamate API, con un costo aggiuntivo di 150$.<\/p>\n\n\n\n
Ma c\u2019\u00e8 dell\u2019altro: a volte, l\u2019applicazione smetteva di rispondere perch\u00e9 il servizio dei metadati (usato per autenticare le chiamate API usando i ruoli IAM) iniziava a fare throttling delle richieste, pensando che l\u2019applicazione stesse cercando di fare un DoS.<\/p>\n\n\n\n
Dopo aver spiegato il problema e proposto una soluzione che utilizzasse parameter store e le variabili d\u2019ambiente, tutto ha funzionato di nuovo alla perfezione, e il porting \u00e8 andato bene.<\/p>\n\n\n\n
Alta inaffidabilt\u00e0<\/h1>\n\n\n\n
<\/figure><\/div>\n\n\n<\/p>\n\n\n\n
\u201cCongratulazioni. Sei ancora vivo. La maggior parte delle persone \u00e8 cos\u00ec ingrata di essere viva. Ma non tu. Non pi\u00f9\u201d<\/em> – Saw.<\/p>\n\n\n\nParlando di rifacimento delle applicazioni orientate al cloud, questo \u00e8 un semplice errore che a volte vediamo accadere: se un\u2019applicazione \u00e8 altamente disponibile, per favore non legate le richieste vitali a un singolo point of failure (come un server FTP che gira su un\u2019istanza EC2 per recuperare i file di configurazione). Questa \u00e8 una storia breve, ma c\u2019\u00e8 molto dolore dietro. <\/p>\n\n\n\n
Backup infernale<\/h1>\n\n\n\n
<\/figure><\/div>\n\n\n\u201cTutti impazziamo un po\u2019 a volte.\u201d<\/em> – Psycho (1960)<\/p>\n\n\n\nIl disaster recovery dei workload on-premise sul Cloud \u00e8 un argomento attualissimo, soprattutto per le grandi imprese e le architetture on-premise.<\/p>\n\n\n\n
Progettare una soluzione resiliente non \u00e8 facile. Il primo passo \u00e8 trovare una strategia di backup che possa adattarsi e garantire il giusto RPO e RTO. Una volta definita la strategia di backup e i requisiti, \u00e8 il momento di trovare il software giusto che soddisfi le nostre esigenze.<\/p>\n\n\n\n
In una grande impresa, la prima scelta \u00e8 di usare la soluzione esistente, ma adattarla per funzionare sul Cloud. Nessun problema, purch\u00e9 ci sia almeno una forma di integrazione, tipicamente con Amazon Glacier o Amazon S3. Questo era il nostro caso, ma\u2026<\/p>\n\n\n\n
Per rendere le cose pi\u00f9 resilienti, qualcuno ha installato il software su un\u2019istanza EC2 in un account AWS dedicato e lo ha configurato per fare il backup delle macchine on-premise usando la connessione Direct Connect esistente e quindi attraverso l\u2019attachment del Transit Gateway.<\/p>\n\n\n\n
Si pu\u00f2 gi\u00e0 intuire che direzione pu\u00f2 prendere il billing di AWS (spoiler: molto in alto)! Per peggiorare le cose, tutti gli endpoint erano centralizzati in un account di rete dedicato per una migliore gestibilit\u00e0 e osservabilit\u00e0.<\/p>\n\n\n\n
Quindi, per riassumere, un singolo gigabyte salvato da on-premise: <\/p>\n\n\n\n
\nUsava la connessione Direct Connect <\/li>\n\n\n\n Attraversava l\u2019attachment del transit gateway per raggiungere l\u2019istanza EC nel Backup Account <\/li>\n\n\n\n Attraversava ancora il Transit Gateway per raggiungere l\u2019account di rete<\/li>\n\n\n\n Attraversava l\u2019endpoint S3 centralizzato<\/li>\n<\/ul>\n\n\n\nAlla fine del mese, c\u2019\u00e8 stato un picco di 6.000 $ nella sezione Networking della fattura AWS.<\/p>\n\n\n\n
Cosa abbiamo imparato? Se qualcosa sembra facile e banale in un ambiente complesso, dovresti cercare meglio degli indizi.<\/p>\n\n\n\n
Conclusioni<\/h2>\n\n\n\n Anche quest\u2019anno abbiamo avuto la nostra dose di storie horror. Come sempre, ogni errore non \u00e8 intenzionale, e la cosa buona \u00e8 che possiamo sempre imparare cose nuove, evitando di ripeterci in futuro.<\/p>\n\n\n\n
Voglio ringraziare tutti i partecipanti all’AWS Community Day a Roma che hanno condiviso le loro storie dopo il mio speech sull\u2019articolo dell\u2019anno scorso. L\u2019episodio del prossimo anno \u00e8 gi\u00e0 scritto! \ud83d\ude42<\/p>\n\n\n\n
Cosa avete trovato nei tuoi account AWS che vi ha fatto rabbrividire ? <\/p>\n\n\n\n
Fatecelo sapere nei commenti! (Accettiamo anche e-mail anonime :D)<\/p>\n\n\n\n
\n\n\n\nAbout Proud2beCloud<\/h4>\n\n\n\n Proud2beCloud \u00e8 il blog di beSharp<\/a>, APN Premier Consulting Partner italiano esperto nella progettazione, implementazione e gestione di infrastrutture Cloud complesse e servizi AWS avanzati. Prima di essere scrittori, siamo Solutions Architect che, dal 2007, lavorano quotidianamente con i servizi AWS. Siamo innovatori alla costante ricerca della soluzione pi\u00f9 all’avanguardia per noi e per i nostri clienti. Su Proud2beCloud condividiamo regolarmente i nostri migliori spunti con chi come noi, per lavoro o per passione, lavora con il Cloud di AWS. Partecipa alla discussione!<\/p>\n","protected":false},"excerpt":{"rendered":"Bimbi e bimbe di ogni et\u00e0,ecco qualcosa che vi stupir\u00e0!Su, venite \u00e8 propro qui!\u00c8 il paese di Halloween! – The […]<\/p>\n","protected":false},"author":13,"featured_media":6431,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[481],"tags":[],"yoast_head":"\n
Infrastrutture da incubo speciale halloween : episodio 2 - Proud2beCloud Blog<\/title>\n \n \n \n \n \n \n \n \n \n \n \n \n\t \n\t \n\t \n \n \n \n \n \n \n\t \n\t \n\t \n