ELK收集Nginx日志并进行展示

文章目录

  • 前言
  • Elasticsearch
  • logstash安装
  • kibana安装
  • 设置用户密码
  • 参考

前言

前段时间服务器遭受到攻击,发现的时间比较晚,于是我转行做起运维。解决方案是代码里面加了日志跟踪,使用ELK(Elasticsearch+Logstash+Kibana)收集Nginx的日志作为监控。ELK在前东家的时候使用过,觉得还是挺好用的,现在自己尝试一下搭建起来。Nginx在docker上已经部署起来了,接下来是采用docker把ELK搭建起来。Elasticsearch在大数据分析的时候听的比较多,Logstash是负责收集Nignx日志然后推送到Elasticsearch,Kibana负责展示这些数据,接下来一起关注怎么把这三者搭建起来。

Elasticsearch

Elasticsearch在此不详细讲述了,网络上有很多详细的资料。我们一起关注下通过docker怎么搭建Elasticsearch,dockerhub的官网:https://hub.docker.com/_/elasticsearch。具体的操作步骤如下:

  1. 拉取镜像:docker pull Elasticsearch
  2. 修改虚拟内存区域大小:sysctl -w vm.max_map_count=262144
  3. 修改elasticsearch.yml文件如下:
cluster.name: "docker-cluster"
network.host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: "*"

这里要特别注意一点是:key: value冒号和value中间是有空格的!!!

  1. 启动Elasticsearch服务,并挂载目录。
docker cp elasticsearch:/usr/share/elasticsearch/data /data/elk7/elasticsearch/
docker cp elasticsearch:/usr/share/elasticsearch/logs /data/elk7/elasticsearch/
chmod 777 -R /data/elk7/elasticsearch/

docker rm -f elasticsearch
docker run -d --name=elasticsearch \
  --restart=always

你可能感兴趣的:(#,系统安全,运维,elk,nginx)