Home Aziende Dynatrace Inside Dynatrace con Bernd Greifeneder, CTO. Osservabilità per garantire applicazioni perfettamente funzionanti...

Inside Dynatrace con Bernd Greifeneder, CTO. Osservabilità per garantire applicazioni perfettamente funzionanti e massima sicurezza

L’ambiziosa mission di Dynatrace, ribadita dal CEO Rick McConnell nel keynote di apertura di Dynatrace Innovate a Barcellona,  è far funzionare perfettamente il software nel mondo. Lo strumento per realizzare questo obiettivo è la piattaforma il cui nome coincide con quello della società, che consente di tenere sotto controllo le applicazioni sempre più complesse e interconnesse e le infrastrutture sulle quali vengono eseguite, automatizzando il più possibile le operazioni di detection e remediation dei problemi che si verificano nel tempo.

Abbiamo incontrato Bernd Greifeneder, attuale Cto di Dynatrace, società da lui fondata nel 2005, per scoprire le potenzialità ed esaminare i componenti della piattaforma . Una soluzione in cloud, che tramite un singolo agente è in grado di garantire visibilità sull’intera infrastruttura, migliorandone anche la sicurezza.

Partiamo dal basso, dalla raccolta dei dati, indispensabile per ogni attività di monitoraggio e a maggior ragione di osservabilità

I clienti installano il nostro agente, OneAgent, nelle loro infrastrutture, e questo si occupa di scoprire automaticamente gli asset connessi. Si chiama OneAgent perché combina osservabilità e sicurezza in una sola soluzione. È l’unico sul mercato in grado di farlo. Queste informazioni sono poi inviate a Grail.

Quindi tutta la conoscenza di Grail proviene dall’agente?

La maggior parte dei dati provengono da OneAgent, perché poi i clienti hanno anche i loro dati di business, o utilizzano soluzioni di OpenTelemetry. Ci sono anche i dati provenienti dagli hyperscaler che vengono integrati. Combiniamo tutte queste informazioni e le archiviamo in Grail. Abbiamo integrato la tecnologia PurePath, per tracciare e dare un contesto a questi dati, e possiamo creare una mappa in tempo reale di queste informazioni con SmartScape.

OneAgent, SmartScape, PurePath, i componenti per permettere osservabilità end-to-end

OneAgent è un eseguibile che implementa una serie di servizi specializzati, configurati per lo specifico ambiente di monitoraggio. Questi servizi raccolgono metriche su vari aspetti degli host, tra cui hardware, sistema operativo e processi applicativi. L’agente può anche monitorare tecnologie specifiche (Java, Node.js, .NET e altre) in modo più dettagliato, iniettandosi nei processi e monitorandoli dall’interno. In questo modo si ottiene una visione a livello di codice dei servizi su cui si basa l’applicazione.
Per il monitoraggio dell’utente reale, OneAgent inietta un tag JavaScript nell’HTML di ogni pagina dell’applicazione che viene resa dai server web. Grazie a questi tag, l’agente è in grado di monitorare i tempi di risposta e le prestazioni sperimentate dai clienti nei loro browser mobili e desktop.

I PurePath sono tracce a livello di codice che coprono una transazione end-to-end. Ogni volta che un utente inizia un’interazione con un’applicazione (attività reale o sintetica), Dynatrace assegna alla transazione un ID univoco. Quando la transazione lancia le richieste, questo ID “viaggia” con le richieste sullo storage locale del thread da un livello all’altro, in modo da sapere che tutti gli altri metodi su quel thread appartengono alla stessa transazione. I componenti di codice ultraleggeri acquisiscono le metriche rilevanti che vengono poi ordinate e assemblate in PurePath.

Senza necessità di configurazione manuale, la tecnologia Smartscape rileva automaticamente l’intero ambiente web, identificando le dipendenze causali tra siti web, applicazioni, servizi, processi, host, reti e infrastrutture in pochi minuti.
L’intera topologia delle applicazioni viene visualizzata in modo visivo, dinamico e interattivo.
L’Osservabilità è a cinque livelli: Applicazioni, Servizi, Host, Processi, Data Center.

La mappa di SmartScape ci indica in tempo reale informazioni sulle dipendenze dei vari servizi. Questa mappa è un grafo orientato che rappresenta con precisione le dipendenze di un servizio da un altro, e che permette quindi di fare causazione, di trovare cioè rapporti di causa effetto, non soltanto correlazione tra eventi. Tutti gli altri approcci, inclusi quelli che utilizzano AI basata su reti neurali fanno soltanto correlazione. Lavorano sulla coincidenza degli eventi in base al timestamp, al momento in cui si verificano. Non è sufficiente. Faccio un esempio: se qualcuno mi sta vicino, non vuol dire che siamo una coppia. Non c’è dipendenza necessaria.

