ubuntu18 docker中部署ELK
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了ubuntu18 docker中部署ELK,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2860字,纯文字阅读大概需要5分钟。
内容图文
ELK是ElasticSearch、Logstash、Kibana的简称,一般用于日志系统,从日志收集,日志转储,日志展示等入手,用以提供简洁高效的日志处理机制。
鉴于没有额外的机器,这里就用docker来简单模拟下一个简单ELK系统的部署和使用。
搭建ElasticSearch
新建elasticsearch目录,并再其下新建文件config/elasticsearch.yml,文件内容如下:
network.host: 0.0.0.0 xpack: ml.enabled: false monitoring.enabled: false security.enabled: false watcher.enabled: false
?
在ubuntu 主机配置vm.max_map_count参数(永久生效):
vi /etc/sysctl.conf #修改vm.max_map_count = 262144 sysctl -p
(一次生效):sysctl -w vm.max_map_count=262144
2.在elasticsearch 文件夹下执行
docker pull docker.elastic.co/elasticsearch/elasticsearch:6.4.3 docker run --rm -it -p 9200:9200 -p 9300:9300 -v "$PWD"/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml docker.elastic.co/elasticsearch/elasticsearch:6.4.3
同时其他配置文件也可以写在config文件下,同时映射进容器中;至此elasticsearch安装完成。
?
二、安装Logstash
新建logstash文件夹,并在其下新建config、pipeline两个文件夹
其中config文件夹下有文件logstash.yml、pipelines.yml。内容分别为:
logstash.yml:
config: reload: automatic: true interval: 3s xpack: management.enabled: false monitoring.enabled: false
pipelines.yml:
- pipeline.id: test path.config: "/usr/share/logstash/pipeline/logstash-test.conf"
然后pipeline文件夹下有文件logstash-test.conf,内容为(192.168.100.3 是我ubuntu的主机ip):
input { file { path => ["/usr/share/logstash/pipeline/logs/test.log"] start_position => "beginning" } } filter { mutate { gsub => ["message", "\r", ""] } dissect { mapping => {"message" => "%{date} %{+date} [%{task} %{+task}] [%{type}] %{class} - %{info}"} } } output { elasticsearch { hosts => ["192.168.100.3:9200"] } stdout { codec => rubydebug } }
最后在logstash文件夹下运行命令:
docker pull docker.elastic.co/logstash/logstash:6.4.3 docker run --rm -it -v "$PWD"/pipeline/:/usr/share/logstash/pipeline/ -v "$PWD"/config/:/usr/share/logstash/config/ docker.elastic.co/logstash/logstash:6.4.3
在输入中:输入的日志文件使用/usr/share/logstash/pipeline/logs/test.log,只需将日志文件放入pipeline/logs/下,或者手动映射进容器即可。另外输入文件路径支持模糊匹配。
在过滤器中定义了去掉消息中的换号符号,以及定义了消息格式。这里的消息格式自定义方法参阅:https://www.elastic.co/guide/en/logstash/6.4/filter-plugins.htm
安装kibana
新建kibana文件夹,并在其下新建config/kibana.yml文件,内容如下:
server.host: "0.0.0.0" elasticsearch.url: http://192.168.100.3:9200xpack: apm.ui.enabled: false graph.enabled: false ml.enabled: false monitoring.enabled: false reporting.enabled: false security.enabled: false grokdebugger.enabled: false searchprofiler.enabled: false
最后在kibana文件夹下运行命令:
docker pull docker.elastic.co/kibana/kibana:6.4.3 docker run --rm -it -p 5601:5601 -v "$PWD"/config/kibana.yml:/usr/share/kibana/config/kibana.yml docker.elastic.co/kibana/kibana:6.4.3
运行结果:
?
当然安装也可以用 caas/docker-elk 一键搞定
参考文章 :
https://www.cnblogs.com/hackyo/p/9951684.html
https://www.jianshu.com/p/b81e1b7c0efb
http://chenzhijun.me/2017/12/27/elk-docker/
https://blog.csdn.net/Marksinoberg/article/details/87434155
原文:https://www.cnblogs.com/majiang/p/11347490.html
内容总结
以上是互联网集市为您收集整理的ubuntu18 docker中部署ELK全部内容,希望文章能够帮你解决ubuntu18 docker中部署ELK所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。