Mule ESB service startup script

Mule ESB è un enterprise service bus scritto in java comparso sulla scena da qualche anno e che ha saputo ritagliarsi uno spazio importante fra le piattaforme di integrazione. Mi è stato chiesto di configurarlo per essere avviato come servizio in un ambiente di produzione linux, così ho preparato uno script di avvio in modalità demone.

Lo script di startup utilizzato è stato testato in un sistema operativo Linux Centos 5.x per la versione Mule ESB 3.2 standalone. Potete eseguire il download dello script al link seguente: mule_service.sh_

Ci sono alcune configurazioni da modificare nello script che dipendono dalle installazioni di Mule e della JDK necessaria per il suo avvio. Nel mio caso, infatti, l’installazione di java non è da repository ma direttamente dal pacchetto fornito da Oracle. Quindi:

  • JAVA_HOME=/path/to/java/home – modificate questo valore in base al path di installazione della JVM; se invece questa variabile si trova già fra le variabili d’ambiente del server, potete commentare la riga;
  • MULE_HOME=/path/to/mule/home – modificate questo valore in base al path di installazione di Mule ESB standalone;
  • MULE_OWNER=mule – modificate questo valore con il nome dell’utente con cui volete avviare il processo; è sempre buona norma evitare di dare permessi eccessivi al servizio.

A questo punto per eseguire lo start di Mule ESB come servizio si deve eseguire il comando

/etc/init.d/mule_service.sh start

mentre per fermarlo

/etc/init.d/mule_service.sh stop

Sono previsti inoltre altri due comandi:

/etc/init.d/mule_service.sh restart

per riavviare il servizio e

/etc/init.d/mule_service.sh status

per verificare lo stato del servizio, confrontando il valore del file pid generato all’avvio con i processi attivi sul server.

Per impostare l’avvio di Mule ESB come demone, lo script deve essere copiato nel path /etc/init.d, assegnando come utente e gruppo proprietari root

chown root:root mule_service.sh

e come permessi 755

chmod 775 mule_service

Poi si deve configurare lo script per l’avvio come servizio, ad esempio utilizzando il comando chkconfig:

chkconfig  –add mule_service.sh

chkconfig  –level 345 mule_service.sh on

A questo punto siamo sicuri che il servizio partirà con un eventuale riavvio del server.

Lascia un commento