Linux日志对接Kibana如何进行配置与部署

发布时间:2021-09-14 15:12:29 作者:chen
来源:亿速云 阅读:220

Linux日志对接Kibana如何进行配置与部署

目录

  1. 引言
  2. Kibana简介
  3. 环境准备
  4. 配置Elasticsearch
  5. 配置Kibana
  6. 配置Logstash
  7. 日志收集与传输
  8. Kibana可视化
  9. 高级配置与优化
  10. 安全与监控
  11. 常见问题与解决方案
  12. 总结

引言

在现代IT基础设施中,日志管理是确保系统稳定性和安全性的关键环节。Linux系统生成的日志文件包含了丰富的信息,如何高效地收集、存储、分析和可视化这些日志数据成为了一个重要的课题。Kibana作为Elastic Stack的一部分,提供了一个强大的可视化平台,能够帮助用户轻松地分析和展示日志数据。

本文将详细介绍如何将Linux系统的日志数据对接至Kibana,并进行配置与部署。我们将从环境准备开始,逐步讲解Elasticsearch、Kibana和Logstash的安装与配置,最后探讨日志的收集、传输、可视化以及高级配置与优化。

Kibana简介

Kibana是一个开源的数据可视化工具,主要用于与Elasticsearch协同工作,提供强大的数据探索和可视化功能。Kibana允许用户通过直观的界面查询、分析和展示存储在Elasticsearch中的数据。它支持多种图表类型,如柱状图、折线图、饼图等,并允许用户创建自定义仪表盘,以便实时监控系统状态。

Kibana的主要功能包括:

环境准备

在开始配置和部署之前,我们需要确保系统环境满足Kibana及其相关组件的要求。以下是环境准备的详细步骤。

系统要求

安装Elasticsearch

Elasticsearch是一个分布式搜索和分析引擎,用于存储和索引日志数据。以下是安装Elasticsearch的步骤:

  1. 下载并安装Elasticsearch
   wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.0-amd64.deb
   sudo dpkg -i elasticsearch-7.10.0-amd64.deb
  1. 启动Elasticsearch服务
   sudo systemctl start elasticsearch
   sudo systemctl enable elasticsearch
  1. 验证Elasticsearch是否正常运行
   curl -X GET "localhost:9200/"

如果返回类似以下内容,则表示Elasticsearch已成功启动:

   {
     "name" : "node-1",
     "cluster_name" : "elasticsearch",
     "cluster_uuid" : "abc123",
     "version" : {
       "number" : "7.10.0",
       "build_flavor" : "default",
       "build_type" : "deb",
       "build_hash" : "abc123",
       "build_date" : "2020-11-05T10:36:47.660Z",
       "build_snapshot" : false,
       "lucene_version" : "8.7.0",
       "minimum_wire_compatibility_version" : "6.8.0",
       "minimum_index_compatibility_version" : "6.0.0-beta1"
     },
     "tagline" : "You Know, for Search"
   }

安装Kibana

Kibana是Elasticsearch的可视化工具,用于展示和分析日志数据。以下是安装Kibana的步骤:

  1. 下载并安装Kibana
   wget https://artifacts.elastic.co/downloads/kibana/kibana-7.10.0-amd64.deb
   sudo dpkg -i kibana-7.10.0-amd64.deb
  1. 启动Kibana服务
   sudo systemctl start kibana
   sudo systemctl enable kibana
  1. 验证Kibana是否正常运行

打开浏览器,访问http://localhost:5601,如果看到Kibana的欢迎界面,则表示Kibana已成功启动。

安装Logstash

Logstash是一个数据收集和处理引擎,用于将日志数据从各种来源传输到Elasticsearch。以下是安装Logstash的步骤:

  1. 下载并安装Logstash
   wget https://artifacts.elastic.co/downloads/logstash/logstash-7.10.0.deb
   sudo dpkg -i logstash-7.10.0.deb
  1. 启动Logstash服务
   sudo systemctl start logstash
   sudo systemctl enable logstash
  1. 验证Logstash是否正常运行
   sudo systemctl status logstash

如果显示active (running),则表示Logstash已成功启动。

配置Elasticsearch

