Running Elastic Stack (ES and Kibana) on Oracle Container Cloud

Lucas Jellema
0 0
Read Time:1 Minute, 44 Second

It should be simple and in the end it was relatively simple – but still I was struggling a little bit with getting two key components of the Elastic Stack running on Oracle Container Cloud, working together and exposed to the world. For my future reference, here is the configuration I got to work:

I have defined a Service for Elastic Search – based on the official image published by Elastic:

image

The discovery.type is set to single-node to prevent running into an issue with the number of file descriptors being too low (see references)

The Docker run command associated with these settings:

docker run \
   -p=9200:9200/tcp \
   -p=9300:9300/tcp \
   –name=elasticsearch \
   -e=”discovery.type=single-node” \
   “docker.elastic.co/elasticsearch/elasticsearch:6.4.0”

Note that the container started from this service is explicitly named elasticsearch. This is done for the link defined for the Kibana service to work correctly.

A second Service is defined for Kibana – one that has a reference to the first one:image

Note the Link defined for the container called elasticsearch . The default port 5601 is mapped to the host port 7000 (that should not be needed but for me 5601 did not work)

The Docker run command:

docker run \
   -e=”ELASTICSEARCH_URL=http://elasticsearch:9200″ \
   -e=”occs:description=docker.elastic.co/kibana/kibana:6.4.1″ \
   –link=elasticsearch:elasticsearch \
   -p=7000:5601/tcp \
   “docker.elastic.co/kibana/kibana:6.4.1”

The first service can be deployed using Deploy:image

The second service can then also be started

image

This second service starts Kibana that will contact Elastic Search, leveraging the link to the first container.

Now containers are running for both services:

image

They expose ports 9200 and 9300 for Elastic Search and 7000 for Kibana on the Host. I can get the public IP for the Host and therefore I can now access both Elastic components:

image

image

Kibana has linked up with Elastic Search and can now visualize its data.


About Post Author

Lucas Jellema

Lucas Jellema, active in IT (and with Oracle) since 1994. Oracle ACE Director and Oracle Developer Champion. Solution architect and developer on diverse areas including SQL, JavaScript, Kubernetes & Docker, Machine Learning, Java, SOA and microservices, events in various shapes and forms and many other things. Author of the Oracle Press book Oracle SOA Suite 12c Handbook. Frequent presenter on user groups and community events and conferences such as JavaOne, Oracle Code, CodeOne, NLJUG JFall and Oracle OpenWorld.
Happy
Happy
0 %
Sad
Sad
0 %
Excited
Excited
0 %
Sleepy
Sleepy
0 %
Angry
Angry
0 %
Surprise
Surprise
0 %
Next Post

Generic Docker Container Image for running and live reloading a Node application based on a GitHub Repo

My desire: find a way to run a Node application from a Git(Hub) repository using a generic Docker container and be able to refresh the running container on the fly whenever the sources in the repo are updated. The process of producing containers for each application and upon each change […]
%d bloggers like this: