This guide describes the `echo-elastic` stack part which serves as the main key/value and queue to the stack.

Overview

echo-elastic is built on top of Elasticsearch and uses a configured and packaged version of its object code.

Running

In order to run echo-elastic run the following in a console:

$ docker run \
    --name echo-elastic \
    -p 9200:9200 \
    registry:5000/joola/echo-elastic

Following the successful execution of the above, you should have a running echo-elastic serving requests at http://localhost:9200.

Inspecting

Like all other Echo stack parts, echo-elastic has a rich logging interface.

$ docker logs -f --tail 200 echo-elastic

This will printout the runtime’s logs for your inspection, any warning or error will be clearly indicated in the log.

In case you wish to access the container’s runtime, you can docker exec into the container.

$ docker exec -it echo-elastic bash

This will open a shell within the container and allow you to inspect it further.

Security certificates

echo-elastic cluster

Master nodes

Data nodes

Coordinator nodes

Configuration

echo-elastic configuration is based on simple configuration file shared via a docker volume:

$ docker run \
    --name echo-elastic \
    -p 9200:9200 \
    -v /opt/joola/echo/config/elasticsearch/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
    registry:5000/joola/echo-elastic

Here's a short summary of main differences between echo-elastic configuration and the main Elasticsearch branch:

daemonize no
pidfile /var/run/redis/redis-server.pid
port 6379
bind 0.0.0.0
maxmemory 4194304000
maxmemory-policy noeviction