Con una lunga esperienza alle spalle (da Informix, a Business Object, a Quest Software, sempre occupandosi di tematiche connesse alle performance applicative), Vincenzo Bassi, Team Leader APM per l’Italia di Oracle, conosce molto bene problematiche e mercato dell’Application Performance Management e in questa intervista ci racconta il suo punto di vista sui principali trend di soluzioni che sono profondamente cambiate negli ultimi anni.
ZeroUno: Le soluzioni APM sono profondamente cambiate negli ultimi 2-3 anni, cambiamento necessario per rispondere adeguatamente a un contesto che vede il cliente al centro di una molteplicità di esperienze che devono essere soddisfatte. Quali sono i trend che caratterizzano questo cambiamento?
Vincenzo Bassi: Il mercato sta realmente cambiando tanto. Se già prima, la crescente complessità dell’IT rendeva molto difficile individuare l’origine di un determinato problema, oggi che abbiamo infinite modalità di fruizione delle applicazioni e infrastrutture composite per la loro erogazione, il problema è ancora maggiore.
Un errore del passato, comprensibile per le condizioni di mercato [limitazioni di budget, mancanza di soluzioni adeguate ecc. ndr], è stato quello di non automatizzare il processo di individuazione del problema, lasciando che una valutazione già molto complessa venisse effettuata attraverso un processo manuale. Uno dei principali elementi di cambiamento è quindi proprio l’automazione degli strumenti di APM con l’integrazione di tecnologie che li rendano intelligenti, in modo che possano attuare in autonomia determinate attività svolgendo una funzione importantissima, che i vecchi strumenti APM non erano in grado di effettuare: la correlazione. Oggi abbiamo tante tecnologie, tanti sistemi che collaborano e se non correliamo quello che fanno diventa impossibile individuare un eventuale problema.
Le faccio un esempio che consente di capire meglio questo aspetto. In una grande compagnia telefonica nostra cliente è emersa un’informazione molto importante addirittura nel corso del trial di valutazione della nostra soluzione: abbastanza frequentemente si verificava un down nel loro DB access service; nel corso del trial ci si è resi conto che 2 ore prima di questi down c’era un messaggio di errore in un log; il problema non è stato individuato e risolto immediatamente, ma sapere con 2 ore di anticipo che si sarebbe verificato un down, ha consentito di mettere in atto misure preventive fino alla risoluzione definitiva del problema.
ZeroUno: E quali sono le caratteristiche tecnologiche delle soluzioni APM che consentono oggi di effettuare tutte queste correlazioni?
Bassi: È fondamentale che il vendor che propone una soluzione APM abbia chiaro quanto detto prima: la soluzione deve sapere quali sono le metriche e questa conoscenza si acquisisce guardando come funzionano normalmente i sistemi. La soluzione deve intelligentemente osservare tutto e tracciare delle baseline sugli andamenti perché il mio obiettivo non è sapere quando ci sono comportamenti che possono superare un determinato SLA, ma fare in modo che sia garantita la performance abituale dell’applicazione: se ho definito uno SLA di 3 secondi nell’interrogazione di un’applicazione, ma so che normalmente gli utenti effettuano questa operazione in 1 secondo, mi devo allarmare e intervenire quando si passa da 1 secondo a 1,5 secondi, non quando arrivo in prossimità dei 3 secondi; la soluzione deve considerare questa metrica [il comportamento abituale degli utenti ndr], studiarla e, quindi, intelligentemente avvisarmi al momento opportuno.
Un’altra metrica importantissima, visto che i metodi di fruizione delle applicazioni dei servizi si sono moltiplicati, è la configurazione dell’utente: se la soluzione APM rileva che per una determinata applicazione ho il 99% di disponibilità e quell’1% mancante deriva dall’utilizzo di un vecchissimo sistema operativo uscito dal mercato da tempo, non mi devo allarmare; ma se quell’1% è composto da utenti che hanno l’ultima versione di Android, devo intervenire immediatamente perché quell’1% si trasformerà molto rapidamente nel 10%, 20% e oltre.
Quindi ritorno al discorso iniziale: non sono considerazioni che possono essere fatte a tavolino perché ogni singola informazione può anche arrivare da un soluzione APM tradizionale, ma quello che manca in questo caso è la correlazione, che deve essere continua.
La risposta alla domanda quindi è: machine learning. La soluzione APM deve essere intelligente, essere in grado di effettuare valutazioni, di farlo continuamente con un aggiornamento costante. Portare a quotidiano e automatico quel lavoro che una volta veniva fatto con cadenze magari mensili guardando vari andamenti.
ZeroUno: In quale modo una soluzione APM aiuta a intervenire sugli specifici punti di debolezza per migliorare le performance dell’applicazione? Come seguire il percorso dell’applicazione nella crescente complessità infrastrutturale di oggi?
Bassi: Ricordo una slide molto efficace che mostrava il flusso di stress dal business fino all’IT dove si arrivava a una war room dove il DB administrator, il sistemista e l’esperto dell’applicazione si prendevano a pugni per capire qual era il problema. Gartner afferma che il 90% del tempo dedicato alla risoluzione di un problema sta nell’individuarlo e solo il 10% è quello necessario per risolverlo. Oggi tutto ciò non può che ampliarsi, perché il flusso si estende ai vendor cloud, con tutto il mondo dei microservizi che rende il tutto ancora più complesso: tante piccole applicazioni, tante funzionalità dove basta che una non funzioni che le ripercussioni cadono a catena sulle altre. Un’applicazione APM deve quindi prima di tutto tracciare mappe, capire il livello topologico di un’applicazione e di tutte quelle ad essa correlate: quando viene fatto il click su un sito di e-commerce, per esempio, parte tutta una serie di transazioni che coinvolge diverse applicazioni ed è fondamentale avere una mappa precisa per capire cosa viene attivato a seguito di un certo comportamento ed esattamente in quale punto avviene; perché se stiamo tracciando l’applicazione A, che apparentemente funziona benissimo, ma non consideriamo una seppur minima interazione con l’applicazione B (che invece ha dei problemi) il risultato è che anche A avrà dei malfunzionamenti.
Questo significa che, oltre ad avere quelle capacità di auto discovery di cui abbiamo parlato prima, una soluzione APM deve avere capacità di operare in ambienti eterogenei.
ZeroUno: Sebbene la sua diffusione non sia così ancora così pervasiva, è ben chiaro il concetto base della metodologia DevOps e oggi si sta iniziando a parlare di DevSecOps (integrazione nel processo di sviluppo, fin dalle prime fasi, di tecnologie di security, per una “security by design”). Non bisognerebbe a questo punto introdurre nei team, oltre alle figure di security, anche profili che si occupano delle performance applicative?
Bassi: No, non sono d’accordo sul fatto che ci vogliano degli skill verticali dedicati all’APM all’interno di questi team e, in generale, all’interno dell’azienda.
È un concetto che ritengo superato e che ha già fallito sul mercato: da un lato perché anche se nel passato poteva essere una cosa ragionevole, di fatto era un approccio considerato troppo costoso dalla maggior parte delle aziende; dall’altro, anche chi ha scelto questa strada si è trovato a dover mettere intorno a un tavolo persone con skill molto diversi, con problematiche organizzative e di relazione difficili da risolvere. Secondo me, quindi, lo strumento di APM non deve richiedere competenze specifiche, deve facilitare la fruizione di un’applicazione e fornire a chi conosce bene l’applicazione dashboard facilmente utilizzabili per misurarne le performance.
ZeroUno: Infine, anche alla luce di quanto detto prima, mi può illustrare le caratteristiche principali della vostra soluzione?
Bassi: Quando Oracle deve affrontare tecnologie innovative, spesso lo fa acquisendo realtà che operano in questi ambiti. Nel caso dell’APM, per entrare in un mercato dove sostanzialmente non era presente [Oracle aveva un’applicazione di APM ma che monitorava solo le soluzioni Oracle ndr], si è comportata in un modo diverso decidendo di sviluppare internamente la soluzione e circa due anni fa è nata Oracle Management Cloud. Il motivo principale di questa decisione è stato che nessuna delle soluzioni disponibili sul mercato era fatta per fronteggiare le sfide che ci sono oggi, e delle quali abbiamo parlato finora. Innanzitutto risolvere il tema affrontato nella domanda precedente, quello degli skill, fornendo una soluzione sotto forma di servizio, in cloud, indipendente dall’on premises, che possa monitorare le applicazioni ovunque si trovino e basata su tecnologie di machine learning. Il punto di forza di questa soluzione [riconosciuto anche da Gartner nel Quadrante Magico per le APM suite ndr] è la correlazione non solo applicativa ma anche con tutti i dati dell’IT operation, compresi i log di sicurezza ecc. costruendo un dato a più dimensioni, facilmente fruibile, che fornisce tutte le informazioni necessarie sull’intero sistema e in base alle quali è possibile prendere la decisione. In pratica, tornando alla suddivisione di Gartner, la nostra soluzione consente di effettuare automaticamente l’individuazione del problema e lascia all’essere umano solo il 10% del lavoro, consentendogli di ragionare in modo proattivo sul miglioramento continuo delle performance.
ZeroUno: Qual è la diffusione e il target di riferimento di Oracle Management Cloud?
Bassi: In Italia abbiamo tanti clienti che la utilizzano, ha avuto una rapida diffusione anche perché un trial è pronto in mezza giornata con risultati, come abbiamo visto nell’esempio citato all’inizio, immediatamente evidenti. Per quanto riguarda il target, oltre a quello tradizionale Oracle delle grandi imprese, stiamo lavorando molto anche con le piccole e medie imprese attraverso l’Oracle Digital di Malaga, uno dei centri Oracle che supporta, con operatori italiani, sia i clienti finali del segmento PMI sia i partner del nostro paese.