Osservabilità, capacità di vedere e avere prima e meglio solo i dati rilevanti, quelli che ci servono realmente, quelli che ci permettono di prendere decisioni migliori in meno tempo.
Una sfida straordinaria per ogni forma e dimensione di impresa in questa fase di allarme costante legato agli attacchi cyber che minacciano la continuità e il futuro di ogni impresa.
Una sfida che proviamo a rendere più semplice grazie alla guida che segue sviluppata in collaborazione con IBM e un system integrator di eccellenza come Italware.
Un ecosistema di successo che sta costruendo vantaggi concreti sul territorio proprio grazie a una piattaforma di osservabilità come IBM Instana Observability. Proprio Instana oggi è lo standard di riferimento per la prevenzione degli incidenti con visibilità automatizzata a stack completo, granularità di 1 secondo e 3 secondi per la notifica. Qui comunque tutti i dettagli
Cos’è l’osservabilità
Ma come sempre andiamo con ordine. L’osservabilità è una strategia di gestione incentrata sul mantenimento delle questioni più rilevanti, importanti e fondamentali nella parte superiore o in prossimità di un processo operativo aziendale.
Nel dettaglio si tratta della misura in base alla quale puoi capire lo stato o la condizione interni di un sistema complesso. Più un sistema è osservabile, più rapidamente e accuratamente puoi navigare da un problema di prestazioni identificato alla sua causa ultima, senza ulteriori test o codifica.
Il termine viene utilizzato anche per descrivere i processi software che facilitano la separazione delle informazioni critiche da quelle di routine. Può anche riferirsi all’estrazione e all’elaborazione di informazioni critiche all’architettura di livello più alto dei sistemi operativi.
L’osservabilità è un elemento della teoria del controllo, secondo la quale gli stati interni dei sistemi IT possono essere dedotti dalla relazione tra i loro input e output. La sfida dell’osservabilità non risiede tanto nel derivare lo stato interno dalle osservazioni quanto nel raccogliere le giuste osservazioni.
Le differenze tra monitoraggio e osservabilità
I concetti di monitoraggio e osservabilità sono correlati, ma la relazione è complessa. Di seguito sono riportate alcune delle principali differenze:
Gli strumenti di monitoraggio raccolgono passivamente informazioni, la maggior parte delle quali risultano insignificanti. Ciò può annegare nei dati il personale operativo e persino gli strumenti di intelligenza artificiale. L’osservabilità raccoglie attivamente i dati per concentrarsi su ciò che è rilevante, come i fattori che guidano le decisioni e le azioni operative.
Il monitoraggio tende a raccogliere informazioni dalle fonti disponibili, come informazioni di gestione, interfacce di programmazione delle applicazioni (API) e registri. Anche se l’osservabilità utilizzerà queste fonti, spesso aggiungerà nuovi punti specifici di accesso alle informazioni per raccogliere informazioni essenziali.
Il monitoraggio si concentra sull’infrastruttura, mentre l’osservabilità si concentra ugualmente sulle applicazioni. Ciò significa che l’osservabilità includerà spesso un focus sui flussi di lavoro, mentre il monitoraggio si concentra sulle osservazioni puntuali.
I dati resi disponibili attraverso il monitoraggio rappresentano spesso l’unico risultato atteso. L’osservabilità presuppone che le origini dati contribuiscano a un processo analitico che rappresenterà quindi lo stato di un’applicazione o di un sistema in modo ottimale.
Perché l’osservabilità è importante oggi
Per decenni, le aziende che controllano e dipendono da sistemi distribuiti complessi hanno lottato per affrontare problemi i cui sintomi sono spesso sepolti in fiumi di dati irrilevanti.
La scienza dell’analisi delle cause profonde è nata da questo problema, così come l’attuale attenzione all’osservabilità.
Concentrandosi sugli stati di un sistema piuttosto che sullo stato degli elementi del sistema, l’osservabilità fornisce una visione migliore della funzionalità del sistema e della capacità di svolgere la sua missione. Fornisce inoltre un’esperienza utente e cliente ottimale. L’osservabilità è proattiva dove necessario, il che significa che include tecniche per aggiungere visibilità alle aree in cui potrebbe mancare.
Inoltre, è reattiva in quanto dà priorità ai dati critici esistenti. L’osservabilità può anche collegare i dati grezzi a misure più utili dello “stato dell’IT”, come gli indicatori chiave di prestazione (KPI), che sono effettivamente una sommatoria di condizioni per rappresentare un’ampia esperienza e soddisfazione dell’utente.
Quali sono le componenti della visibilità?
La visibilità è la capacità di rimuovere gli strati di un sistema o di un’infrastruttura per raccogliere informazioni o prospettive utili. Gli strumenti di monitoraggio e le pratiche associate svolgono un ruolo vitale in questo, fornendo la portata e la profondità necessarie per raccogliere dati su salute, sicurezza, hardware, sistema operativo host e altri dati necessari per ottenere visibilità. La scelta degli strumenti e i dati specifici raccolti dipendono dagli obiettivi di monitoraggio e dalle modalità in cui i dati verranno utilizzati in termini di osservabilità.
Pertanto, la visibilità implica strumenti e policy precise:
Gli strumenti sono le applicazioni software utilizzate per raccogliere e aggregare dati. Ciò può coinvolgere un’ampia gamma di fornitori o strumenti di terze parti. Gli strumenti possono raccogliere dati da sistemi, reti, applicazioni e piattaforme, come gli hypervisor.
Le policy guidano e focalizzano la raccolta dei dati necessari per la visibilità e definiscono il modo in cui i dati vengono protetti e conservati. Le policy aiutano a impedire a un’organizzazione di raccogliere tutto e conservarlo per sempre, il che può trasformare un oceano di dati per visibilità e analisi in una palude ingestibile.
Ricorda che di più non è sempre meglio. Visibilità significa vedere ciò che è importante, non vedere tutto.
I tre pilastri dell’osservabilità
I tre tipi di dati di origine primari per l’osservabilità, chiamati anche i tre pilastri dell’osservabilità, sono log, metriche e tracce:
Log. Le registrazioni degli eventi, generalmente in formato testuale o leggibile dall’uomo, sono note come log. Sono quasi sempre generati da elementi infrastrutturali, inclusi sia dispositivi di rete che server. Possono anche essere generati dal software della piattaforma, inclusi sistemi operativi e middleware. Alcune applicazioni registreranno ciò che lo sviluppatore ritiene rappresenti informazioni critiche. Le informazioni di registro tendono ad essere storiche o retrospettive e vengono spesso utilizzate per stabilire il contesto nella gestione delle operazioni. Tuttavia, esistono log che rappresentano raccolte di eventi o dati di telemetria e le informazioni dettagliate possono essere disponibili in tempo reale.
Metriche. A questo tipo di dati operativi in tempo reale si accede in genere tramite un’API utilizzando una strategia pull o polling oppure come evento generato o telemetria, ad esempio un push o una notifica. Poiché sono guidate dagli eventi, la maggior parte delle attività di gestione degli errori sono guidate da metriche.
Tracce. Si tratta di registrazioni di percorsi informativi o flussi di lavoro progettati per seguire un’unità di lavoro, come una transazione, attraverso la sequenza di processi che la logica applicativa la indirizza a seguire. Poiché la gestione del lavoro è normalmente una funzione della logica dei singoli componenti o degli strumenti di gestione come mesh, una traccia è un modo indiretto di valutare la logica di un’applicazione. Alcuni dati di traccia potrebbero essere disponibili dai processi del flusso di lavoro, come microservizi nativi del cloud e meshing dei servizi. Tuttavia, potrebbe essere necessario incorporare strumenti di tracciamento nel processo di sviluppo del software per ottenere una visibilità completa.
Tutti e tre i pilastri sono vitali per l’osservabilità, ma ciascuno presenta limitazioni uniche che dovrebbero essere considerate. Ad esempio, le metriche sono difficili da taggare e ordinare e possono essere difficili da utilizzare per la risoluzione dei problemi; i log possono essere difficili da ordinare e aggregare per trarre conclusioni o relazioni significative; le tracce possono produrre enormi quantità di dati non necessari.
I professionisti potrebbero trovare più efficace utilizzare i tre pilastri dell’osservabilità attraverso una lente orientata agli obiettivi: stabilire obiettivi aziendali, come obiettivi del livello di servizio, e quindi definire obiettivi di osservabilità in linea con tali obiettivi.
Ad esempio, se l’azienda si occupa di latenza o throughput, imposta obiettivi di latenza o throughput appropriati, quindi utilizza i tre pilastri per avvicinarti all’osservabilità tenendo a mente tali obiettivi.
Quali sono i vantaggi dell’osservabilità?
Il vantaggio principale dell’osservabilità è il miglioramento dell’esperienza dell’utente, creato concentrando le attività operative su problemi che minacciano tale esperienza. Una corretta applicazione dell’osservabilità può migliorare la disponibilità e le prestazioni dell’applicazione. Le pratiche di osservabilità ridurranno normalmente anche i costi operativi accelerando la gestione delle condizioni avverse.
Ciò avviene riducendo la quantità di informazioni irrilevanti o ridondanti e dando priorità alla notifica degli eventi critici. Questi miglioramenti sono più evidenti nelle operazioni aziendali più grandi in cui sono necessari team operativi di grandi dimensioni.
Alcuni utenti segnalano che le pratiche di osservabilità forniscono informazioni utili nella gestione dell’affidabilità e delle prestazioni, e persino nella progettazione dell’infrastruttura e nella selezione degli strumenti.
Questo perché l’attenzione alle informazioni veramente critiche aiuta a identificare le vulnerabilità che possono essere corrette modificando le configurazioni, la progettazione delle applicazioni e i livelli delle risorse.
Come si implementa l’osservabilità?
L’osservabilità inizia con un piano, poi si sposta verso un’architettura e infine verso una piattaforma di osservabilità. È importante seguire questo approccio altrimenti c’è un rischio maggiore di sfide e complicazioni.
Un piano di osservabilità inizia identificando i benefici specifici desiderati.
Quindi, collega ciascuno a una descrizione dei dati che sarebbero necessari per realizzarlo. Sebbene sia importante che questo collegamento consideri i dati disponibili provenienti dal monitoraggio e dalla telemetria, è altrettanto fondamentale identificare informazioni importanti che non sono attualmente raccolte o che sono raccolte in un sistema che non fornisce i propri dati per l’analisi dell’osservabilità.
L’architettura di osservabilità è una rappresentazione schematica della relazione tra i dati di origine e la presentazione dei dati al personale operativo, ai sistemi di intelligenza artificiale e di apprendimento automatico, ecc. Tutte le fonti di dati devono essere identificate, insieme alle informazioni che ciascuna fonte dovrebbe fornire.
Sopra le origini dati, il diagramma dovrebbe identificare gli strumenti che raccolgono e presentano le informazioni, le scelte degli strumenti per l’analisi e il filtraggio dei dati e le scelte degli strumenti per la presentazione dei dati.
Sono disponibili strumenti sia proprietari che open source per il monitoraggio e l’osservabilità; a questo punto è meglio catalogare le opzioni che si adattano alle missioni target specifiche. Il passaggio finale dell’implementazione è uno specifico toolkit di osservabilità o una piattaforma di osservabilità.
La differenza tra i due può essere sottile:
Un toolkit è un insieme di strumenti o funzionalità di monitoraggio che possono essere utilizzati per supportare l’osservabilità ma che si basano su un operatore umano o su un livello software separato per supportare l’analisi collettiva. Un approccio basato su toolkit richiederà solitamente una notevole personalizzazione, ma sarà in grado di accogliere il software e le fonti di dati esistenti.
Una piattaforma di osservabilità è un’applicazione software integrata che raccoglie informazioni, esegue analisi che includono derivazioni KPI e presenta risultati utilizzabili agli utenti delle operazioni. Una piattaforma potrebbe comunque richiedere la personalizzazione per accogliere tutte le origini dati disponibili e potrebbe anche limitare il modo in cui i dati vengono integrati.
Il valore dell’osservabilità dipende dall’adozione di queste tre fasi di implementazione in modo organizzato. Saltare o lesinare metterà a rischio il concetto e l’investimento in esso.
Osservabilità, il caso Instana
Dalla teoria alla pratica, come anticipato, un caso di eccellente applicazione dell’osservabilità è sicuramente legato ad una piattaforma come IBM Instana Observability su cui non a caso è da tempo al lavoro Italware.
Negli ambienti cloud altamente dinamici e complessi di oggi, il costo medio di un’ora di downtime può raggiungere le sei cifre e oltre. Gli strumenti tradizionali di monitoraggio delle prestazioni delle applicazioni (APM) non sono abbastanza veloci per tenere il passo o abbastanza approfonditi per contestualizzare i problemi identificati. Inoltre, sono in genere limitati ai utenti superiori che devono completare mesi di formazione per imparare.
IBM Instana Observability va oltre le tradizionali soluzioni APM democratizzando l’osservabilità in modo che tutti i reparti DevOps, SRE, ingegneria della piattaforma, ITOps e sviluppo possano ottenere i dati desiderati con il contesto necessario. Instana fornisce automaticamente dati continui ad alta fedeltà con granularità di 1 secondo e tracce end-to-end con il contesto delle dipendenze logiche e fisiche tra dispositivi mobili, web, applicazioni e infrastruttura.