Kibana

  • By elasticsearch-charmers
  • Other

juju deploy kibana

16.04 LTS 14.04 LTS

Discuss this charm

Share your thoughts on this charm with the community on discourse.

Join the discussion

Overview

This charm provides Kibana v5.x from https://www.elastic.co/products/kibana. Kibana lets you visualize your Elasticsearch data and navigate the Elastic Stack.

Usage

Deploy and expose the Kibana web interface with:

juju deploy kibana
juju expose kibana

Kibana is not much use on its own; you'll probably want the full stack:

juju deploy ~elasticsearch-charmers/bundle/elk-stack
juju expose kibana

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

Installation

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

https://artifacts.elastic.co/downloads/kibana/kibana-5.6.7-linux-x86_64.tar.gz

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/kibana6.

Configuration

Listens on localhost:5601. Uses nginx to redirect ip-addr:80 to localhost:5601. This should allow for haproxy etc to be used in front. You could also configure apache reverse proxy in front if you want SSL / .htaccess

Other

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

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

Deploy / Add Dashboards

The Kibana charm ships with an 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/load.sh

Which is the repository layout adopted by Elasticsearch for their own dashboards. To include your own, simply make a directory, mirror the load.sh 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/load.sh script.

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

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

Contact Information

Author: Paul Czarkowski paul@paulcz.net Report bugs at: https://bugs.launchpad.net/kibana-charm Location: https://jujucharms.com/kibana/