返回文章归档
Kibana

ELFK-Kibana【可视化日志】

日志可视化

一、安装部署Kibana

1,环境准备

主机 ip
kibana 10.0.0.110

2,官网下载软件包

官网地址

https://www.elastic.co

image-20251126180441420

# 向下滑动页面:
	- 找到【本地部署】
	- 点击

image-20251126180716153

# 选择历史版本

image-20251126181012938

# 选择与:【ElasticStack相同的版本号】
	- 点击下载

image-20251203164424881

# 选择要下载的安装包
	- Linux_X86_64类型

image-20251203164452981

# 将安装包上传到机器上
[root@kibana ~ ]# ls -l
-rw-r--r-- 1 root root 296011204 Nov 26 11:25 kibana-7.17.29-linux-x86_64.tar.gz
-rw-r--r-- 1 root root 365215604 Dec  3 08:45 kibana-8.18.8-linux-x86_64.tar.gz

3,部署安装

· 解压软件包

[root@kibana ~ ]# tar xf kibana-8.18.8-linux-x86_64.tar.gz
[root@kibana ~ ]# ls -l
-rw-r--r--  1 root root 296011204 Nov 26 11:25 kibana-7.17.29-linux-x86_64.tar.gz
drwxr-xr-x 11 root root      4096 Dec  3 08:47 kibana-8.18.8
-rw-r--r--  1 root root 365215604 Dec  3 08:45 kibana-8.18.8-linux-x86_64.tar.gz


[root@kibana ~ ]# ls -l kibana-8.18.8
total 3876
drwxrwxr-x   2 root root    4096 Oct  2 20:34 bin
drwxrwxr-x   2 root root    4096 Oct  2 20:32 config
drwxrwxr-x   2 root root    4096 Oct  2 20:32 data
-rw-rw-r--   1 root root    3860 Oct  2 20:32 LICENSE.txt
drwxrwxr-x   2 root root    4096 Oct  2 20:32 logs
drwxrwxr-x   3 root root    4096 Oct  2 20:33 node
drwxrwxr-x 822 root root   36864 Oct  2 20:32 node_modules
-rw-rw-r--   1 root root 3885491 Oct  2 20:32 NOTICE.txt
-rw-rw-r--   1 root root     780 Oct  2 20:32 package.json
drwxrwxr-x   2 root root    4096 Oct  2 20:32 plugins
-rw-rw-r--   1 root root    3966 Oct  2 20:32 README.txt
drwxrwxr-x  11 root root    4096 Oct  2 20:32 src
drwxrwxr-x   4 root root    4096 Oct  2 20:32 x-pack

· 将安装包移动到安装目录

[root@kibana ~ ]# mkdir /tools/
[root@kibana ~ ]# mv kibana-8.18.8 /tools/
[root@kibana ~ ]# ls -l /tools/kibana-8.18.8/
total 3876
drwxrwxr-x   2 root root    4096 Oct  2 20:34 bin
drwxrwxr-x   2 root root    4096 Oct  2 20:32 config
drwxrwxr-x   2 root root    4096 Oct  2 20:32 data
-rw-rw-r--   1 root root    3860 Oct  2 20:32 LICENSE.txt
drwxrwxr-x   2 root root    4096 Oct  2 20:32 logs
drwxrwxr-x   3 root root    4096 Oct  2 20:33 node
drwxrwxr-x 822 root root   36864 Oct  2 20:32 node_modules
-rw-rw-r--   1 root root 3885491 Oct  2 20:32 NOTICE.txt
-rw-rw-r--   1 root root     780 Oct  2 20:32 package.json
drwxrwxr-x   2 root root    4096 Oct  2 20:32 plugins
-rw-rw-r--   1 root root    3966 Oct  2 20:32 README.txt
drwxrwxr-x  11 root root    4096 Oct  2 20:32 src
drwxrwxr-x   4 root root    4096 Oct  2 20:32 x-pack

· 创建虚拟用户

	- 主流linux通用
[root@kibana ~ ]# useradd -r -s /bin/false kibana
	- 红帽系统
[root@kibana ~ ]# useradd -s /sbin/nologin -M kibana	

· 给kibana目录授权

[root@kibana ~ ]# chown -R kibana.kibana /tools/
[root@kibana ~ ]# ls -l /tools/kibana-8.18.8/
total 3876
drwxrwxr-x   2 kibana kibana    4096 Oct  2 20:34 bin
drwxrwxr-x   2 kibana kibana    4096 Oct  2 20:32 config
drwxrwxr-x   2 kibana kibana    4096 Oct  2 20:32 data
-rw-rw-r--   1 kibana kibana    3860 Oct  2 20:32 LICENSE.txt
drwxrwxr-x   2 kibana kibana    4096 Oct  2 20:32 logs
drwxrwxr-x   3 kibana kibana    4096 Oct  2 20:33 node
drwxrwxr-x 822 kibana kibana   36864 Oct  2 20:32 node_modules
-rw-rw-r--   1 kibana kibana 3885491 Oct  2 20:32 NOTICE.txt
-rw-rw-r--   1 kibana kibana     780 Oct  2 20:32 package.json
drwxrwxr-x   2 kibana kibana    4096 Oct  2 20:32 plugins
-rw-rw-r--   1 kibana kibana    3966 Oct  2 20:32 README.txt
drwxrwxr-x  11 kibana kibana    4096 Oct  2 20:32 src
drwxrwxr-x   4 kibana kibana    4096 Oct  2 20:32 x-pack

