FluentdとElasticsearchとKibanaにまとめて入門

スポンサーリンク

はじめに

ElasticsearchとKibanaに入門したかったけどなかなか取っ付き難くて途方にくれていたところ、とてもわかりやすくまとめてくださっているサイトに遭遇したので試してみました。

ありがたいことにFluentdにも触れられているので、各versionと構成を変更して少し遊んでみました。

自分用のメモとして残しておきます。

参考にさせていただいたサイト

Fluentdも含めてわかりやすくまとめられたサイト

以下ElasticsearchとKibanaを7.2に変えるために参考にした公式サイト

Elasitcsearchのdockerでのinstall

Elasticsearchのbootstrap-checkについて

Kibanaのdockerでのinstall

やったこと

以下2つのEC2を用意しました。

①はt2.smallのubuntu18.04、②はt2.xlargeのubuntu18.04を使用しました。

この内容でt2.xlargeってやりすぎな気がするけど試した後即消ししたのでそんなにお金は掛かってない。2ドルくらいです。

①nginxとFluentd

②Fluentd、ElasticsearchとKibana

①が送信側、②が受信側

①のprivateipは192.168.10.10

②のprivateipは192.168.10.11

①のnginxにcurl叩いて②に転送されたnginxログをElasticsearchのログ解析使ってstatusコード200と404の比率を見るところまでやりました。

①の構成

docker-compose.yaml

nginx/logはchmod 777してあげる(大事)

nginx/config/nginx.confとnginx/html

参考サイトまんまなので割愛。

fluent.conf

match nginxにある@type stdoutは確認用なのでなくてもOK。

これがあるとdocker-compose logs -f fluentdで転送したか確認できて楽。

②の構成

docker-compose.yaml

fluentd/Dockerfile

gem install部分は公式参照。

USER rootがないとビルド時にエラー吐いてしまった。

fluentd/config/fluent.conf

動作確認

docker-compose up -dで①②双方を起動します。

docker-compose logs -f fluentdで双方ともログ確認しておきます。ちゃんとログ転送されてるか確認しておくと後が楽です。

①の送信側でcurl http://127.0.0.1:8090を何回か打って双方にログが出力されればOK。

ついでに存在しない curl http://127.0.0.1:8090/aaaaa にも何回かアクセスして404を稼いでおきます。

Kibanaにアクセス(※chrome推奨)します。

http://②のpublicip:5601

歯車からElasticsearchのIndex Managementをクリックしてnginx.access-2019.07.20があることを確認します。(実行した日の日付になります)

KibanaのIndex Patternsをクリック。

Create index patternをクリック。

Index patternに「nginx.access-*」を設定。Success!と出るはずなのでNext stepをクリック。

Time Filter field nameを「@timestamp」にしてCreate index patternをクリック。

完了後、VisualizeからCreate new visualizationをクリックしてTimelionを選択。アクセスが来ていることを確認します。

もう一度VisualizeからCreate new visualizationをクリックして今後はPieを選択。

「nginx.access-*」を選択。

MetricsのSlice SizeからAggregationをCount。

BucketsのSplit SlicesからAggregationをTerms、Fieldをstatus.keywordに選択して上の方にある再生ボタンをクリックすると、status比率が表示されます。やったね。

↓クリックすると画像が大きくなります(ここだけ)

最後に

あんなにわかりやすいサイトを参考にしたのに結構ハマりましたw

・Fluentdのログ転送にハマる(AWSのセキュリティグループ開けてなかったorz)

・Kibana7.2にしたらなぜかEdgeでアクセス出来なくてハマる(Chromeで普通にアクセスできたorz)

などなど。それでもFluentd、ElasticsearchとKibanaを触れたので苦手意識はなくなったかな。

関連コンテンツ



シェアする

  • このエントリーをはてなブックマークに追加

フォローする