ELK之Kibana入门及使用

一、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)导入数据/创建索引
在这里插入图片描述
在这里插入图片描述
根据时间戳创建索引
在这里插入图片描述
(2)绘制可视化图形
在这里插入图片描述
当然也可以把创建的可视化图形保存起来
在这里插入图片描述

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

在这里插入图片描述
我们向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以垂直条形图的形式展现出来:
在这里插入图片描述
在这里插入图片描述
饼图也是如此:
在这里插入图片描述

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

刚刚创建了很多图,这些图很直观也很方便观看,但是这么多可视化需要一个仪表板来做一个统一的展示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
当然,我们在实际的生产环境中可以全屏,狂拽酷帅,按F11即可进入/退出全屏。在这里插入图片描述

再次,我们可以设置仪表盘上数据的刷新时间(当然可以手动刷新)
在这里插入图片描述

四、Kibana监控

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

在这里插入图片描述
在这里插入图片描述
可以查看当前ELK集群中每个节点的各种监测数据和节点状态。
在这里插入图片描述

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 root@172.25.254.3:/etc/elasticsearch/
# scp elastic-certificates.p12 root@172.25.254.4:/etc/elasticsearch/
在server3/4上执行
# chown elasticsearch /etc/elasticsearch/elastic-certificates.p12       

加粗样式置所有的elasticsearch集群节点</etc/elasticsearch/elasticsearch.yml>:
此处一定要注意,修改的是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,方便管理:

在这里插入图片描述
在这里插入图片描述
但此时,elasticsearch-head就不能访问了,
在这里插入图片描述
所以 设置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

在这里插入图片描述

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。次用户具有最高权限。
在这里插入图片描述
在这里插入图片描述
第四步:设置Metricbeat监测

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

在这里插入图片描述

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

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"

在这里插入图片描述

在这里插入图片描述
step3:更改metricbeat配置文件,添加访问监测集群的用户名和密码

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

在这里插入图片描述

这里要说明一下,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,配置成功

在这里插入图片描述
以此类推 设置剩下的两个节点:
在这里插入图片描述
节点检测结果如下:
在这里插入图片描述

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:更改</etc/filebeat/modules.d/elasticsearch.yml>文件

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

在这里插入图片描述加粗样式

step2:编辑filebeat的主配置文件</etc/filebeat/filebeat.yml>

# 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日志也已经采集成功。
在这里插入图片描述


文章标签:

原文连接:https://blog.csdn.net/weixin_44717560/article/details/123848449

相关推荐

管正雄:基于预训练模型、智能运维的QA生成算法落地

这个好用的办公网优化工具,官宣免费了

不割韭菜,纯分享:剖析HTML中的类,运维开发必备前端技能,我们一起坚持。

FTP服务配置

【云原生】Docker部署数据库的持久化

从运维到运维大神,只需要一个正确的选择

远程控制软件也要有plan B备选方案

CentOS7 离线安装 Zabbix5.0

centos7基础操作

Docker 简介

Google 为造芯再掀“抢人大战”,英特尔 17 年老将加入

编程技巧│超实用 nginx 中常见的配置合集

云原生(三十六) | Kubernetes篇之Harbor入门和安装

Docker从入门到精通|2022版

开发者,Docker镜像,容器和仓库到底是什么?

【云原生Kubernetes系列第五篇】kubeadm v1.20 部署K8S 集群架构(人生这道选择题,总会有遗憾)

Linux——进程的概念(万字总结)

开发者,熊二都会的Linux入门

vue入门,从启动项目开始,做完得物App的用户登录(前端!)

运维-技能大杂烩