ドッカーELKログ解析システムを構築するために使用:ドッカーは、(X)の注意事項

一定の期間がELK気にしませんでした(ログ転送、変換、kibanaのために使用することができます - - - 、検索エンジンは、インデックスのログを格納するために使用することができますlogstashをelasticsearchを、WebUIの可視化をログ)、7.4の最新バージョンを持っていることが分かりました。なぜ忙しいプログラマーを聞かないのですか?残業は、新しいフレームワークを学ぶではありませんので。

この記事では、迅速ドッカーELKログ分析システムを構築する方法を使用してコンパイル。

1.展開ヘラジカ

githubの上ではコンフィギュレーション、直接ダウンロードを展開ドッキングウィンドウのコンを使用ヘラジカのセットを終えました。

gitのクローンhttps://github.com/deviantony/docker-elk.git

 

あなたはgitのない場合は、それをインストールします(yum install git)、または直接、githubのリポジトリソースパッケージをダウンロードしてください。

 

これは、現在のバージョン7.2.1(カタログで定義さ.envファイルドッカー、ヘラジカを修飾することができる)に基づいています。

 

適切な設定を調整します。

 

ドッキングウィンドウ-COMPOSEを変更し、設定したパスワードは、ES、

ドッカー-compose.yml Vimの

環境変数ではelasticsearch部分が提供され、ヒープメモリのJVMが1グラムに増加し、ユーザーのパスワードは、ESに弾性提供される
:環境
ES_JAVA_OPTS:「-Xmx1G -Xms1g」
ELASTIC_PASSWORD:PASSW0RD

デフォルトlogstashからポートマッピングを5000後者は変更できない、filebeatを使用するので、5044に、対応するライン
ポート:
- 「5044:5044」
- 「9600:9600」

#が少しメモリJVMが増加するであろう
:環境
LS_JAVA_OPTS:「-Xmx512m -Xms512mを「

#の量の増加は、データディレクトリのESの一部をマウントするには、データの永続化のために、データの損失は、コンテナの破壊を避けるES
:ボリューム
を/ mnt /エルク/ esdata:は/ usr /レポートこのコンテンツ共有/ elasticsearch /データ-を

注意:コンテナ内のESは永続的なデータディレクトリがマウントされたときにそうすることのプロセスを開始するelasticsearchユーザーであるため、ディレクトリのパーミッションを設定する必要がある、またはそこへのアクセスはありませんし、失敗したために開始します。elasticsearch UIDが1000である、あなたは1000人のユーザのUIDを構築することができ、ディレクトリの所有者は、ユーザーを与えます。

 

エス設定ファイルを変更し、裁判はxpack基本、プレミアム機能が無効になってから変更されました

vimのelasticsearch /設定/ elasticsearch.yml 

#のxpack.license.self_generated.type:トライアル
xpack.license.self_generated.type:基本

 

Logstashは、ESの設定ファイル、設定、ユーザー名とパスワードを変更します

vimのlogstash /設定/ logstash.yml 

xpack.monitoring.elasticsearch.username:弾性
xpack.monitoring.elasticsearch.password:PASSW0RD

 

logstashを変更するためのパイプライン構成

vimのlogstash /パイプライン/ logstash.conf 

这里コーデック根据具体情况配置
入力{
ビート{
ポート=> 5044
コーデック=> "JSON"
}
}
#あなたのフィルタを追加/ここlogstashプラグインの設定
出力{
elasticsearch {
ホスト=>「elasticsearch :9200"
インデックス=> "%{[メタデータ@] [ビート]} - %{[メタデータ@] [バージョン]} - %{+ YYYY.MM.DD}"
ユーザ=> "弾性"
パスワード=>「PASSW0RD "
}
}

 

構成設定のパスワードESを変更Kibana

vimのkibana /設定/ kibana.yml 

#のX-パックのセキュリティ資格情報は
elasticsearch.username:弾性
elasticsearch.password:PASSW0RDを

 

配置调整后,使用 docker-compose up -d 即可启动es,logstash,kibana三个容器。第一次启动需要下载所有镜像,会比较慢,启动完后,访问 elk所在服务器IP:5601即可进入kibana页面。

这里默认是起一个es容器,如果想起多个,参考: https://github.com/deviantony/docker-elk/wiki/Elasticsearch-cluster

 

2. 部署filebeat

filebeat部署在产生日志的服务器上。先下载镜像,

docker pull docker.elastic.co/kibana/kibana:7.3.1

 

下载一个示例配置文件

curl -L -O https://raw.githubusercontent.com/elastic/beats/7.3/deploy/docker/filebeat.docker.yml

 

修改配置文件

vim filebeat.docker.yml

filebeat.config:
modules:
path: ${path.config}/modules.d/*.yml
reload.enabled: false

#filebeat.autodiscover:
# providers:
# - type: docker
# hints.enabled: true

#processors:
#- add_cloud_metadata: ~
#- add_host_metadata: ~

filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/elk/*.log

output.logstash:
hosts: ["你的elk服务器IP:5044"]

 

去掉了一些不必要的配置,基本就是一个input, 一个output。input paths部分配置你日志所在目录,注意这里是容器内的目录,真正服务器的日志目录需要在启动容器时挂载到这里配置的目录。

启动容器

docker run -d --name filebeat --user=root -v $(pwd)/filebeat.docker.yml:/usr/share/filebeat/filebeat.yml:ro \
-v /mnt/logs/elk/:/var/log/elk/ docker.elastic.co/beats/filebeat:7.3.1 filebeat -e -strict.perms=false

 

对配置文件及实际日志目录与容器日志目录进行了挂载。

启动成功后,对应目录下的日志就会通过filebeat,logstash传输到es,进入kibana对日志数据建立索引进行查询了。

 

3. 总结

前面用elk来搭建日志分析系统还是5.1版,两年时间已到7.4,配置方式,包括UI风格都做了很大的调整,很有一种人间一年,技术圈十载的感觉。
本文整理了基于Docker来搭建ELK框架的整个过程,供参考。


—————————————————————————————
作者:空山新雨
欢迎关注我的微信公众号:jboost-ksxy (一个不只有技术干货的公众号)

 

おすすめ

転載: www.cnblogs.com/spec-dog/p/11489838.html