This information related to Ambari when managing HDP 2.1 with the Storm service.

 

NOTE: Running under supervision is only supported for Nimbus Server and Supervisors.


Step 1 - Stop all Storm components

Use Ambari Web Services -> Storm -> Service Actions -> Stop  and wait until stop completes.

Step 2 - Stop Ambari Server
ambari-server stop
Step 3 - Change Supervisor and Nimbus command scripts in the Stack definition

On Ambari Server host run:

sed -ir "s/scripts\/supervisor.py/scripts\/supervisor_prod.py/g" /var/lib/ambari-server/resources/stacks/HDP/2.1/services/STORM/metainfo.xml
sed -ir "s/scripts\/nimbus.py/scripts\/nimbus_prod.py/g" /var/lib/ambari-server/resources/stacks/HDP/2.1/services/STORM/metainfo.xml
Step 4 - Install Supervisord on all Nimbus and Supervisor hosts

Install EPEL repository

yum install epel-release -y

Install supervisor package for supervisord

yum install supervisor -y

Enable supervisord on autostart

chkconfig supervisord on

Change supervisord configuration file permissions

chmod 600 /etc/supervisord.conf
Step 5 - Configure supervisord to supervise Nimbus Server and Supervisors

Append the following to /etc/supervisord.conf on all Supervisor host and Nimbus hosts accordingly

[program:storm-nimbus]
command=env PATH=$PATH:/bin:/usr/bin/:/usr/jdk64/jdk1.7.0_45/bin/ JAVA_HOME=/usr/jdk64/jdk1.7.0_45 /usr/lib/storm/bin/storm nimbus
user=storm
autostart=true
autorestart=true
startsecs=10
startretries=999
log_stdout=true
log_stderr=true
logfile=/var/log/storm/nimbus.out
logfile_maxbytes=20MB
logfile_backups=10
[program:storm-supervisor]
command=env PATH=$PATH:/bin:/usr/bin/:/usr/jdk64/jdk1.7.0_45/bin/ JAVA_HOME=/usr/jdk64/jdk1.7.0_45 /usr/lib/storm/bin/storm supervisor
user=storm
autostart=true
autorestart=true
startsecs=10
startretries=999
log_stdout=true
log_stderr=true
logfile=/var/log/storm/supervisor.out
logfile_maxbytes=20MB
logfile_backups=10
NOTE: Change /usr/jdk64/jdk1.7.0_45 accordingly to location of the jdk for Ambari
Step 6 - Start Ambari Server
ambari-server start
  • No labels