Questo graph poi va ad alimentare Davis AI, che lo analizza tramite algoritmi di intelligenza artificiale in grado di identificare la causa profonda (root cause) di eventuali problemi. Altri sistemi magari ti inviano centinaia di alert. Sono troppi, e magari ignorano un alert arrivato cinque minuti prima che crea un effetto a cascata. Come fai a capire se è correlato o meno? Per questo la correlazione in alcuni casi non riesca a risolvere il problema, e rischia di generare un grande volume di falsi positivi. Questa AI, invece, ti dà informazioni specifiche su un problema. Ti dice quali servizi sono impattati, gli utenti che sono coinvolti, quali no.
Utilizziamo OneAgent anche per questioni legate alla sicurezza. Quando per esempio rilevi delle attività sospette sul tuo frontend, come fai a sapere sa questa è una priorità per il team IT? In questi casi, agire tempestivamente fa la differenza. Davis AI si occupa quindi di analizzare questi comportamenti per comprendere il reale rischio nelle varie aree, comprendendo se va intaccare informazioni sensibili, se invia dati tramite Internet. A questo punto valuta il punteggio di rischio da assegnare all’evento, sgravando quindi il team IT dal dover valutare manualmente le priorità.

Che cos’è l’AI causale?

L’AI causale è una tecnica di intelligenza artificiale utilizzata per determinare le cause e gli effetti esatti di eventi o comportamenti. A differenza dell’apprendimento automatico basato sulla correlazione, che calcola le probabilità in base alle statistiche, l’AI causale utilizza la fault-tree analysis (analisi dell’albero dei guasti) per determinare i guasti a livello di sistema in base ai guasti a livello di componente. Grazie a questo approccio sistematico e top-down, l’AI causale e i moderni AIOp deterministici forniscono una base determinante per il rilevamento automatico delle anomalie, l’analisi delle cause principali, la classificazione del rischio di sicurezza e la valutazione dell’impatto aziendale.

L’AI causale si basa su dati di supporto, come relazioni, dipendenze e altri contesti tra entità ed eventi di rete. Grazie a questo contesto, l’AI causale determina l’esatta causa principale di un problema.

L’AI causale funziona essenzialmente in due fasi. In primo luogo, raccoglie informazioni e scopre problemi all’interno dell’insieme di dati. Quindi, cerca relazioni causali che aiutino a spiegare questi problemi utilizzando un piano elaborato a partire dai dati raccolti.
Alla base dell’AI causale c’è la fault-tree analysis, una metodologia guidata dai dati e utilizzata per l’analisi di causalità, che utilizza la logica booleana per esplorare i guasti a livello di sistema. È un approccio dall’alto verso il basso utilizzato per identificare il guasto a livello di componente, o evento base, che ha causato il guasto a livello di sistema, o evento superiore.
L’AI causale che utilizza la fault-tree analysis funziona nel modo seguente:

  1. Definisce l’ambito del sistema e ciò che è considerato un guasto.
  2. Definisce i guasti di primo livello e il punto di partenza dell’analisi con i dettagli del guasto.
  3. Identifica gli eventi scatenanti che potrebbero causare il guasto di primo livello, da soli o con più eventi concomitanti.
  4. Individua le cause profonde (root causes) di ciascun evento scatenante e della sequenza di eventi.
  5. Analizza l’albero dei guasti alla ricerca degli eventi che portano al guasto o che hanno maggiori probabilità di guastarsi.

Grazie alla certezza di questo approccio sistematico, i team possono individuare i modi per ridurre i percorsi di guasto e supportare i miglioramenti del sistema, nonché automatizzare le risoluzioni.

OneAgent raccoglie dati anche sui desktop degli utenti?

No, non ci occupiamo di sicurezza degli endpoint. Questo lo lasciamo ad altre imprese, ma integriamo anche i dati provenienti da soluzioni di terze parti. Per esempio, SentinelOne, perché i reparti IT lo utilizzano per proteggere Microsoft 365. Lo scopo della piattaforma è quello di automatizzare processi, mettendo insieme i dati provenienti da differenti soluzioni. Anche se non installiamo agenti sugli endpoint, possiamo comunque vedere il traffico generato da queste macchine, e questo entra a far parte della topologia e del contesto. Permette di porre rimedio più velocemente e automaticamente agli incidenti informatici.

Tutti i dati raccolti da OneAgent e dalle altre fonti vanno in Grail, il vostro data lake house proprietario

Grail è stato realizzato da zero da Dynatrace, perché non esistono database che possono combinare i graph con gli eventi, le time series, le sessioni degli utenti e i metadati. Non su questa scala, per lo meno. Parliamo di exabyte di dati. Serve una capacità massiva di calcolo parallelo per farlo.

Nel nome Grail, Gr sta a significare “graph”, “ai” è un riferimento all’IA ed “l” è l’iniziale di limitless, senza limiti. Questa per farti capire l’idea che sta alla base di Grail.

