あきろぐ

いろいろめもするよ

elasticsearch+logstash+grafanaを試してみるよ1(インストール編)


今回は、twitterプラグインを用いて取得したログをLogstashで加工しElasticsearchに保存した後、Grafanaで可視化するところまでやりたいと思います。

環境

  • CentOS7.6
  • Grafana6.16
  • Elasticsearch5.6.16
  • Logstash5.6.16

インストール

Java確認&インストール

Logstashを使うにはJava8が必要なので、事前にJava8が入っているか確認します。

java -version

CentOS7はデフォルトでjava8が入っていないので、インストールします。
今回はOpenJDKのディストリビューションを使います。
※現在サポートされているのはjava8のみなので、他のバージョンが入っていた場合は、バージョン変更を実施してください。

#java8のインストール
$ sudo yum -y install java-1.8.0-openjdk
#javaのバージョン確認
$ java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)

ElasticsearchとLogstashのインストール

続いて、ElasticsearchとLogstashをインストールしていきます。
yumでインストールする場合、公開署名キーをインポートする必要があります。

$ rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

その後、/etc/yum.repos.d/配下にrepoファイルを新規で作成します。
repoファイル名は何でも良いらしいですが、今回はドキュメントと同様"logstash.repo"ファイルとして作成します。

$ vi /etc/repos.d/logstash.repo
[logstash-5.x]
name=Elastic repository for 5.x packages
baseurl=https://artifacts.elastic.co/packages/5.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

repoファイルを作成したら、ElasticsearchとLogstashをインストールします。

$sudo yum -y install elasticsearch
$sudo yum -y install logstash

www.elastic.co

サービスの自動起動設定

インストールが完了したら、サービスの自動起動設定を行います。
設定したらサービスのステータスが「enabled」になっていることを確認しましょう。

#サービス自動起動の設定
$ sudo systemctl enable elasticsearch
$ sudo systemctl enable logstash
#確認
$ systemctl list-unit-files  -t service
elasticsearch.service                         enabled
logstash.service                              enabled

Twitterプラグインのインストール

今回はTwitterプラグインを使ってみますが、他のプラグインを使ってみたい方はLogstashで使用できるプラグインが下記リンクに書かれているので、インプットしたいデータソースがあるか確認してください。
コマンドでもLogstashで使用できるプラグイン確認できますよ。

#プラグイン一覧
 /usr/share/logstash/bin/logstash-plugin list

www.elastic.co

プラグインのインストール方法は下記リンクを参考にしました。
少しインストールに時間がかかるので焦らず待ちましょう。
「Installation successful」が表示されて入ればOKです!

#twitterプラグインをインストール
$ /usr/share/logstash/bin/logstash-plugin install logstash-input-twitter
OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N
Validating logstash-input-twitter
Installing logstash-input-twitter
which: no javac in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
Installation successful

www.elastic.co

今回はここまで~('ω')ノ

参考文献

今回のインストール方法等は下記の書籍を参考にしました。
Elasticのドキュメントは英語なので、少ししんどい・・・と思う方や初心者の方におすすめですよ。