· 编辑配置文件

[root@kibana ~ ]# vim /tools/kibana-8.18.8/config/kibana.yml
server.port: 5601
server.host: "0.0.0.0"
server.name: "wa_kibana"
# 允许用户的访问URL
server.publicBaseUrl: "http://10.0.0.110:5601"


elasticsearch.hosts: ["https://10.0.0.101:10200","https://10.0.0.102:10200","https://10.0.0.103:10200"]
# 只有7.x版本才支持自定义存储索引;8.x不支持这个参数
#kibana.index: ".kibana"
elasticsearch.username: "kibana_system" 
elasticsearch.password: "123456"
# 必须绝对路径,否则报错
elasticsearch.ssl.certificateAuthorities: ["/tools/kibana-8.18.8/config/ca.crt"]


# 国际化语言设置
i18n.locale: zh-CN
##################################################################
###################[kibana日志配置]###############################
##################################################################
#旧版本:8.x之前的版本
#logging.dest: /tools/kibana-8.18.8/logs/kibana.log  # 日志文件路径
#logging.verbose: true              # 详细日志
#logging.json: false                # 日志格式
#新版本:8.x开始使用
# 日志配置 (Kibana 8.x 新语法)
logging:
  root:
    level: info
  appenders:
    console:
      type: console
      layout:
        type: pattern
        pattern: "[%date][%level][%logger] %message"
    file:
      type: file
      fileName: /tools/kibana-8.18.8/logs/kibana.log
      layout:
        type: pattern
  loggers:
    - name: root
      level: info
      appenders: [console, file]
    - name: plugins
      level: info
      appenders: [file]
    - name: elasticsearch
      level: debug
      appenders: [file]

#######如果ES开启了双向CA认证#######
#######必须与ES是相同的CA链########
#【1.】 Kibana信任的CA(用于验证ES服务器证书)
# elasticsearch.ssl.certificateAuthorities: ["/path/to/your-ca.crt.pem"]
#【2.】 Kibana自己的客户端证书和私钥(用于向ES证明自己)
# elasticsearch.ssl.certificate: "/path/to/kibana-client.crt"
# elasticsearch.ssl.key: "/path/to/kibana-client.key"

##########[如果kibana想要页面客户端https访问]#########
# server.ssl.enabled: true
# server.ssl.certificate: /path/to/kibana_server.crt
# server.ssl.key: /path/to/kibana_server.key

· 复制es的ca证书

[root@kibana ~ ]# scp 10.0.0.101:/tools/es8/elasticsearch-8.18.8/config/certs/ca.crt /tools/kibana-8.18.8/config/

[root@kibana ~ ]# ls -l /tools/kibana-8.18.8/config/
total 12
-rw-r--r-- 1 root   root   2029 Dec  3 08:55 ca.crt
-rw-rw-r-- 1 kibana kibana 1302 Dec  3 08:54 kibana.yml
-rw-rw-r-- 1 kibana kibana  516 Oct  2 20:32 node.options

· 编辑system启动文件

[root@kibana ~ ]# vim /lib/systemd/system/kibana.service
[Unit]
Description=Kibana
Documentation=https://www.elastic.co
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
WorkingDirectory=/tools/kibana-8.18.8/
ExecStart=/tools/kibana-8.18.8/bin/kibana
Restart=always
User=kibana
Group=kibana

[Install]
WantedBy=multi-user.target

· 启动kibana

[root@kibana ~ ]# systemctl daemon-reload
[root@kibana ~ ]# systemctl enable kibana
[root@kibana ~ ]# systemctl start kibana

· 浏览器访问

10.0.0.110:5601

image-20251127130644229

· 登录

# 注意:这里登录的是ES的用户信息
elastic
123456

# 第一次登陆会弹窗让你选择【集成】还是【自己浏览】
	- 我们选择:【自己浏览】

image-20251127130812769

二、kibana管理ES索引

1,进入索引管理页面

# 点击菜单栏【ICON】
	- 选择【Management】
	- 点击【Stack Management】
	- 点击【索引管理】
	- 默认进入【索引】标签中

image-20251203175034083

2,管理索引

# 选中一个索引
	- 点击【管理1个索引】(可以是多个)
	- 弹窗中可以对先中的索引【增、删、改、查、打开、关闭、清空】等操作

