0
点赞
收藏
分享

微信扫一扫

一文带你了解ELK部署+多日志监控

夏木之下 2022-03-23 阅读 81

如果系统出问题 研发第一个找的就是运维,问你要各种日志,以前上服务器拉日志,太俗。

今天换个新姿势 走上自动化运维的重要一步日志监控.

ELK 是(Elasticsearch+Logstash+Kibana 外+Filebeat)

工作机制 :F (filebeat)负责日志的收集(input)-->然后把日志吐给L(logstash)(output)-->让后给ES(elasticsearch)-->K(kibana)负责展示

这里多说一点 Logstash 和 Filebeat 两弟兄其实他们两个都可以完成input日志和output日志,但是L运行机制比较大占用内存大,擅长于文件处理所以收集不是他的强项,F架构原因更加轻量化,灵活收集日志是把好手打个比喻:

垃圾车也能直接让你把垃圾扔车上带走,但他动静大,环卫工人动静小,更敏捷。

好的前言结束上干货

自然是离线部署最合适不管你是否有网络通吃O(∩_∩)O哈哈~

下载安装包:

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.2.0-linux-x86_64.tar.gz
wget https://artifacts.elastic.co/downloads/logstash/logstash-7.2.0.tar.gz
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.2.0-linux-x86_64.tar.gz
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.2.0-linux-x86_64.tar.gz

解压安装包:

tar -xzf elasticsearch-7.2.0-linux-x86_64.tar.gz
tar -xzf logstash-7.2.0.tar.gz
tar -xzf kibana-7.2.0-linux-x86_64.tar.gz
tar -xzf filebeat-7.2.0-linux-x86_64.tar.gz

创建用户

启动elasticsearch和kibana 要求以非root用户启动

groupadd elk

useradd elk -g elk

chown -R elk:elk elasticsearch-7.2.0

chown -R elk:elk kibana-7.2.0-linux-x86_64

部署elasticsearch

创建elasticsearch的数据目录和授权

mkdir -pv /data/elk/{data,logs}

chown -R elk:elk /data/elk/

进入elasticsearch.yml所在目录

编辑配置文件  

然后保存退出

使用刚才建立的用户登录启动ES

su - elk

cd elasticsearch-7.2.0

nohup bin/elasticsearch &

如果启动失败请查看日志,根据日志提示对应的修改问题(跟着我做下来不会有问题的)

tail -f nohup.out 

验证一下:

curl 127.0.0.1:9200

如果你看到这个界面 那么 到此ES已经部署完成

logstash部署

进入root模式

cd logstash-7.2.0/

cp config/logstash-sample.conf ./

nohup bin/logstash -f logstash-sample.conf & 

同理查看是否启动如果有问题查看

tail -f  nohup.out 

根据提示处理问题

ps -ef |grep logstash

看到如图表示启动成功

kibana部署

使用elk账号模式

su - elk
cd kibana-7.2.0-linux-x86_64
vim config/kibana.yml
修改host,这样可以在其他机器上的浏览器,用ip+端口去访问kibana
server.host: "0.0.0.0"


记得使用elk用户启动kibana
nohup bin/kibana &

启动后默认端口使用5601(记得放行端口)

在浏览器里,输入ip:5601 访问成功即代表启动成功

到此kibana安装成功

filebeat部署

进入filebeat所在目录编辑filebeat.yml文件

 修改箭头指向的地方下面我是我配置多文件的 不用管

 

到此完成配置

启动filebeat

nohup ./filebeat -e -c filebeat.yml &

到此所有部署完成

接下里如何查看日志

跟着我的步骤创建索引1

 步骤2

 

步骤3

选择一个索引 我这里是添加了多个 如果第一次你进来会显示一个默认的选择就好了

 对应操作

 然后

 创建完成后 点击 如图

 选择对应的索引就可以看到你的日志了 

到这里就完成了基本的ELK 监控查询

 在我们日常的工作中其实需要查看的日志并不是一个。经常是多日志例如 nginx  tomcat,和项目模块应用,那么接下来我们处理多日志检测的问题那我们继续往下走

接下里我们以nginx 和tomcat 为例子监控两个日志

环境准备你安装好nginx  和tomcat

nginx 做个日志format

 log_format access_json '{"@timestamp":"$time_iso8601",'
                           '"host":"$server_addr",'
                           '"clientip":"$remote_addr",'
                           '"size":$body_bytes_sent,'
                           '"responsetime":$request_time,'
                           '"upstreamtime":"$upstream_response_time",'
                           '"upstreamhost":"$upstream_addr",'
                           '"http_host":"$host",'
                           '"url":"$uri",'
                           '"domain":"$host",'
                           '"xff":"$http_x_forwarded_for",'
                           '"referer":"$http_referer",'
                           '"status":"$status"}';
    access_log  /opt/tengine/logs/access.log  access_json;

然后看到的日志就比较舒服一些了

接下来配置filebeat的日志文件

进入filebeat的配置文件目录

这个地方也就是我们最开始配置需要监控的日志的目录只是这里我们需要监控的日志是两个,如果在需要加只需要多配置一个就可以了 详情如下: 

 

- type: log
  enabled: true
  backoff: "1s"
  tail_files: false
  paths:
    - /opt/tengine/logs/access.log
  fields:
    filetype: logjson
  fields_under_root: true
- type: log
  enabled: true
  backoff: "1s"
  tail_files: false
  paths:
    - /opt/apache-tomcat-8.5.56/logs/catalina.2022-03-23.log
  fields:
    filetype: logsystem
  fields_under_root: true
然后 进入logstash安装目录

编辑logstash-sample.cnf文件

 配置如下:

 

 到这里 配置就完成了 

更改了 配置文件的都需要重启 

重启 filebeat  logstash 两个模块 重启前记得先kill 掉之前的进程

然后就能看到

安装之前的方法添加了索引后 就能查看日志了

 

选择其中一个 看看日志效果 或者你刷新下nginx 

这里就是最新的nginx 日志了

其实在logstash 中还有很多骚操作,例如切分日志,希望我们一起研究吧。

如果您看到这里 希望你有所搜获,共同分享共同学习

                                                     -----彩币运维

                                                                      2022年3月23日

举报

相关推荐

0 条评论