Punti di forza
- I flussi di lavoro di ripristino tradizionali possono causare una deriva dell’infrastruttura negli ambienti gestiti da Terraform, poiché prevedono il provisioning di nuove risorse al di fuori dello stato.
- Clumio Backtrack è progettato per ripristinare i dati direttamente nei bucket S3 e nelle tabelle DynamoDB esistenti, contribuendo a preservare l’identità delle risorse.
- Il ripristino in loco contribuisce a ridurre la necessità di importazioni manuali di Terraform, di riconfigurazione degli endpoint e di riconciliazione dello stato durante gli incidenti.
- Allineare i flussi di lavoro di ripristino ai principi dell’Infrastructure as Code (IaC) contribuisce a garantire l’integrità della configurazione e la prevedibilità operativa.
- La progettazione del ripristino è fondamentale quanto quella del backup per i team che gestiscono ambienti di produzione tramite Terraform.
L’IaC garantisce coerenza, ripetibilità e controllo delle versioni nei cloud. Terraform diventa il punto di riferimento per definire cosa esiste, come è configurato e come dovrebbe comportarsi. Il ripristino introduce una nuova sfida.
Le operazioni di ripristino tradizionali spesso creano nuove risorse: nuovi bucket S3, nuove tabelle DynamoDB, nuovi endpoint. Dal punto di vista di Terraform, tali risorse non sono state definite nel codice. Non esistono nello stato. Ciò crea uno scostamento. Nelle operazioni di routine, lo scostamento è gestibile. Durante un incidente, si aggrava. È qui che la progettazione del ripristino è importante tanto quanto quella del backup.
Il problema della deriva nell’IaC
In un modello di ripristino tipico:
- Una risorsa protetta viene ripristinata come nuova risorsa.
- La risorsa originale rimane in uno stato danneggiato, sovrascritto o non funzionante.
- Lo stato di Terraform non riconosce la nuova risorsa.
- I team devono importare manualmente le risorse in State.
- Potrebbe essere necessario aggiornare le configurazioni delle applicazioni.
Per le piattaforme che gestiscono l’infrastruttura di produzione tramite Terraform, ciò comporta delle difficoltà proprio nel momento meno opportuno. La sfida non riguarda l’affidabilità del backup in sé, ma il modo in cui i flussi di lavoro di ripristino si integrano con le pratiche di “infrastruttura come codice”.
Presentazione del ripristino in loco con Clumio Backtrack
Clumio Backtrack è una funzionalità di ripristino che consente di ripristinare i dati direttamente nelle risorse AWS esistenti, anziché dover configurare un’infrastruttura sostitutiva. Se configurato tramite il provider Clumio Terraform, Backtrack consente di implementare flussi di lavoro di ripristino in linea con l’infrastruttura definita nel codice.
Clumio Backtrack supporta sia Amazon S3 che Amazon DynamoDB. Per un approfondimento tecnico sui flussi di lavoro di ripristino specifici per DynamoDB, consulta il nostro articolo sul blog dedicato a Clumio Backtrack per DynamoDB.
Anziché provvedere alla fornitura di risorse sostitutive, Backtrack aiuta a ripristinare:
- Oggetti S3 direttamente nel bucket originale.
- Dati DynamoDB inseriti direttamente nella tabella originale.
Dal punto di vista di Terraform, l’infrastruttura rimane invariata, con le risorse definite che continuano a corrispondere alla configurazione dichiarata. Ciò contribuisce a ridurre la necessità di importazioni manuali delle risorse, tabelle di ripristino temporanee, riconfigurazione degli endpoint e riconciliazione dello stato in situazioni di stress.
Un esempio pratico
Si consideri un ambiente di produzione gestito interamente tramite Terraform. Una tabella DynamoDB tiene traccia dell’inventario; un bucket S3 archivia le risorse dell’applicazione; i ruoli e le politiche di gestione delle identità e degli accessi sono codificati; e le politiche di protezione sono definite tramite Terraform. Se si verifica un danneggiamento prima di un evento di traffico di grande entità, gli approcci tradizionali di ripristino potrebbero creare nuove risorse che dovranno essere reintegrate in Terraform.
Con Backtrack, il ripristino è progettato per avvenire entro i limiti delle risorse esistenti, contribuendo a mantenere intatta l’infrastruttura definita e a preservare l’identità delle risorse. Questo approccio mira a eliminare la necessità di aggiornare Terraform per adattarlo a un bucket o a una tabella appena creati, trattando il ripristino come un’operazione a livello di dati piuttosto che come un’operazione di sostituzione dell’infrastruttura.
Perché questo è importante per Platform
Per i team che adottano l’IaC, i flussi di lavoro di ripristino dovrebbero garantire la conservazione dell’identità delle risorse, l’allineamento dello stato, l’integrità della configurazione e la prevedibilità operativa. Il ripristino in loco contribuisce al raggiungimento di tali obiettivi limitando le modifiche all’infrastruttura durante gli eventi di ripristino.
Ripristino nel cloud
Backtrack è progettato per funzionare sul cloud, sia che si tratti di ripristinare un numero limitato di oggetti sia che si tratti di grandi insiemi di dati. Le prestazioni di ripristino variano in base al carico di lavoro e alla configurazione dell’ambiente, ma l’obiettivo architetturale rimane lo stesso: ripristinare i dati senza introdurre nuove discrepanze nell’infrastruttura. Per gli ambienti gestiti tramite Terraform, questa distinzione è importante.
In quali contesti si applica questo approccio
Il ripristino in loco è particolarmente indicato per:
- Carichi di lavoro DynamoDB ad alta produttività
- Bucket S3 con un numero elevato di oggetti
- Sistemi di produzione gestiti interamente tramite Terraform
- Ambienti complessi in cui è difficile reindirizzare le dipendenze delle applicazioni verso nuove risorse
Quando l’infrastruttura viene definita in modo dichiarativo, i flussi di lavoro di ripristino dovrebbero seguire la stessa logica.
Come iniziare
Per scoprire Clumio Backtrack e la sua integrazione con Terraform:
- Consulta la documentazione relativa al provider Clumio per Terraform.
- Esplora il codice sorgente del provider su GitHub.
- Guarda il video dimostrativo di Backtrack incorporato qui sopra.
Definire la sicurezza come codice è solo una parte del quadro. La progettazione di flussi di lavoro di ripristino che preservino l’integrità dell’infrastruttura completa il modello.
Domande frequenti
D: Quali problemi comportano i ripristini tradizionali negli ambienti gestiti da Terraform?
R: I ripristini tradizionali spesso creano nuove risorse, come bucket S3 sostitutivi o tabelle DynamoDB, che non sono definite nello stato di Terraform. Ciò può causare una deriva dell’infrastruttura e costringere i team a importare manualmente le risorse e a riconciliare le configurazioni durante gli incidenti più critici.
D: In che modo Clumio Backtrack si differenzia dai metodi di ripristino standard?
R: Anziché implementare una nuova infrastruttura, Clumio Backtrack è progettato per ripristinare i dati direttamente nella risorsa AWS esistente. Questo approccio consente di preservare l’identità della risorsa e di mantenere lo stato di Terraform allineato alla configurazione dichiarata.
D: Quali servizi AWS sono supportati da Clumio Backtrack?
R: Clumio Backtrack supporta Amazon S3 e Amazon DynamoDB. È progettato per ripristinare gli oggetti S3 nel bucket originale e i dati DynamoDB nella tabella originale, contribuendo a mantenere la coerenza con l’infrastruttura definita nel codice.
D: Perché il ripristino in loco è importante per le piattaforme?
R: Le piattaforme si affidano all’infrastruttura come codice per garantire coerenza e controllo. Il ripristino in loco contribuisce a mantenere l’allineamento dello stato, l’integrità della configurazione e la prevedibilità operativa senza introdurre ulteriori modifiche all’infrastruttura durante gli eventi di ripristino.
D: In quali casi il ripristino in loco risulta particolarmente utile?
R: È particolarmente utile per carichi di lavoro DynamoDB ad alta produttività, bucket S3 con un numero elevato di oggetti e sistemi di produzione gestiti interamente tramite Terraform. Può inoltre rivelarsi vantaggioso in ambienti in cui il reindirizzamento delle dipendenze delle applicazioni verso risorse di nuova creazione risulterebbe complesso o rischioso.
D: Come possono i team iniziare a utilizzare l’integrazione tra Clumio Backtrack e Terraform?
R: I team possono consultare la documentazione del provider Clumio per Terraform, esaminare il codice sorgente del provider su GitHub e guardare il video dimostrativo “Backtrack” citato nel blog per comprendere i dettagli relativi all’implementazione e al flusso di lavoro.
Lawrence Chang è direttore tecnico di Clumio e Vir Choksi è responsabile senior del marketing di prodotto presso Commvault.