Configuring Heron settings

Before running Heron via Nomad, you’ll need to configure some settings. Once you’ve installed Heron, all of the configurations you’ll need to modify will be in the ~/.heron/conf/nomad diredctory.

First, you’ll need to use a topology uploader to deploy topology packages to nodes in your cluster. You can use one of the following uploaders:

The HTTP uploader in conjunction with Heron’s API server. The Heron API server acts like a file server to which users can upload topology packages. The API server distributes the packages, along with the Heron core package, to the relevant machines. You can also use the API server to submit your Heron topology to Nomad (described below)

Deploying with the API server

The advantage of running the Heron API Server is that it can act as a file server to help you distribute topology package files and submit jobs to Nomad, so that you don’t need to modify the configuration files mentioned above. By using Heron’s API Server, you can set configurations such as the URI of ZooKeeper and the Nomad server once and not need to configure each machine from which you want to submit Heron topologies.

Running the API server

You can run the Heron API server on any machine that can be reached by machines in your Nomad cluster via HTTP. Here’s a command you can use to run the API server:

You can also run the API server in Nomad itself, but you will need to have a local copy of the Heron API server executable on every machine in the cluster. Here’s an example Nomad job for the API server: