データベース
 Computer >> コンピューター >  >> プログラミング >> データベース

ObjectRocketElasticsearchでKibana4を使用して稼働する

ObjectRocketElasticsearchでKibana4を使用して稼働する

数百万(または数十億!)のElasticsearchドキュメントを人目を引くチャート、グラフ、表に変換したい場合は、Kibanaがその答えです。 Elastic製品として、Elasticsearchと緊密に統合され、大量のデータを理解するための使いやすいインターフェースを提供します。

現在、すべてのObjectRocketElasticsearchインスタンスにはKibana3がプリロードされており、ElasticsearchHTTPエンドポイントの/_plugin/kibanaからアクセスできます。ただし、Kibana 4には多くの改善と新機能が導入されているため、ObjectRocketで作成するすべてのElasticsearchインスタンスと一緒に提供できるように努力しています。それまでの間、このチュートリアルでは、Dockerコンテナで実行されているKibana4を使用してElasticsearchインスタンスに接続する方法について説明します。

ObjectRocketElasticsearchでKibana4を使用して稼働する

前提条件

すでにDockerがインストールされていて、Elasticsearchインスタンスがインストールされている場合は、準備ができています。 DockerホストのIPアドレスがElasticsearchインスタンスでホワイトリストに登録されていることを確認し、接続情報を以下の「DockerでのKibana4の実行」セクションに移動してください。

Elasticsearch

開始するには、ObjectRocketにElasticsearchインスタンスが必要です。まだお持ちでない場合は、Elasticsearchの使用を開始するための優れたドキュメントがあります。 Dockerをローカルで実行するため、ACLで現在のIPアドレス(icanhazip.comから)をホワイトリストに登録してください。インスタンスが起動したら、Kibana4から接続するために次の情報が必要になります。

  • インスタンスのHTTPS接続文字列。例: https://iad1-19999-0.es.objectrocket.com:29999。 HAの目的で、各インスタンスには接続できる4つのクライアントノードがありますが、この場合は1つだけ必要です。
  • インスタンスの管理者ユーザーのユーザー名とパスワードの組み合わせ。

Docker

最近Dockerを使い始める最も簡単な方法は、DockerMachineです。インストールと構成の取得はこの記事の範囲外ですが、開始ガイドは開始するのに適した場所です。

DockerでのKibana4の実行

Elasticsearchインスタンスがオンラインになり、Dockerがインストールされたので、Kibana4を起動して実行します。

Docker Machineを使用している場合は、環境を適切に設定してください:

$ docker-machine ls
NAME        ACTIVE   DRIVER       STATE     URL                         SWARM
dockerbox            virtualbox   Running   tcp://192.168.99.100:2376
$ eval "$(docker-machine env dockerbox)"
$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

環境ファイルを作成する

使用するKibana4Dockerイメージ(objectrocket / kibana)では、Elasticsearchへの接続方法を認識できるようにELASTICSEARCH_URL環境変数を設定する必要があります。この例では、ユーザー名aliceとパスワードパスワードを使用して、ポート29999(HTTPS)でホストiad1-19999-3.es.objectrocket.comに接続しています。

$ echo 'ELASTICSEARCH_URL=https://alice:password@iad1-19999-3.es.objectrocket.com:29999' > kibana4.env

:-eフラグを使用してこれらの環境変数を簡単に渡すこともできますが、機密性の高いクレデンシャルが含まれているため、環境変数に配置することをお勧めします。

コンテナを起動します

これで、Kibana4コンテナを起動できます:

# Use `-p $PORT:5601` if you wish to change the bind port
$ docker run -d --name kibana4 -p 5601:5601 --env-file kibana4.env objectrocket/kibana:4.1.2
Unable to find image 'objectrocket/kibana:4.1.2' locally
4.1.2: Pulling from objectrocket/kibana

