Il container monitoring è un processo importante per l’automazione dell’IT e il rapido deploy del software (gli analisti di Gartner stimano che entro il 2025 oltre l’85% delle grandi imprese avrà in produzione container). Con l’uso del cloud di Docker e di orchestratori come Kubernetes, cambiano molti aspetti della gestione IT. In particolare, per il monitoraggio dei container c’è la necessità di utilizzare strumenti diversi da quelli tradizionalmente impiegati per tenere sotto controllo server e applicazioni, preferibilmente guidati nella loro scelta dal partner giusto. Vediamo di seguito rapidamente quali sono le funzionalità e benefici del container monitoring.
Il container monitoring per l’efficacia delle nuove modalità di deploy del software
I container standardizzano le modalità dei deploy software rendendo più facile spostare applicazioni e servizi da un server all’altro, tra sistemi on premise e in cloud, sfruttando i servizi offerti dall’orchestratore. Docker è la tecnologia per container più diffusa e Kubernetes l’orchestratore open source più utilizzato, supportato sia in ambiti di cloud sia con le piattaforme di numerosi vendor, tra cui VMware e Red Hat.
Per trarre massimo vantaggio dalla modernizzazione dell’IT attraverso l’adozione dei container e dell’orchestratore Kubernetes, è importante che venga messa a punto una strategia capace di rispondere a tutti i fondamentali aspetti che vanno dalla sicurezza al networking, dalla governance dei dati all’integrazione con processi DevOps.
La complessità dei moderni ambienti di deploy distribuiti (on premise e di cloud), con funzioni applicative parcellizzate e dipendenti dal networking, rende importante controllare in tempo reale funzionamento e prestazioni attraverso l’applicazione di best practice e l’utilizzo di tool specifici per il container monitoring. Le metriche tecniche infrastrutturali dei tool tradizionali, come i livelli d’utilizzo della CPU, della memoria o della banda di rete, non sono più sufficienti per risolvere i problemi degli ambienti a container.
Come si realizza un efficace monitoring dei container
Per garantire continuità e prestazioni IT, il monitoring dei container deve:
- poter rilevare in tempo reale i problemi ed aiutarne la risoluzione proattiva;
- facilitare i cambiamenti di piattaforma garantendo le condizioni di sicurezza;
- provvedere alle operazioni di tuning che servono per ottenere alte prestazioni, migliore user experience e per ottimizzare l’allocazione delle risorse.
Le tradizionali misure relative all’infrastruttura non risultano adatte al monitoring dei container, perché mancanti dei dettagli che servono ad analizzare sia il funzionamento di queste strutture logiche sia dei servizi software che vi sono appoggiati. Per svolgere i compiti del container monitoring serve utilizzare dei tool specifici: Datadog, Dynatrace, Instana, New Relic, Sensu, Splunk, Sysdig, Turbonomic, solo per citarne alcuni. Tuttavia, i migliori risultati si ottengono solo impiegando gli strumenti che dispongono della migliore integrazione con la distribuzione di Kubernetes in uso.
Secondo le indicazioni degli analisti di Gartner, per essere efficace il tool di monitoring deve offrire sia il monitoraggio di dettaglio dei singoli container sia degli insiemi di container che supportano le applicazioni e i servizi più complessi. È, inoltre, importante che sia dotato della capacità di discovery automatico dei servizi, di monitoraggio dettagliato delle applicazioni con le funzioni per il tracing per quelle distribuite.
Sul fronte del monitoraggio applicativo, è inoltre importante preferire software sviluppati per offrire maggiore trasparenza al proprio interno e fornire le informazioni utili per controllarne il funzionamento. Il monitoraggio dei container e delle applicazioni che vi girano sopra si avvantaggia di tool capaci di registrare un gran numero di parametri nei log e di aggregare le diverse metriche nel modo più utile al tracciamento funzionale distribuito. Tra le raccomandazioni degli analisti, c’è quella di dare preferenza ai tool di container monitoring che sono integrati con Prometheus (ambiente di monitoraggio e alerting open source) e in grado di offrire consigli in tempo reale sfruttando capacità integrate di advanced analytics e machine learning sui dati di monitoraggio.