Monitoring di webserver Apache Tomcat con System Center Operations Manager 2012

Buon inizio di settimana a tutti. Come sapete System Center 2012 consente di eseguire il monitoring e la gestione dei server fisici, delle macchine virtuali, degli applicativi server, dei client, può interfacciarsi a sistemi di gestione terze parti e gestire l’infrastruttura virtualizzata Citrix e vmware.

Silvio Di BenedettoOggi vi voglio presentare un articolo scritto da Silvio Di Benedetto, Community Lead di WindowServer.it e MVP System Center Cloud and Datacenter Management, che ci presenta come eseguire il monitoring di webserver Apache Tomcat con System Center Operations Manager 2012.


Tra le tante novità introdotte in System Center 2012 Operations Manager, c'è la possibilità di monitorare server web basati su sistemi Java e Tomcat in modo nativo e senza ricorrere a Management Pack di terze parti. In questa guida si vedrà come installare, configurare ed attivare il controllo di un server Tomcat da OM2012. Di default Operations Mananger non effettuta la discovery dei server Tomcat installati su macchine Windows come servizio.

Nella Gallery TechNet trovate un file compresso chiamato BeanSpy.zip che contiene tutti gli elementi necessari a svolgere le operazioni descritte di seguito. Leggere attentamente le indicazioni fornite nel sito web relativo, prima di procedere al download.

La prima operazione da svolgere è il download del componente JEE Server Application, successivamente bisognerà installare il pacchetto su uno dei Management Server, nel caso siano presenti più macchine, ed importare i Management Pack che si trovano nella cartella dove sono stati estratti i file.

Dando per scontato che l'agent sia già installato sui computer che si vuole monitorare, lo step successivo è quello di installare il BeanSpy che non è nient'altro che un'applicazione che sarà contattata da Operations Manager per fare l'analisi del server Tomcat. L'installazione del file Bean.war è possibile effettuarla direttamente dal sito di management del server Tomcat, come mostra la figura 1. Nel file compresso è presente anche un altro file chiamato Bean.HTTP.Auth.war che si basa sul concetto di autenticazione.

Figura 1 - Area Installazione Add-On

Figura 2 - Creazione Run As AccountNel caso sia stato installato il demone con supporto all'autenticazione, andrà effettuata la creazione di un account dentro Operations Manager che avrà i permessi per interrogare il web server in tutta la sua forma. Il tipo di account da creare, nella sezione Run As Account, sarà di tipo Basic Authentication, figura 2, dove la username e la password saranno quelli che si trovano all'interno del file di configurazione del server Tomcat, nel file tomcat_users.xml.

L'ultima fase riguarda l'esecuzione di un task che inserirà i server Tomcat dentro Operations Manager. Per fare questo è necessario utilizzare il file _list_srv_tomcat.txt, presente nel file compresso; questa lista dovrà essere compilata con tutti i server Tomcat che avete all'interno della vostra infrastruttura, usando il nome comprensivo di porta (es http://srvtomcat:8080). E' importante ricordare che, in caso di server basati su piattaforme Tomcat diverse tra di loro, sarà necessario creare più file di testo.

Compilata la lista è tempo di lanciare lo script in PowerShell chiamato _Discovery TomCat.ps1. Questo script deve essere lanciato con privilegi amministrativi e dovrà trovarsi assieme agli altri script in PowerShell che si trovano nel file compresso. Lo script è strutturato in questo modo:

type .\_list_srv_tomcat.txt | .\NewJEEAppServer.ps1 -managementserver SCOM2012MS01 -JEEAppServerType Tomcat -JEEAppServerVersion 6

Prima di lanciare il comando sarà necessario modificare il Management Server ed eventualmente modificare il JEEAppServerVersion, in base alla versione di Tomcat che avete installato. Come ricordato in precedenza, in caso di diversi server, bisognerà creare più file di testo ed anche più script PS.

Se il risultato sarà svolto correttamente si avrà una schermata come quella della figura 3.

Figura 3 - Esecuzione Task

A questo punto sarà necessario attendere qualche minuto per verificare che l'operazione sia andata a buon fine. Nel pane Monitoring, all'interno della sezione Application Monitoring - Java Monitor - Tomcat Server - Deep Monitored Configuration, si dovrà visualizzare l'elenco delle macchine inserite nel file di testo, come mostra la figura 4.

Figura 4 - Elenco Server Tomcat

Contestualmente si dovranno visualizzare, all'interno della sezione Applications, tutte le applicazioni installate sui vari server web, come mostra la figura 5.

Figura 5 - Elenco Applicazioni

Per rimuovere una lista di server, il comando da lanciare sarà il seguente: .\type _list_srv_tomcat.txt | RemoveJEEAppServer.ps1

In pochi e semplici passaggi si è messo sotto monitoraggio un server web non Microsoft, il tutto in modo gratuito. Dal momento in cui i server saranno funzionanti e monitorati, sarà possibile creare dei Monitor dedicati, per esempio per tenere sotto controllo le Active Session, tramite il pane Authoring. In caso si sia fatta un'installazione di Tomcat non usando il servizio di Windows, la macchina verrà visualizzata nella sezione Configurations; tuttavia le operazioni da svolgere saranno le stesse indicate sopra.

Silvio Di Benedetto