Elastic Stack5.2でMetricbeatのダッシュボードを作って可視化してみた #elasticsearch
AWSを仕事で触れるようになって、色々試し始めてるので備忘録的に記載します。
Elastic Stackは、現在の業務を飛躍的に楽にしてくれると期待しているので、
社内でステマしまくって、何とか来期予算を少しだけ確保できましたので、
みっちり触っていこうと思ってます。
殆ど以下の記事を参考にしました。
acro-engineer.hatenablog.com
LogstashやBeatsで色んなサーバからログを集約して、Kibanaで一元的に可視化する方法とか
まだ全然わかってませんが、大事な1歩です。
↓これ。
Open JDKのアンインストール
Amazon Linuxには初期状態でOpenJDK7がインストールされているので、
Oracle JDK8にアップデートします。(Open JDK8でも問題ありません)
$ sudo yum remove -y java
Oracle JDKのインストール
Oracle JDKは以下のURLからあらかじめDLし、SCPでEC2インスタンスに転送しました。
この後出てくる各種インストーラも同じです。
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
$ rpm -ivh jdk-8u121-linux-x64.rpm
インストールが完了したら以下のコマンドで、Javaのバージョンを確認。
$ java -version java version "1.8.0_121" Java(TM) SE Runtime Environment (build 1.8.0_121-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
Elasticsearchのインストール
yumでインストールするのが普通ですが、rpm版でインストールしてみました。
インストーラは以下のURLでDLできます。
https://www.elastic.co/jp/downloads/elasticsearch
以下のコマンドでインストール。
$ rpm -ivh elasticsearch-5.2.0.rpm
Kibanaのインストール
インストーラ
https://www.elastic.co/downloads/kibana
$ sudo rpm -ivh kinbana-5.2.1-x86_64.rpm
アクロクエストさんの記事でもある通り、Kibanaのネットワーク設定を行います。
$ sudo vi /etc/kibana/kibana.yml
開いたファイルに以下の設定を追加。
server.host: "0.0.0.0"
そしてElasticsearch、Kibanaを実行。
$ sudo service elasticsearch start $ sudo service kibana start
t2.nanoだと実行できなかったのである程度メモリが必要だと思われます。
(※どこでメモリ量指定してるか分からず)
起動したら以下のURLをたたいてKibanaの画面が表示されれば成功です。
http://<作ったインスタンスのIP>:5601
Metricbeatのインストール
インストーラ
https://www.elastic.co/downloads/beats/metricbeat
インストール実行
$ sudo rpm -ivh metricbeat-5.2.1-x86_64.rpm
起動
$ sudo service metricbeat start
Metricbeatのダッシュボードをインストール
データを流すのが簡単なだけでなく、可視化するのも簡単なのがElasticスタックの利点。
Metricbeatからのデータを可視化するためのダッシュボードがすでに用意されています。
$ cd /usr/share/metricbeat/scripts $ sudo ./import_dashboards
Kibanaでインストールしたダッシュボードを見てみる。
画面左の「Dashboard」をクリックして、画面右上の「Open」をクリックします。
Metricbeat system overviewを選択するとこんな感じにしてくれます。
ダッシュボード上の「System Navigation」でCPU選ぶとこんな感じ。
メモリ
プロセス
いやあ、可能性に満ち溢れてます。
今はCPU使用率をモニタリングするのに、作業依頼を起票しないといけませんからね!!w
Elastic Stackがあれば、誰でもいつでも好きな時に好きなサーバのリソース状況を見ることができますね!