8a648f689ddb: Pull complete
6a9f09112d11: Pull complete
98c91eb0b06a: Pull complete
f5030fbbffc3: Pull complete
0a7a2d9eb5d6: Pull complete
1f9563800fc7: Pull complete
f43ab0bd66e0: Pull complete
Digest: sha256:352e95077d0312fa12de6cec3bc66d221391952b8cf98e890cd7324b6b6605ce
Status: Downloaded newer image for objectrocket/kibana:4.1.2
cc341ff14d492a30e106007896201639964bdef6a93d03d497957a2738f5ac24

更新 :Elasticsearch 2.0以降を実行している場合は、objectrocket / kibana:4.2.0(またはそれ以降)のイメージを使用する必要があります。

コンテナが作成されると、dockerpsの出力に表示されます。

$ docker ps
CONTAINER ID        IMAGE                 COMMAND                CREATED              STATUS              PORTS                    NAMES
cc341ff14d49        objectrocket/kibana   "/opt/kibana/run.sh"   About a minute ago   Up About a minute   0.0.0.0:5601->5601/tcp   kibana4

コンテナの実行で問題が発生した場合は、ELASTICSEARCH_URL変数を再確認し、URLの各部分が正しいことを確認してください。 @や:などの記号が付いたパスワードはURLスキームを壊す可能性があることにも注意してください。 docker logs kibana4を実行して、Kibanaがstdoutまたはstderrに送信したエラーメッセージを表示することもできます。

Kibana4に接続

これで、Dockerホストのポート5601(または前の手順で選択したポート)でKibana4に接続できるようになります。ローカルで実行している場合は、http:// localhost:5601を使用してください。 Docker Machineを実行している場合は、docker-machineipからDockerMachineVMのIPアドレスを使用します。 https://192.168.99.100:5601。

接続に成功したら、Elasticsearchインスタンスのインデックスを使用するようにKibanaを設定する必要があります。詳細については、ElasticのConnect KibanawithElasticsearchのドキュメントを参照してください。 Kibana 4の主な機能の詳細については、「Kibana入門ガイド」を読むこともできます。

まとめ

Kibanaでの視覚化の作成が完了したら、次のコマンドを実行してDockerコンテナを停止できます。

$ docker stop kibana4
kibana4

そして、次に接続したいときは、docker start kibana4を実行するだけで、準備が整います。

前述のように、ホストされているKibana 4は、Elasticsearch製品の提供に向けてすでに準備中ですが、Kibanaをローカルで実行すると、その間にすぐに開始できます。また、Kibanaはすべての構成をElasticsearchインデックスに保存するため、切り替え時に貴重なダッシュボードや視覚化を失うことはありません!


  1. FilebeatおよびElasticsearchIngestPipelinesを使用したcsvファイルの解析

    Elasticsearch 5の最も優れた新機能の1つは、ElasticsearchクラスターにLogstashスタイルの処理を追加する取り込みノードです。これにより、別のサービスやインフラストラクチャを必要とせずに、インデックスを作成する前にデータを変換できます。しばらく前に、Logstashを使用してcsvファイルを解析する方法について簡単なブログを投稿したので、比較のために、その取り込みパイプラインバージョンを提供したいと思います。 ここで紹介するのは、Filebeatを使用してデータを取り込みパイプラインに送信し、インデックスを作成し、Kibanaで視覚化する例です。 データ 無料

  2. FluentdとObjectRocketを使用したハイブリッドクラウドへのログイン

    この投稿はHartHooverとRyanWalkerが共同で作成したものです 最近、Rackspace DevOps Automationチームは、NewRelicからRackspaceサポートにアラートを送信するサービスを発表しました。これらのアラートは、DevOpsエンジニアが応答するためのチケットを生成するため、アラートが午前3時に生成されたときに、お客様はぐっすりと眠ることができます。お客様の環境について収集された他のデータポイントと組み合わせると、エンジニアは問題がどこにあるかを特定し、適切な行動方針を実行します。 このサービスのインフラストラクチャを設計しているときに、New