Abbiamo una tecnologia che si chiama Data Work Bin che ci permette di trovare velocemente le informazioni, anche in assenza di indici. È proprio questa combinazione che rende la piattaforma così potente.

Grail è una soluzione progettata per gestire enormi quantità di dati, escludendo dati transazionali. Noi, per esempio, trasferiamo in Grail l’80% dei dati generati da Snowflake, le statistiche di utilizzo e di comportamento, escludendo soltanto i dati relativi al billing. I motivi di questo approccio sono due: la prima è che ci consente una maggiore flessibilità nell’accesso ai dati. La seconda è che spostando i dati da Snowflake a Grail evitiamo i problemi relativi a sicurezza e privacy. Invece di spostare i dati da un posto all’altro, sono tutti conservati qui. La tecnologia di protezione dati che utilizziamo permette di avere istanze completamente isolate l’una dall’altra. Questo evita di dover adottare strumenti di data flow e di analytics, per esempio. Evita anche di adottare strumenti di controllo dati, perché tutte le informazioni elaborate sulla piattaforma sono acquisite automaticamente. Questo rende anche semplicissima l’integrazione con Azure ID. Ed evita anche di dover adottare tutta una serie di mini-tool, che rappresentano un potenziale problema per la sicurezza.

Quindi ogni cliente accede alla sua personale istanza di Grail?

No, abbiamo scelto di non farlo. Parliamo di un’infrastruttura basata su migliaia di CPU. Non potremmo permettercela, a meno di far pagare a ogni cliente un abbonamento dal 300.000 dollari all’anno. Poi per garantire le elevate performance offerte da Grail abbiamo bisogno di un’infrastruttura condivisa. Ogni query è elaborata in parallelo, così da completarla velocemente. Se ogni cliente potesse accedere solo a una CPU alla volta, le prestazioni sarebbero molto inferiori. I dati rimangono separati, tuttavia. Anche se facendo collective intelligence si potrebbero avere risultati ancora migliori in termini di protezione dagli attacchi alla sicurezza, preferiamo rispettare al massimo la privacy di ciascun cliente.

Otteniamo queste prestazioni grazie a un codice scritto in maniera molto efficiente, ottimizzando ogni piccola sequenza di codice. Per esempio, evitiamo di fare garbage collection. E utilizziamo in maniera intelligente gli strumenti messi a disposizione dagli hyperscaler. Ora tutte le nuove funzionalità di Dynatrace sono gestite da AppEngine, che può venire utilizzato anche dai nostri clienti. Questo significa che ogni cliente può realizzare le sue applicazioni – che sono poi certificate da Dynatrace in termini di funzionalità e usabilità – che fanno leva su SmartScape e Davis AI.

 

Andando avanti, la piattaforma include anche l’Automation Engine, che va oltre i semplici workflow e che supporta funzionalità di automation as code. App Engine e Automation Engine sono utilizzati in maniera estensiva su tutta la piattaforma. Per esempio, lo usiamo per creare connettori alle sorgenti di dati, strumenti per la distribuzione di software e via dicendo. Tutti i casi d’uso che abbiamo generato sono stati realizzati tramite queste funzionalità della nostra piattaforma. Questo significa che tutta l’infrastruttura per la visibilità ha accesso alle stesse informazioni provenienti dai log, per esempio quelli di business e gli analytics. Questo significa che i clienti devono caricare i dati una sola volta, e poi sono utilizzati per differenti fini. In questa maniera possiamo ottimizzare la nostra soluzione per specifici settori.

Il fatto che i criminali informatici stiano iniziando a usare l’IA come sta cambiando il panorama della cybersecurity?

Sì. Stanno utilizzando l’IA generativa per creare nuovi strumenti di attacco. Questo secondo me implica che per la sicurezza non dobbiamo concentrarci sulla reazione agli attacchi, ma sviluppare soluzioni in grado di respingere anche attacchi sconosciuti. Che è quello che fa OneAgent.

Quali sono le sfide per il futuro di Dynatrace?

A oggi, il nostro obiettivo è quello di concentrarci sulla crescita. Stiamo crescendo come numero di dipendenti e di clienti, sul reinventarci costantemente. Al momento puntiamo a migliorare la nostra organizzazione interna, più che il prodotto.

Cosa puoi dirmi sulla recente acquisizione di Rookout?

Al momento ci siamo occupati dell’onboarding del personale. Prima di qualche annuncio ufficiale, però, dovrai attendere il prossimo anno. Non abbiamo intenzione di integrare le loro applicazioni tramite API, non avrebbe senso. Vogliamo integrarle completamente nella piattaforma.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome

Se questo articolo ti è piaciuto e vuoi rimanere sempre informato sulle novità tecnologiche
css.php