ELK之Kibana入门及使用

Kibana入门及使用

  • 一、Kibana介绍
  • 二、Kibana安装与配置
  • 三、Kibana的使用
    • 实验一:绘制访问量统计图
    • 实验二:绘制垂直条形图、饼图
    • 实验三:创建仪表板来显示各类指标
  • 四、Kibana监控
    • 1.使用kibana的默认监控——单机模式
    • 2.使用kibana的metricbeat监控——集群模式
      • 1.启用xpack安全验证
      • 2.连接Kibana
    • 3.kibans节点日志采集插件——filebeat

一、Kibana介绍

Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索、查看交互存储在Elasticsearch索引中的数据。使用Kibana,可以通过各种图表进行高级数据分析及展示。

Kibana让海量数据更容易理解。它操作简单,基于浏览器的用户界面可以快速创建仪表板(dashboard)实时显示Elasticsearch查询动态。

设置Kibana非常简单。无需编码或者额外的基础架构,几分钟内就可以完成Kibana安装并启动Elasticsearch索引监测。

二、Kibana安装与配置

注意:ELK三个部分生产环境中是分布式部署的,由于单机电脑配置的原因,无法再开启虚拟机,因此将kinana部署在server5上。此前server5上已经部署了logstash。

下载地址:https://elasticsearch.cn/download/

(1)Kibana安装

root@server5 ~]# rpm -ivh kibana-7.6.1-x86_64.rpm 

(2)Kibana主文件配置

# vim /etc/kibana/kibana.yml
  2 server.port: 5601                                    //服务端口
  7 server.host: "0.0.0.0"                                //监听本机所有端口
 25 server.name: "server5"                                //服务名称(可选)
 28 elasticsearch.hosts: ["http://172.25.254.2:9200"]    //ES集群地址
115 i18n.locale: "zh-CN"                                    //语言改成中文

(3)打开服务,并了解服务端口

# systemctl enable --now kibana.service 
 
查看端口:
[root@server5 kibana]# netstat -antlp |grep 5601
tcp        0      0 0.0.0.0:5601            0.0.0.0:*               LISTEN      3589/node           

三、Kibana的使用

实验一:绘制访问量统计图

(1)导入数据/创建索引
ELK之Kibana入门及使用_第1张图片
ELK之Kibana入门及使用_第2张图片
根据时间戳创建索引
ELK之Kibana入门及使用_第3张图片
(2)绘制可视化图形
ELK之Kibana入门及使用_第4张图片
当然也可以把创建的可视化图形保存起来
ELK之Kibana入门及使用_第5张图片

实验二:绘制垂直条形图、饼图

ELK之Kibana入门及使用_第6张图片
我们向172.25.254.5的index.html页面打一些流量:

[root@westos_student50 Desktop]# ab -c1 -n100 http://172.25.254.5/index.html
[root@server3 elasticsearch]# ab -c1 -n100 http://172.25.254.5/index.html

下图展示了,将数据访问量前五的ip以垂直条形图的形式展现出来:
ELK之Kibana入门及使用_第7张图片
ELK之Kibana入门及使用_第8张图片
饼图也是如此:
ELK之Kibana入门及使用_第9张图片

实验三:创建仪表板来显示各类指标

刚刚创建了很多图,这些图很直观也很方便观看,但是这么多可视化需要一个仪表板来做一个统一的展示
ELK之Kibana入门及使用_第10张图片
ELK之Kibana入门及使用_第11张图片
ELK之Kibana入门及使用_第12张图片

ELK之Kibana入门及使用_第13张图片
当然,我们在实际的生产环境中可以全屏,狂拽酷帅,按F11即可进入/退出全屏。ELK之Kibana入门及使用_第14张图片

再次,我们可以设置仪表盘上数据的刷新时间(当然可以手动刷新)
ELK之Kibana入门及使用_第15张图片

四、Kibana监控

1.使用kibana的默认监控——单机模式

ELK之Kibana入门及使用_第16张图片
ELK之Kibana入门及使用_第17张图片
可以查看当前ELK集群中每个节点的各种监测数据和节点状态。
ELK之Kibana入门及使用_第18张图片

2.使用kibana的metricbeat监控——集群模式

1.启用xpack安全验证

(1)集群模式需要先创建证书——在master节点上执行:

在server2上执行:创建证书
# cd /usr/share/elasticsearch/
# bin/elasticsearch-certutil ca
# bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
# cp elastic-certificates.p12 elastic-stack-ca.p12 /etc/elasticsearch
# chown elasticsearch elastic-certificates.p12 elastic-stack-ca.p12

将证书复制到集群中其他节点(server3/4),并更改权限
# scp elastic-certificates.p12 [email protected]:/etc/elasticsearch/
# scp elastic-certificates.p12 [email protected]:/etc/elasticsearch/
在server3/4上执行
# chown elasticsearch /etc/elasticsearch/elastic-certificates.p12       

加粗样式置所有的elasticsearch集群节点:
此处一定要注意,修改的是yml文件,一定要注意缩进!!!

# vim /etc/elasticsearch/elasticsearch.yml
在最后添加以下内容 注意一定要注意缩进!!!!
    xpack.security.enabled: true
    xpack.security.transport.ssl.enabled: true
    xpack.security.transport.ssl.verification_mode: certificate
    xpack.security.transport.ssl.keystore.path: /etc/elasticsearch/elastic-certificates.p12
    xpack.security.transport.ssl.truststore.path: /etc/elasticsearch/elastic-certificates.p12

(2)完成后重启ES集群所有节点的服务:

