L'anatomia dell'osservabilità.
Il primo livello è la telemetria; non possiamo avere l'osservabilità senza i dati telemetrici grezzi. A seconda dell'impianto infrastrutturale e dei mezzi di esercizio disponibili, esistono molti strumenti per la raccolta della telemetria grezza. L'obiettivo principale del primo livello dovrebbe essere sempre quello di accedere a una telemetria di alta qualità.
Il secondo livello è lo storage: non solo come lo conserviamo, ma anche per quanto tempo. Quando si considerano gli archivi di dati per l'osservabilità, trovare il giusto equilibrio può essere un problema. Fondamentalmente, se vogliamo impugnare in modo efficiente i dati ad alta velocità di trasmissione (ad esempio, la fatturazione del 100% di tutti i messaggi passati in un'applicazione scalata, o anche i risultati di misurazione ad alta fedeltà come il carico della CPU o l'uso della memoria per contenitore), dobbiamo registrare le statistiche in un database a serie temporali. Altrimenti, sprechiamo troppo nel trasferire e nello storage dei singoli avvenimenti. E mentre alcuni potrebbero suggerire di campionare gli avvenimenti, per i dati a bassa frequenza nascosti nel flusso ad alta frequenza, è possibile perderli del tutto. Questa situazione chiama un DB dedicato alle serie temporali (TSDB): un archivio di dati progettato appositamente per lo storage, l'indicizzazione e l'interrogazione di statistiche sulle serie temporali come queste.
E ancora! Se vogliamo impugnare dati ad alta cardinalità (ad esempio tag per cliente, id univoci per impianti infrastrutturali effimeri o frammenti di URL), un TSDB è un vero disastro. L'esplosione della cardinalità dei tag comporta un'esplosione delle serie temporali uniche e, di conseguenza, un'esplosione dei costi. Per questo motivo, deve essere presente anche un Transaction DB; tradizionalmente si trattava di un database di log, anche se è più saggio costruire un Transaction DB distribuito e tracciante (di cui parleremo più avanti) che può prendere due piccioni (log e tracce) con una fava.
Tuttavia, trovare database di transazioni e serie temporali all'avanguardia è necessario ma non sufficiente. Per rendere il pezzo di "Osservabilità" senza interruzioni, anche il livello dei dati deve essere integrato e incrociato, preferibilmente con un'integrazione profonda.
Le sfide di cui sopra possono rendere difficile l'osservabilità e a volte possono sembrare inafferrabili. Questo ci porta al terzo livello, le prestazioni effettive; nel regno della Corporate Governance, queste vengono chiamate semplicemente risultati di business e sono una parte essenziale della value proposition canvas quando vendiamo osservabilità e monitoraggio ai nostri clienti commerciali.
In fin dei conti, la telemetria, sia in movimento che a riposo, non ha un valore intrinseco. Sono solo i flussi di lavoro e le applicazioni costruite sopra che possono avere valore. Eppure, nella presentazione convenzionale di "Osservabilità come metriche, log e tracce", non sappiamo nemmeno quale problema stiamo risolvendo! Tanto meno come lo stiamo risolvendo.
Quando si tratta di applicazioni software moderne e distribuite, ci sono due problemi generali che vale la pena risolvere con l'Osservabilità:
- Comprendere la salute: Collegare il benessere di un sottosistema agli obiettivi dell'applicazione e dell'attività generale attraverso un monitoraggio accurato.
- Comprendere il Change: Accelerare i cambiamenti pianificati e mitigare gli effetti dei cambiamenti non pianificati.
Per concludere, Monitoring e Osservabilità vanno di pari passo: uno non sostituisce l'altro, ma insieme permettono di migliorare i risultati aziendali definiti.
Per maggiori informazioni visita il sito Public Cloud Services di Swisscom. Puoi anche contattarci contattando i nostri esperti che ti aiuteranno a far decollare le tue soluzioni basate su cloud.
Questa è la prima parte di un blog diviso in due parti; nel prossimo post descriveremo come stiamo facendo l'osservabilità e il monitoraggio presso i Public Cloud Service Manager per i nostri clienti nell'ambito della nostra offerta di servizi Managed.