Configure and Start Apache Storm
![]() | Note |
|---|---|
The |
Apache Storm is fairly independent of changes to the HDP cluster:
Deactivate all running topologies.
Delete all states under zookeeper:
/usr/hdp/current/zookeeper-client/bin/zkCli.sh (optionally in secure environment specify -server zk.server:port)rmr /stormDelete all states under the storm-local directory:
rm -rf <value of stormlocal.dir>Stop Storm Services on the storm node.
Update the following configs in
storm.yaml:storm.thrift.transport=org.apache.storm.security.auth.SimpleTransportPluginstorm.messaging.transport=org.apache.storm.messaging.netty.Contextnimbus.topology=org.apache.storm.nimbus.DefaultTopologyValidatortopology.spout.wait.strategy=org.apache.storm.spout.SleepSpoutWaitStrategytopology.kryo.factory=org.apache.storm.serialization.DefaultKryoFactorytopology.tuple.serializer=org.apache.storm.serialization.types.ListDelegateSerializernimbus.authorizer=org.apache.storm.security.suth.authorizer.SimpleACLAuthorizer(applicable only in a secure cluster)drpc.authorizer=org.apache.storm.security.auth.authorizer.DRPCSimpleACLAuthorizer(applicable only in a secure cluster)ui.filter=org.apache.storm.secuity.auth.KerberosPrincipalToLocal(applicable only in a secure cluster)
Stop ZooKeeper Services on the storm node.
su - zookeeper -c "export ZOOCFGDIR=/etc/zookeeper/conf ; export ZOOCFG=zoo.cfg ;source /etc/zookeeper/conf/zookeeper-env.sh ; /usr/lib/zookeeper/bin/zkServer.sh stop"Remove Storm and zookeeper from the storm node and install the HDP 2.5.5 version:
For RHEL/CentOS/Oracle Linux:
yum erase stormyum erase zookeeperyum install stormyum install zookeeperFor SLES:
zypper rm stormzypper rm zookeeperzypper install stormzypper install zookeeperFor Ubuntu/Debian:
apt-get remove storm --purgeapt-get remove zookeeper --purgeapt-get install stormapt-get install zookeeper
Replace your configuration after upgrading. Copy
/etc/storm/conffrom the template to the conf directory .Replace your ZooKeeper configuration after upgrading. Replace the ZooKeeper template configuration in
/etc/zookeeper/conf.Ensure ZooKeeper is running. On the storm node, run the following command:
su - zookeeper -c "source /etc/zookeeper/conf/zookeeper-env.sh; export ZOOCFGDIR=/etc/zookeeper/conf; /usr/hdp/current/zookeeper-server/bin/zkServer.sh start >> $ZOO_LOG_DIR/zoo.out\"
where
$ZOO_LOG_DIR is the directory where ZooKeeper server logs are stored. For example, /var/log/zookeeper.
Start nimbus, then supervisor/ui/drpc/logviewer:
/usr/hdp/current/storm-nimbus/bin/storm nimbus.Start Storm, using a process controller, such as supervisor:
su - storm /usr/hdp/current/storm-supervisor/bin/storm supervisorYou can use the same command syntax to start Storm using nimbus/ui and logviewer.
su - storm /usr/hdp/current/storm-supervisor/bin/storm nimbussu - storm /usr/hdp/current/storm-supervisor/bin/storm uisu - storm /usr/hdp/current/storm-supervisor/bin/storm logviewersu - storm /usr/hdp/current/storm-supervisor/bin/storm drpc


![[Note]](../common/images/admon/note.png)