Skip to content

Commit

Permalink
Merge pull request #82 from rashidkpc/master
Browse files Browse the repository at this point in the history
Nginx sample config
  • Loading branch information
Rashid Khan committed May 14, 2013
2 parents 13d664a + f63d790 commit f7a1d8e
Show file tree
Hide file tree
Showing 2 changed files with 76 additions and 7 deletions.
37 changes: 30 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,46 @@
# Kibana

__NOTE__: You have reached the Kibana 3 repository. Kibana 3 is completely new version of Kibana written entirely in HTML and Javascript. You can find the Kibana 2 repository at [https://github.com/rashidkpc/Kibana](https://github.com/rashidkpc/Kibana)
__NOTE__: You have reached the Kibana 3 repository.
Kibana 3 is completely new version of Kibana written entirely in HTML and Javascript. You can find
the Kibana 2 repository at [https://github.com/rashidkpc/Kibana](https://github.com/rashidkpc/Kibana)

More information about Kibana 3 can be found at [http://three.kibana.org](http://three.kibana.org)

## Overview

Kibana is an open source (Apache Licensed), browser based analytics and search interface to Logstash and other timestamped data sets stored in ElasticSearch. With those in place Kibana is a snap to setup and start using (seriously). Kibana strives to be easy to get started with, while also being flexible and powerful
Kibana is an open source (Apache Licensed), browser based analytics and search interface to Logstash
and other timestamped data sets stored in ElasticSearch. With those in place Kibana is a snap to
setup and start using (seriously). Kibana strives to be easy to get started with, while also being
flexible and powerful

### Requirements
* A modern web browser. The latest version of Chrome, Safari and Firefox have all been tested to work. IE8 is not currently supported
* A modern web browser. The latest version of Chrome, Safari and Firefox have all been tested to
work. IE8 is not currently supported
* A webserver. No extensions are required, as long as it can serve plain html it will work
* A browser reachable Elasticsearch server. Port 9200 must be open, or a proxy configured to allow access to it.
* A browser reachable Elasticsearch server. Port 9200 must be open, or a proxy configured to allow
access to it.

### Installation

1. Copy the entire Kibana directory to your webserver
2. Edit config.js to point to your elasticsearch server. This should __not be http://localhost:9200__, but rather the fully qualified domain name of your elasticsearch server. The url entered here _must be reachable_ by your browser.
3. Point your browser at your installation. If you're using Logstash with the default indexing configuration the default Kibana dashboard should work nicely.
2. Edit config.js to point to your elasticsearch server. This should __not be
http://localhost:9200__, but rather the fully qualified domain name of your elasticsearch server.
The url entered here _must be reachable_ by your browser.
3. Point your browser at your installation. If you're using Logstash with the default indexing
configuration the default Kibana dashboard should work nicely.

### FAQ
__Q__: Why doesnt it work? I have http://localhost:9200 in my config.js, my webserver and elasticsearch
server are on the same machine
__A__: Kibana 3 does not work like previous versions of Kibana. To ease deployment, the server side
component has been eliminated. Thus __the browser connects directly to Elasticsearch__. The default
config.js setup works for the webserver+Elasticsearch on the same machine scenario. Do not set it
to http://localhost:9200 unless your browser Wnd elasticsearch are on the same machine

__Q__: How do I secure this? I don't want to leave 9200 open.
__A__: A simple nginx virtual host and proxy configuration can be found in the sample/kibana.conf

### Support
Introduction videos can be found at [http://three.kibana.org](http://three.kibana.org/about.html)

Introduction videos can be found at [http://three.kibana.org/about.html](http://three.kibana.org/about.html)
If you have questions or comments the best place to reach me is #logstash or #elasticsearch on irc.freenode.net
46 changes: 46 additions & 0 deletions sample/kibana.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
#
# Nginx proxy for Elasticsearch + Kibana
#
# In this setup, we are password protecting the saving of dashboards. You may
# wish to extend the password protection to all paths.
#
# Even though these paths are being called as the result of an ajax request, the
# browser will prompt for a username/password on the first request
#
# If you use this, you'll want to point config.js at http://FQDN:80/ instead of
# http://FQDN:9200
#
server {
listen *:80 ;

server_name kibana.myhost.org;
access_log /var/log/nginx/kibana.myhost.org.access.log;

location / {
root /usr/share/kibana3;
index index.html index.htm;
}

location ~ ^/_aliases$ {
proxy_pass http://127.0.0.1:9200;
proxy_read_timeout 90;
}
location ~ ^/.*/_search$ {
proxy_pass http://127.0.0.1:9200;
proxy_read_timeout 90;
}

# Password protected end points
location ~ ^/kibana-int/dashboard/.*$ {
proxy_pass http://127.0.0.1:9200;
proxy_read_timeout 90;
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/conf.d/kibana.myhost.org.htpasswd;
}
location ~ ^/kibana-int/temp.*$ {
proxy_pass http://127.0.0.1:9200;
proxy_read_timeout 90;
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/conf.d/kibana.myhost.org.htpasswd;
}
}

0 comments on commit f7a1d8e

Please sign in to comment.