在server2/3/4上执行
#systemctl restart elasticsearch.service 

(3)ES集群重启正常后,设置用户密码:(交互式的生成密码,否则,将会是自动生成密码auto)

# /usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive

这里需要设置各种服务的密码,统一都设置成westos,方便管理:

ELK之Kibana入门及使用_第19张图片
ELK之Kibana入门及使用_第20张图片
但此时,elasticsearch-head就不能访问了,
ELK之Kibana入门及使用_第21张图片
所以 设置Logstash连接ES用户密码:

# vim /etc/logstash/conf.d/grok.conf
  1 input {
  2         file {
  3                 path => "/var/log/httpd/access_log"
  4                 start_position => "beginning"
  5         }
  6 }
  7 
  8 filter {
  9       grok {
 10         match => { "message" => "%{HTTPD_COMBINEDLOG}" }
 11       }
 12     }
 13 
 14 output {
 15         stdout {}
 16         elasticsearch {
 17         hosts => ["172.25.254.2:9200"]
 18         index => "apachelog-%{+YYYY.MM.dd}"
 19         user => "elastic"  ###在此处设置用户名和密码
 20         password => "westos"
 21         }
 22 }          

添加head访问:设置完成后重启ES

# vim /etc/elasticsearch/elasticsearch.yml 
 66 http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
 
# systemctl restart elasticsearch.service 
 
浏览器访问ES-head
http://172.25.254.2:9100/?auth_user=elastic&auth_password=westos

ELK之Kibana入门及使用_第22张图片

2.连接Kibana

第一步:设置kibana连接ES的用户密码

Kibana在连接es的时候有一个专属的用户:

# vim /etc/kibana/kibana.yml
 46 elasticsearch.username: "kibana"
 47 elasticsearch.password: "westos"

第二步:重启kibana

systemctl restart kibana.service 

第三步:登录kibana

用户名为:elastic ;密码为:westos。次用户具有最高权限。
ELK之Kibana入门及使用_第23张图片
ELK之Kibana入门及使用_第24张图片
第四步:设置Metricbeat监测

metricbeat是官方针对logstash打造的轻量级指标采集器,(logstash太重量级了,速度太慢)。生产环境中,ES集群和日志监控集群是分开的,也就是说,数据集群就只搞数据,监控集群就只搞监控。但是这里电脑资源限制,我们将监控集群和数据集群合并在一起了。 ELK之Kibana入门及使用_第25张图片
上图结束后 点击下一个,会有下图所示内容,按照下图步骤完成安装及配置即可:

ELK之Kibana入门及使用_第26张图片

以下步骤需要添加哪个节点就在哪个节点设置

step1:安装Metricbeat软件

[root@server2 ~]# rpm -ivh metricbeat-7.6.1-x86_64.rpm 

step2:启动加密监控插件xpack,并设置用户名和密码

# cd /etc/metricbeat/modules.d/                        //进入metracbeat配置目录
# metricbeat modules enable elasticsearch-xpack        //启用xpack插件(目录中有很多模块,实际上该条命令相当于打开了对应模块)
代表我要开启这个应用的监控
 
添加用户名和密码
# vim /etc/metricbeat/modules.d/elasticsearch-xpack.yml 
 17   username: "elastic"
 18   password: "westos"

ELK之Kibana入门及使用_第27张图片

ELK之Kibana入门及使用_第28张图片
step3:更改metricbeat配置文件,添加访问监测集群的用户名和密码

# vim /etc/metricbeat/metricbeat.yml 
 94   hosts: ["172.25.254.2:9200"]                    //监测集群地址
101   username: "elastic"
102   password: "westos"

ELK之Kibana入门及使用_第29张图片

这里要说明一下,step2中我们在/etc/metricbeat/modules.d/elasticsearch-xpack.yml 中标明了 怎么去连接到本机的es集群以取到数据;而step3中 vim /etc/metricbeat/metricbeat.yml 我们表明 将step2中拿到的数据 怎么样将他输入到监测集群。

step4:启动metricbeat服务

[root@server2 metricbeat]# systemctl enable --now metricbeat.service
Created symlink from /etc/systemd/system/multi-user.target.wants/metricbeat.service to /usr/lib/systemd/system/metricbeat.service.

step5:查看kibana,配置成功

ELK之Kibana入门及使用_第30张图片
以此类推 设置剩下的两个节点:
ELK之Kibana入门及使用_第31张图片
节点检测结果如下:
ELK之Kibana入门及使用_第32张图片

3.kibans节点日志采集插件——filebeat

下载地址:https://elasticsearch.cn/download/

[root@server2 ~]# rpm -ivh filebeat-7.6.1-x86_64.rpm 

filebeat的配置:https://www.elastic.co/guide/en/beats/filebeat/7.6/filebeat-module-elasticsearch.html

按照官方文档配置下列内容:

step1:更改文件

# cd /etc/filebeat/modules.d                    //进入filebeat配置目录
# filebeat modules enable elasticsearch         //启用elasticsearch功能
 
# vim elasticsearch.yml                     //更改内容如下

ELK之Kibana入门及使用_第33张图片加粗样式

step2:编辑filebeat的主配置文件

# vim /etc/filebeat/filebeat.yml 
150   hosts: ["172.25.254.2:9200"]      //filebeat生成日志的传送目的地,告诉他收集到的日志传送到哪里
157   username: "elastic"
158   password: "westos"

step3:启动filebeat

# systemctl enable --now filebeat.service

在kibana上查看,filebeat日志也已经采集成功。
ELK之Kibana入门及使用_第34张图片

你可能感兴趣的:(elk,运维)