Elasticsearch的配置主要集中在elasticsearch.yml文件中。以下是Elasticsearch的基本配置、集群配置和安全配置。

基本配置

  1. 编辑配置文件
   sudo nano /etc/elasticsearch/elasticsearch.yml
  1. 设置集群名称
   cluster.name: my-cluster
  1. 设置节点名称
   node.name: node-1
  1. 设置网络绑定地址
   network.host: 0.0.0.0
  1. 设置HTTP端口
   http.port: 9200
  1. 保存并退出,然后重启Elasticsearch服务:
   sudo systemctl restart elasticsearch

集群配置

  1. 设置集群节点

elasticsearch.yml中,添加以下内容以配置集群节点:

   discovery.seed_hosts: ["node-1", "node-2", "node-3"]
   cluster.initial_master_nodes: ["node-1", "node-2", "node-3"]
  1. 保存并退出,然后重启Elasticsearch服务:
   sudo systemctl restart elasticsearch

安全配置

  1. 启用X-Pack安全功能

elasticsearch.yml中,添加以下内容以启用X-Pack安全功能:

   xpack.security.enabled: true
  1. 设置用户密码

使用以下命令为Elasticsearch设置用户密码:

   sudo /usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive
  1. 保存并退出,然后重启Elasticsearch服务:
   sudo systemctl restart elasticsearch

配置Kibana

Kibana的配置主要集中在kibana.yml文件中。以下是Kibana的基本配置、数据源配置和可视化配置。

基本配置

  1. 编辑配置文件
   sudo nano /etc/kibana/kibana.yml
  1. 设置Elasticsearch连接
   elasticsearch.hosts: ["http://localhost:9200"]
  1. 设置Kibana服务器地址
   server.host: "0.0.0.0"
  1. 设置Kibana端口
   server.port: 5601
  1. 保存并退出,然后重启Kibana服务:
   sudo systemctl restart kibana

数据源配置

  1. 创建索引模式

在Kibana的Management界面中,选择Index Patterns,然后点击Create index pattern。输入索引名称(如logstash-*),然后点击Next step

  1. 选择时间字段

Time Filter field name下拉菜单中选择时间字段(如@timestamp),然后点击Create index pattern

可视化配置

  1. 创建可视化图表

在Kibana的Visualize Library界面中,点击Create visualization,然后选择图表类型(如柱状图、折线图等)。

  1. 配置数据源

选择之前创建的索引模式,然后配置X轴和Y轴的数据字段。

  1. 保存可视化图表

点击Save按钮,输入图表名称,然后点击Save

配置Logstash

Logstash的配置主要集中在logstash.conf文件中。以下是Logstash的输入配置、过滤配置和输出配置。

输入配置

  1. 编辑配置文件
   sudo nano /etc/logstash/conf.d/logstash.conf
  1. 配置输入插件

例如,配置Filebeat作为输入源:

   input {
     beats {
       port => 5044
     }
   }

过滤配置

  1. 配置过滤插件

例如,使用Grok过滤器解析日志:

   filter {
     grok {
       match => { "message" => "%{COMBINEDAPACHELOG}" }
     }
   }

输出配置

  1. 配置输出插件

例如,将日志输出到Elasticsearch:

   output {
     elasticsearch {
       hosts => ["localhost:9200"]
       index => "logstash-%{+YYYY.MM.dd}"
     }
   }
  1. 保存并退出,然后重启Logstash服务:
   sudo systemctl restart logstash

日志收集与传输

日志的收集与传输是日志管理的关键环节。以下是使用Filebeat、Rsyslog和Fluentd收集日志的详细步骤。

使用Filebeat收集日志

  1. 安装Filebeat
   wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.10.0-amd64.deb
   sudo dpkg -i filebeat-7.10.0-amd64.deb
  1. 配置Filebeat

