Configure Heron

State Manager

By default, Heron uses Local File System State Manager on Mesos to manage states. Modify
$HOME/.heron/conf/mesos/statemgr.yaml to use ZooKeeper. For more details see Setting up
ZooKeeper.

Scheduler

Heron needs to know where to load the lib to interact with Mesos. Change the config
heron.mesos.native.library.path in $HOME/.heron/conf/mesos/scheduler.yaml to the library path
of the Mesos install. If Mesos is installed through brew, the library path should be
/usr/local/Cellar/mesos/your_mesos_version/lib.

Mesos only offers a C++ interface, which is not portable across platforms.

Run Topology in Mesos

After setting up Heron and Mesos, submit a topology using the following command. By default this
command loads the config in $HOME/.heron/conf. Add --config-path=your_conf_path to change the
config path.

Mesos Management Console

Another way to check your topology is running is to look at the Mesos management console. If it
was launched successfully, two containers will be running.

To view the process logs, click the sandbox on the right side. The sandbox of the heron container
is shown below.

The log-files directory includes the application and GC log of the processes running in this
container.

The bolt log of the ExclamationTopology is container_1_exclaim1_1.log.0. Below is a sample of it.

Heron UI

Install Heron tools to monitor the topology with the heron-ui (see Quick Start Guide). Configure the value of statemgrs.rootpath in
$HOME/.herontools/conf/heron_tracker.yaml to $HOME/.herondata/repository/state/mesos before
starting the tracker. This configuration sets the location of the state manager root path. Start
tracker and the UI.