本シリーズのトップページ |
---|
https://qiita.com/robozushi10/items/68dc5f8c2df38f160fda |
はじめに
職場1 で「CI/CD ログ」や「CLI および Webアプリログ」の収集と可視化の導入の話が出てきた.
また、自宅で K8s の学習をする中で Fluentd という単語が頻繁に出てきていた.
そこで自宅の Ubuntu 18.04 マシンで docker-compose を用いて、
下図・下表のような Elasticsearch + Fluentd + Kibana (EFK) 環境を構築して検証し、
これらソフトの知見を得ることにした.
本項では以下を記す.
・docker-compose.yml を使って下図の立ち上げるための手順
構成
図
表
No | サービス | ホスト側ポート | コンテナ側ポート | 備考 |
---|---|---|---|---|
1 | Nginx | 21337 | 80 | 採用バージョン v1.20.0. Fluentd のテストのために導入しているだけである. 本表 No 2 の Fluentd(24224) へログを配送する. |
2 | Fluentd | 24224 | 24224 | 採用バージョン v1.13.1. 受信したログを本表 No 3 の Fluentd(34224)へ転送する. |
3 | Fluentd | 34224 | 34224 | 採用バージョン v1.13.1. 受信したログを Elasticsearch へ書き込みする. |
4 | Elasticsearch | 29200 | 29200 | 採用バージョン v7.14. ログ格納のためのデータストア. 日本語検索をするための analysis-kuromoji 導入あり. |
5 | Kibana | 29601 | 29601 | 採用バージョン v7.14. Elasticsearch の視覚化 |
留意次項
次の設定は職場環境を想定したためである.
・Fluentd を 2つ配置していること
・Elasticsearch のコンテナ側ポートを 9200 以外にしていること.
・Kibana のコンテナ側ポートを 5601 以外にしていること.
手順
1. GitHub からタグ「Qiita-02」を指定して clone する
$ git clone -b Qiita-02 git@github.com:robozushi10/qiita-efk.git
2. Dockerイメージビルドとコンテナ起動を行う
$ cd qiita-efk
$ docker-compose build --no-cache
$ docker-compose up -d
3. Kibana にアクセスする
上記 2 でのコンテナ起動が完了するまで (4分間ほど) 待機してから
次の URL にアクセスして Kibana の Dev Tools が起動していれば OK.
・http://localhost:29601/app/dev_tools#/console
以上
参考書籍およびサイト
書籍 |
---|
nginx実践入門 |
「Docker/Kubernetes 実践コンテナ開発入門 山田 明憲」 |
データ分析基盤構築入門[Fluentd,Elasticsearch,Kibanaによるログ収集と可視化] |
検索だけじゃない Elasticsearch 入門+ |
URL | 一言 |
---|---|
https://qiita.com/sanyamarseille/items/1c4c31547502791ecac6 | |
https://www.elastic.co/guide/en/elastic-stack-get-started/current/get-started-docker.html | |
https://qiita.com/suzuki_y/items/6365799485fa3973b916 | |
https://qiita.com/sugikeitter/items/f3b2c57bf8bbdc47a8bc | |
https://github.com/sugikeitter/elasticsearch-kibana-docker/blob/master/docker-compose.yml | |
https://gitya107.hatenablog.com/entry/2018/06/15/170334 | |
http://ittoo.jugem.jp/?eid=737 | |
https://qiita.com/kaibadash@github/items/9cfb532696dc8711e408 | 日本語検索を可能にする |
https://qiita.com/mserizawa/items/8335d39cacb87f12b678 | 日本語検索を可能にする |
https://github.com/deviantony/docker-elk | ELK を構築するための docker-compose が公開されている |
https://dev.classmethod.jp/articles/es-01/ | index, document, type の説明が簡潔に RDMS に例えられていて良かった |
http://www.tech-joy.work/article/a20180527115811.html | /etc/elasticsearch/elasticsearch.yml の記述例と説明あり |
https://qiita.com/Esfahan/items/3c07bfbb57c7098e9531 | 3台に Elasticsearch を導入した場合の手順あり |
-
オンプレ環境での組込み機器開発向け DevOps 業務 ↩