编辑/etc/filebeat/filebeat.yml文件,配置输入和输出:

   filebeat.inputs:
   - type: log
     enabled: true
     paths:
       - /var/log/*.log

   output.logstash:
     hosts: ["localhost:5044"]
  1. 启动Filebeat服务
   sudo systemctl start filebeat
   sudo systemctl enable filebeat

使用Rsyslog收集日志

  1. 安装Rsyslog
   sudo apt-get install rsyslog
  1. 配置Rsyslog

编辑/etc/rsyslog.conf文件,配置输出到Logstash:

   *.* @@localhost:514
  1. 重启Rsyslog服务
   sudo systemctl restart rsyslog

使用Fluentd收集日志

  1. 安装Fluentd
   curl -L https://toolbelt.treasuredata.com/sh/install-ubuntu-bionic-td-agent4.sh | sh
  1. 配置Fluentd

编辑/etc/td-agent/td-agent.conf文件,配置输入和输出:

   <source>
     @type tail
     path /var/log/syslog
     pos_file /var/log/td-agent/syslog.pos
     tag syslog
     format syslog
   </source>

   <match syslog.**>
     @type elasticsearch
     host localhost
     port 9200
     logstash_format true
   </match>
  1. 启动Fluentd服务
   sudo systemctl start td-agent
   sudo systemctl enable td-agent

Kibana可视化

Kibana的可视化功能是其核心优势之一。以下是创建索引模式、可视化图表和仪表盘的详细步骤。

创建索引模式

  1. 进入Kibana的Management界面,选择Index Patterns,然后点击Create index pattern

  2. 输入索引名称(如logstash-*),然后点击Next step

  3. 选择时间字段(如@timestamp),然后点击Create index pattern

创建可视化图表

  1. 进入Kibana的Visualize Library界面,点击Create visualization

  2. 选择图表类型(如柱状图、折线图等)。

  3. 选择之前创建的索引模式,然后配置X轴和Y轴的数据字段。

  4. 点击Save按钮,输入图表名称,然后点击Save

创建仪表盘

  1. 进入Kibana的Dashboard界面,点击Create dashboard

  2. 点击Add from library,选择之前创建的可视化图表。

  3. 调整图表布局,然后点击Save按钮,输入仪表盘名称,然后点击Save

高级配置与优化

为了确保系统的稳定性和性能,我们需要对Elasticsearch、Kibana和Logstash进行高级配置与优化。

Elasticsearch性能优化

  1. 调整JVM堆大小

编辑/etc/elasticsearch/jvm.options文件,设置合适的堆大小:

   -Xms2g
   -Xmx2g
  1. 优化索引设置

在创建索引时,设置合适的分片和副本数:

   PUT /my_index
   {
     "settings": {
       "number_of_shards": 3,
       "number_of_replicas": 1
     }
   }

Kibana性能优化

  1. 调整Kibana的缓存设置

编辑/etc/kibana/kibana.yml文件,设置合适的缓存大小:

   opensearch.requestTimeout: 30000
  1. 优化查询性能

在Kibana的查询界面中,使用合适的查询语句和过滤器,避免全表扫描。

Logstash性能优化

  1. 调整Logstash的线程数

编辑/etc/logstash/logstash.yml文件,设置合适的线程数:

   pipeline.workers: 4
  1. 优化过滤器性能

使用高效的过滤器插件,如Grok和Date,避免复杂的正则表达式。

安全与监控

为了确保系统的安全性和稳定性,我们需要对Elasticsearch、Kibana和Logstash进行安全配置和监控。

安全配置

  1. 启用X-Pack安全功能

elasticsearch.ymlkibana.yml中,启用X-Pack安全功能:

   xpack.security.enabled: true
  1. 设置用户密码

使用以下命令为Elasticsearch和Kibana设置用户密码:

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

监控与告警

  1. 启用X-Pack监控功能

elasticsearch.ymlkibana.yml中,启用X-Pack监控功能:

   xpack.monitoring.enabled: true
  1. 配置告警规则

在Kibana的Alerting界面中,创建告警规则,设置合适的阈值和通知方式。

常见问题与解决方案

  1. Elasticsearch启动失败

    • 问题:Elasticsearch无法启动,日志显示内存不足。
    • 解决方案:调整JVM堆大小,确保系统有足够的内存
推荐阅读:
  1. kibana的安装与配置
  2. kibana日志告警

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

kibana linux

上一篇:JavaScript归并数组的方法有哪些

下一篇:JavaScript迭代方法有哪些

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》