Autore: Paolo Maestripieri, EMEA Client Partner Director, Cisco ThousandEyes
Se riunissimo i team di gestione delle applicazioni e della rete in un'unica stanza e chiedessimo loro se assicurare prestazioni ottimali e disponibilità delle applicazioni sia cruciale per il successo della loro azienda, tutti sarebbero immediatamente d'accordo. Naturalmente la domanda che dobbiamo porci è come riuscirci?
Chi di noi non ha mai trascorso lunghe giornate nelle war room per cercare di risolvere in tutta fretta problemi di prestazioni o di disponibilità di un'applicazione cruciale? Essendo per loro natura distribuite e modulari, le applicazioni moderne non hanno solo aumentato il numero delle parti coinvolte , ma hanno anche sfumato i confini tra un ruolo e l'altro causando una grande confusione sulle responsabilità. Gestire e rendere ottimali le prestazioni delle applicazioni dipende oggi da un'infrastruttura sottostante di rete e Internet sempre più complessa che le tradizionali soluzioni di monitoraggio non riescono a coprire, lasciando in ombra interi settori con cui dovranno poi confrontarsi con difficoltà i team DevOps e NetOps.
Questi ambienti eterogenei e le loro condizioni mutevoli inducono a ripensare le strategie per gestire l'esperienza applicativa e il monitoraggio è sicuramente una di queste. Coniugando il monitoraggio in tempo reale degli utenti con le transazioni proattive sintetiche , puoi rilevare i problemi di performance anche all'esterno del perimetro aziendale e andare a investigare le cause profonde nelle infrastrutture esterne basate sul cloud e su Internet da cui oggi dipendono le esperienze digitali. Oltre a individuare e risolvere rapidamente le interruzioni del servizio, il monitoraggio sintetico permette di adottare un nuovo approccio alla progettazione, alla verifica e all'ottimizzazione di come il più ampio ecosistema di performance della rete determina l'esperienza applicativa. Tutto ciò anche nella fase di pre-produzione, prima ancora che vengano distribuiti agli utenti gli aggiornamenti o le modifiche.
Uso del monitoraggio sintetico per ottimizzare costantemente le prestazioni applicative
Il monitoraggio sintetico usa gli script per emulare il workflow previsto e il percorso su cui verrà indirizzato l'utente che vuole usare un'applicazione. Insieme al controllo del percorso di rete e del routing, il monitoraggio sintetico permette di comprendere l'esperienza dell'utente con l'applicazione e di approfondire ulteriormente l'analisi della rete sottostante per stabilire se eventualmente i problemi di prestazioni sono dovuti a cause esterne, come per esempio la latenza del server DNS o un collo di bottiglia nell'infrastruttura dovuto a un errore di configurazione del provider Internet (ISP).
Mettendo in relazione la visibilità attraverso le reti, le applicazioni, il routing e i dispositivi, il monitoraggio sintetico fornisce un modello di miglioramento e ottimizzazione continua delle performance. In questo modello, preso in prestito dall'approccio DevOps, la priorità è individuare le prestazioni di riferimento e le dipendenze da terze parti che potrebbero compromettere. Come fase successiva, utilizzare tali informazioni di riferimento per individuare le aree di miglioramento. Infine, implementare tali miglioramenti in un ambiente di pre-produzione, per verificare le prestazioni delle applicazioni e l'impatto delle infrastrutture di rete backend, come la scelta del provider dei servizi cloud e del provider del DNS, o l'impatto della posizione geografica. Con questo livello di visibilità nelle reti, sulle quali le aziende fanno affidamento ma che non possono controllare, i team possono mettere in produzione delle soglie sulle prestazioni end-to-end per testare costantemente le performance e creare un processo di miglioramento continuo.
Ottimizzare le prestazioni per ottimizzare il business
Al giorno d’oggi le applicazioni rappresentano la spina dorsale di ogni attività commerciale, lo strumento principale con cui i servizi vengono erogati e utilizzati. Man mano che le dipendenze dagli ambienti esterni basati sul cloud e su Internet aumentano, l’analisi contestuale della rete sottostante utilizzata dall'applicazione diventa sempre più importante. È quindi cruciale come le applicazioni vengono progettate, implementate e ottimizzate.
Per ottimizzare l'esperienza applicativa e gestire l'intero ecosistema di interdipendenze che influiscono sulle performance, è necessario un monitoraggio più avanzato. E soprattutto un nuovo approccio ai processi interni di una azienda. Non importa quanto siano validi gli strumenti in sé, se non vengono utilizzati non sono molto d'aiuto. Se in passato i team di gestione delle applicazioni e della rete comunicavano poco, oggi l'approccio DevOps di effettuare verifiche continue e migliorare sia le applicazioni sia la rete interna ed esterna sta creando una nuova opportunità di raggiungere livelli di prestazione ancora più elevati. Alla prossima riunione nella war room, invece di accusarci a vicenda , inizieremo a collaborare per il bene dell'applicazione, e ovviamente per il successo del business.