image-20251203175140830

3,索引模板管理

# 切换【索引模板】标签
	- 点击【创建索引模板】

image-20251127141535558

# 设置基础信息
	- 索引模板的名称:[xinjizhiwa_index_tmp01]
	- 索引模板匹配的方式: [xinjizhiwa*]

image-20251127141931563

# 【组件模板】:就是复制别的常规索引模板的配置;
	- 我们不选择
	- 直接下一步

image-20251127141017781

# 主、副本分片的设置
{
  "number_of_shards": "3",
  "number_of_replicas":2
}

image-20251127142313041

# mappings映射字段类型设置
	- 设置4个测试

image-20251127142601271

# aliases别名设置
{
  "wa_a01":{},
  "wa_a02":{},
  "wa_a03":{}
}

image-20251127142723503

# 确认【创建模板】

image-20251127142800648

三、kibana数据视图

想要使用kibana处理ES中的索引数据,想要生成图表、筛选显示:

  • 需要引入数据操作;
  • 这种引入的动作叫做:【数据视图】
  • 含义就是:声明要处理(查询、筛选、聚合)的数据索引;

1,创建索引模式

# 点击菜单栏【ICON】
	- 选择【Management】
	- 点击【Stack Management】
	- 点击【数据视图】-【创建数据视图】

image-20251203175809260

# 编辑数据视图:
	- 数据视图(原:索引模式)名称
	- 数据视图匹配es索引:[xin*]表示匹配es中以"xin"开头的索引;
	- 时间戳字段:选择【索引中自带的时间字段】,因为后续处理数据,要基于一个时间的字段做匹配;

image-20251203180104501

2,创建后查看数据视图

# 创建后自定进入视图详情中

image-20251203180346443

四、kibana页面过滤

1,进入Discover

# 创建索引模式,成功引入数据后:
	- 点击导航栏ICON
	- 顶级【Discover】进入发现页面

image-20251203181836922

2,选中数据视图引入数据

image-20251203183024976

3,根据时间筛选数据

# 这个时间的筛选,就是我们创建【数据视图】的时候,选择的那个时间字段
	- 提示:一定要选择索引中本来的时间字段;

image-20251203183245052

4,选择需要过滤的数据字段

# 筛选时间之后,左侧导航栏会显示所有有数据的字段;
	- 默认这些字段不可被筛选
	- 想要筛选,需要点击加号【+】将字段添加到右侧的页面表格中;

image-20251203183459655

5,KQL过滤数据

# 根据字段与布尔值进行筛选,举例:查询:【"小米"品牌,价格大于1000的商品】
	specifications.brand : "小米" and price >= 1000

image-20251203183751786

五、kibana地图坐标展示

1,进入地图导航栏

# 【Maps】

image-20251203184310641

2,添加图层

# 就是将坐标点以图层标点的方式展示在地图上;让人看着更直观清晰;

· 点击【添加图层】

image-20251203190019165

· 选择【文档】

# 表示:从【数据视图】引入的文档中选择坐标点数据文档

image-20251203190122515

· 选择数据视图

# 数据视图坑你有很多个,我们选择想要查看的那个

image-20251203190201454

· 选择坐标数据字段【添加并继续】

# 这里只显示坐标类型的字段

image-20251203190311571

· 设置图层名称【保存】

# 可配置项
	- 图层名称
	- 坐标点图标颜色
	- 坐标点样式
	- 等......

image-20251203190447542

· 查看页面

坐标点已经生成

image-20251203190658477

六、kibana仪表盘制作

1,进入仪表盘Dashboards

image-20251204124755996

2,创建单维度图表

· 创建可视化

# 点击【创建可视化】按钮

image-20251204124940412

· 选择字段与图表类型

# 选择一个维度字段,与要展示的统计图表类型
	- 字段我们选择【品牌】;(按照品牌统计图表)
	- 图表我们选择【柱状图】;(用来统计不同品牌的商品数量)

image-20251204125401033

· 保存图表

# 点击右上角【保存】按钮

image-20251204125546577

# 编辑保存信息
	- 编辑【图表名称】
	- 选择要保存在哪个仪表盘中(我们新建一个)
	- 点击【保存并前往仪表盘】

image-20251204125726160

# 前往仪表盘之后查看

image-20251204125913438

3,创建多维度图表

# 假设,我们向统计:价格和品牌的分布情况

image-20251204130432771

# 保存查看

image-20251204130458982

4,添加Maps地图

· 添加面板

# 选择【Maps】

image-20251204130709384

· 编辑地图图层

image-20251204130848409

· 保存并返回

image-20251204130920728

5,保存仪表盘

# 编辑好多个图标后,保存

image-20251204131054949

# 设置仪表盘的名称与备注,点击保存

image-20251204131209193

# 返回提表盘主页

image-20251204131250185

Discussion

评论

加载中
正在检查登录状态…