Symfoware

Symfowareについての考察blog

Debian 7 + kibana 3.1.2 + nginxの環境構築

Debian 7にElasticsearch 1.4をインストールしました。
Elasticsearch 1.4をDebian 7にインストールする

Elasticsearchに登録されているデータを可視化するツールに
「kibana」があります。
http://www.elasticsearch.org/overview/kibana/

これをインストールしてみます。



kibanaのダウンロード



kibanaは、html + javascriptのツールです。
まず、配信するファイル一式をダウンロード。

/optに配置することにしました。


# cd /opt/
# wget https://download.elasticsearch.org/kibana/kibana/kibana-3.1.2.tar.gz
# tar zxf kibana-3.1.2.tar.gz




Elasticsearchが別サーバーで動作している場合、サーバーを指定します。
同一サーバーで稼働している場合は、そのままでOK。


# vi config.js



29行目付近


elasticsearch: "http://"+window.location.hostname+":9200"



ここにサーバー名を指定します。
ブラウザアプリの特性上、クライアントからアクセスできるurlを指定します。


これでkibanaの配置は終了。




nginxのインストール



配信用のwebサーバーはnginxを使用することにしました。
apt-getでインストールします。


# apt-get install nginx




設定ファイルを編集。
http://(サーバーIP)/kibanaでダウンロードしたファイルにアクセスできるようにしました。


# vi /etc/nginx/sites-enabled/default




以下の内容を、「server {」内に追記します。


        location /kibana/ {
                alias /opt/kibana-3.1.2/;
                index index.html index.htm;
        }





これでnginxの設定は終了です。起動しておきます。


# /etc/init.d/nginx start






elasticsearch.yml



http://(サーバーIP)/kibanaにアクセスすると、こんなエラーになりました。


Connection Failed
Possibility #1: Your elasticsearch server is down or unreachable

This can be caused by a network outage, or a failure of the Elasticsearch process. If you have recently run a query that required a terms facet to be executed it is possible the process has run out of memory and stopped. Be sure to check your Elasticsearch logs for any sign of memory pressure.
Possibility #2: You are running Elasticsearch 1.4 or higher

Elasticsearch 1.4 ships with a security setting that prevents Kibana from connecting. You will need to set the following in your elasticsearch.yml:
http.cors.enabled: true
http.cors.allow-origin to the correct protocol, hostname, and port (if not 80) that your access Kibana from. Note that if you are running Kibana in a sub-url, you should exclude the sub-url path and only include the protocol, hostname and port. For example, http://mycompany.com:8080, not http://mycompany.com:8080/kibana.
Click back, or the home button, when you have resolved the connection issue





elasticsearch.ymlを編集しろとのこと。


# vi /etc/elasticsearch/elasticsearch.yml



「Network And HTTP」というセクションの最後に、以下の1行を追記します。


http.cors.enabled: true


オプションの意味はこちら。
http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-http.html


Elasticsearchをリスタートして反映。


# /etc/init.d/elasticsearch restart




再度、http://(サーバーIP)/kibanaにアクセスすると、こんな画面が表示されます。

506_01.png

関連記事

テーマ:サーバ - ジャンル:コンピュータ

  1. 2014/11/09(日) 15:56:40|
  2. 備忘録
  3. | トラックバック:0
  4. | コメント:0
  5. | 編集
<<Elasticsearch + kibana ダッシュボードの設定 | ホーム | Elasticsearch Pythonでsettinsとmappingを指定する>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://symfoware.blog68.fc2.com/tb.php/1545-101f125b
この記事にトラックバックする(FC2ブログユーザー)