kibana #0

Supports: trusty
Add to new model


alternative (better) logstash frontend


This charm provides kibana from ( Kibana is a search frontend for logstash.

Using This Charm

using this charm :

juju deploy kibana
juju expose kibana

not much use on its own ... you'll probably want the full stack

juju deploy elasticsearch
juju deploy logstash-indexer
juju add-relation logstash-indexer elasticsearch:cluster
juju deploy kibana
juju add-relation kibana elasticsearch
juju expose kibana

browse to http://ip-address to begin searching.


Kibana source tarball will be downloaded and verified according to the configured values in 'kibana_source' and 'kibana_source_checksum', which default to::

It will, obviously, require internet access on deployed nodes.

This behavior can be bypassed by providing <charm>/files/kibana.tgz payload prior deployment. The given payload will be used, without any checksum verification, and unpacked to /srv/kibana4.


listens only on localhost:5601. uses rinetd to redirect ip-addr:80 to localhost:5601. This should allow for haproxy etc to be used in front. Could configure apache reverse proxy in front if you want SSL / .htaccess


  • supports multiple ES servers in cluster. This should help with balancing the load on ES and dealing with failure.

  • see logstash-indexer charm's file for usage examples.

Deploy / Add Dashboards

The Kibana charm ships with a action to deploy dashboards into the Kibana instance. You will however, have to have them loaded into the charm before the user deploys it, which means a pull request to the upstream charm to include you're awesome dashboard for everyone!

For example, to deploy the included 'beats' dashboard with < Juju 2.0:

juju action do kibana/0 load-dashboard dashboard=beats

For 2.0 +

juju run-action kibana/0 load-dashboard dashboard=beats

This invokes the action, which in turn looks in the 'dashboards' directory for $DASHBOARD_NAME/

Which is the repository layout adopted by Elasticsearch for their own dashboards. to include your own, simply make a directory, a mirror the script to curl to your elasticsearch instance (by default: localhost:9200 will work as its proxying the connection to your ES cluster) and it will declare any indexes as well as load any dashboard JSON definitions you include. For more information consult the dashboards/beats/ script.

Custom dashboards can be added by uploading them via juju scp:

juju scp my-dashboard/ kibana/0:dashboards/

Contact Information

Author: Paul Czarkowski Report bugs at: Location:


(string) Space-separated list of Elasticsearch visualization dashboards to load on deployment. Dashboards must exist in 'dashboards' directory and contain a script to populate into Elasticsearch. The only dashboard currently supported out-of-the-box is "beats".
(string) URL to download the source for kibana
(string) the sha1sum of the kibana_source
(string) The url path of kibana. This is required if kibana is proxied at a non root path. e.g.
(int) The tcp port on which nginx will listen.