Oggi le infrastrutture IT delle imprese tendono a diventare sempre più ibride: tuttavia, a prescindere dal fatto che vengano implementate on-premise, nel cloud, o in entrambi questi ambienti, esse devono in ogni caso soddisfare determinati requisiti di conformità con le policy e i criteri di funzionamento stabiliti da ciascuna organizzazione. In fase di dispiegamento delle risorse IT in produzione, capita però spesso che esse non vengano controllate o revisionate con la dovuta frequenza, per assicurare che continuino a operare aderendo ai criteri di compliance con le regole in essere: e sono proprio tali problemi che motivano la necessità di un sistema di governance dell’infrastruttura IT aziendale.
Quali sono i problemi di configurazione dell’infrastruttura IT
Nel mondo delle imprese, un classico problema è rappresentato dagli errori di configurazione dell’infrastruttura IT (configuration drift), che avvengono quando modificazioni impreviste a livello hardware o software creano un ambiente di elaborazione incompatibile con le specifiche implementate manualmente, o attraverso script automatizzati. Può trattarsi ad esempio di cambiamenti manuali eseguiti in ambienti di sviluppo o test che non vengono trasferiti in produzione causando malfunzionamenti; altri effetti del configuration drift possono tradursi nella perdita di memoria in un’applicazione. E se tutti questi difetti non vengono individuati e riparati possono associarsi, arrivando a causare il blocco dei sistemi, come nel caso di un’applicazione che consuma progressivamente memoria, fino a quando non si verifica uno ‘stack overflow’ che provoca il malfunzionamento o il blocco del programma.
Le derive di configurazione si manifestano nel tempo, quando il software è installato, modificato o rimosso, o quando i cambiamenti di configurazione dell’infrastruttura implementati manualmente dallo staff IT non vengono documentati in maniera adeguata per accertare la relativa compliance: ed oggi, con l’emergere di API (application programming interface), container e microservizi che frammentano le tradizionali applicazioni monolitiche in centinaia di piccoli componenti, un mancato completo controllo della loro attività può condurre a configurazioni dell’infrastruttura IT che perdono la conformità con le regole di governance dell’infrastruttura stabilite da un’impresa.
Quando l’approccio manuale non basta più: il caso GlobalGiving
In certi casi d’uso, è decisamente preferibile affidarsi a soluzioni di automazione della compliance, in grado di assicurare che il provisioning delle risorse IT avvenga sempre in accordo con le policy e gli standard definiti: a dimostrarlo c’è, ad esempio, la strategia di GlobalGiving, organizzazione mondiale non profit con sede a Washington, attiva nella raccolta di donazioni per opere di beneficienza, che, per mantenere la propria implementazione cloud, ospitata su AWS (Amazon Web Services), sempre in conformità con le proprie policy di governance, ha adottato la soluzione di Fugue. Quest’ultima, con sede nel Maryland, attraverso la propria tecnologia software aiuta le imprese utenti ad assicurarsi che la loro infrastruttura cloud sia sempre conforme alle regole, norme e pratiche IT aziendali, e funzioni come previsto, individuando e correggendo di continuo in automatico gli errori di configurazione.
A GlobalGiving vengono affidati molti dati e transazioni importanti, spiega il responsabile dell’infrastruttura e del networking Justin Rupp, e la fondazione doveva fronteggiare seriamente il grande rischio derivante dagli errori di configurazione dell’infrastruttura: in particolare, oltre a dover mantenere la conformità con lo standard PCI-DSS (Payment Card Industry Data Security Standard) nell’elaborazione delle transazioni relative alle varie donazioni con carte di credito e gift card, era essenziale assicurarsi che non fossero possibili cambiamenti non autorizzati all’infrastruttura, dimostrando agli utenti la sua solidità, sicurezza e affidabilità.
In aggiunta, va tenuto conto che oggi le infrastrutture cloud possono essere create e dispiegate velocemente adottando il paradigma IAC (infrastructure as code).
In sostanza, per implementare una infrastruttura cloud-based software-defined basta scrivere uno script in cui si specificano le risorse di elaborazione, networking e storage necessarie. E, nel caso di GlobalGiving, con la migrazione completa delle operation sul cloud AWS, e le nuove esigenze di scaling dell’applicazione, era diventato particolarmente importante avere la capacità d’implementare e dispiegare su larga scala a livello globale infrastrutture configurate in maniera identica, attraverso la programmazione automatica via software, abbandonando i processi manuali.
Automatizzare il controllo degli script rimanendo compliant
Anche le procedure ‘script-driven’ non devono comunque diventare incompatibili con i requisiti di compliance di un’organizzazione, e, a tal fine, tecnologie come quella di Fugue permettono di controllare di continuo gli script di configurazione che specificano l’infrastruttura, per verificarne la conformità rispetto alle policy di governance dell’azienda. Questo sistema di riconciliazione automatica dell’infrastruttura, degli script e delle policy consente oggi a GlobalGiving di avere un’infrastruttura conforme e in grado di auto-documentarsi, mostrando la configurazione di qualunque componente e il suo modo di operare. Nel repository GitHub la fondazione mantiene traccia di cambiamenti e controlli, impedendo modificazioni non autorizzate, e, quando necessario, con questo approccio può anche dimostrare che la propria infrastruttura si conserva sicura e conforme ai requisiti.
La programmabilità dell’infrastruttura consente un rapido provisioning delle risorse IT, ma comporta anche maggior responsabilità nella verifica di ciò che si implementa non collida con le politiche e gli standard dell’impresa: in ogni caso, oggi, non adottare un sistema di IT governance nella propria organizzazione significa lasciar perdurare cambiamenti non autorizzati, a aprirsi a molti rischi: rischi di interruzioni dei servizi, malcontento dei clienti, perdite di fatturato.