Linux 系统下 ELK Stack 安装与配置详细教程:从基础到实战

一、简介

ELK Stack 是一个流行的日志管理和分析平台,由 Elasticsearch、Logstash 和 Kibana 三个开源工具组成。Elasticsearch 是一个高性能的搜索引擎,用于存储和索引日志数据;Logstash 是一个数据处理管道,用于解析和转换日志数据;Kibana 是一个数据可视化工具,用于展示和分析日志数据。

二、环境准备

在开始安装之前,请确保您的 Linux 系统满足以下要求:

  • 一个具有至少 4 GB 内存的 Linux 服务器(如 Ubuntu、CentOS 等)。
  • Java JDK 8 及以上版本(Elasticsearch 需要 Java)。
  • 当前用户有权使用 sudo 命令。

三、安装步骤

(一)安装 Elasticsearch

  1. 下载并安装

    • 从 Elasticsearch 官方网站获取最新版本信息。
    • 以 Ubuntu 系统为例,首先导入 Elasticsearch 的 GPG 密钥:
      curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
      
    • 添加 Elasticsearch 的官方 APT 存储库:
      echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list
      
    • 更新系统包列表并安装 Elasticsearch:
      sudo apt update
      sudo apt install elasticsearch -y
      
  2. 配置 Elasticsearch

    • 编辑 Elasticsearch 的配置文件 /etc/elasticsearch/elasticsearch.yml
      sudo nano /etc/elasticsearch/elasticsearch.yml
      
    • 根据需要修改配置,例如设置 network.hostlocalhost 或其他特定 IP 地址。
    • 保存并退出文件后,启动 Elasticsearch 服务:
      sudo systemctl start elasticsearch
      
    • 为了在系统启动时自动启动 Elasticsearch,运行以下命令:
      sudo systemctl enable elasticsearch
      
  3. 测试 Elasticsearch

    • 使用以下命令测试 Elasticsearch 是否正常运行:
      curl -X GET "localhost:9200"
      
    • 如果一切正常,您将看到 Elasticsearch 的一些基本信息。

(二)安装 Logstash

  1. 下载并安装

    • 同样以 Ubuntu 系统为例,使用以下命令安装 Logstash:
      sudo apt install logstash
      
  2. 创建配置文件

    • 在 Logstash 的默认配置目录中创建一个新的配置文件 logstash.conf
    • 编辑该文件,定义 Logstash 的输入、过滤器和输出插件。例如:
      input {
        beats {
          port => 5044
        }
      }
      filter {
        # 在此处添加过滤器插件,例如 grok 插件用于解析日志
      }
      output {
        elasticsearch {
          hosts => ["localhost:9200"]
        }
      }
      
  3. 启动 Logstash

    • 使用以下命令启动 Logstash 并加载配置:
      sudo systemctl enable logstash
      sudo systemctl start logstash
      

(三)安装 Kibana

  1. 下载并安装

    • 在 Ubuntu 系统上,运行以下命令安装 Kibana:
      sudo apt install kibana
      
  2. 配置 Kibana

    • 编辑 Kibana 的配置文件 /etc/kibana/kibana.yml
      sudo nano /etc/kibana/kibana.yml
      
    • 确保以下配置项正确:
      server.host: "localhost"
      elasticsearch.hosts: ["http://localhost:9200"]
      
    • 保存并退出文件后,启动 Kibana 服务:
      sudo systemctl start kibana
      
    • 为了在系统启动时自动启动 Kibana,运行以下命令:
      sudo systemctl enable kibana
      
  3. 访问 Kibana

    • 打开浏览器,输入 http://localhost:5601,即可访问 Kibana 的 Web 界面。

(四)安装 Filebeat

  1. 安装

    • 在 Ubuntu 系统上,运行以下命令安装 Filebeat:
      sudo apt install filebeat -y
      
  2. 配置 Filebeat

    • 编辑 Filebeat 的配置文件 /etc/filebeat/filebeat.yml
      sudo nano /etc/filebeat/filebeat.yml
      
    • 取消注释以下内容:
      output.logstash:
        hosts: ["localhost:5044"]
      
    • 启用 Filebeat 的系统模块:
      sudo filebeat modules enable system
      
    • 加载索引模板:
      sudo filebeat setup --index-management -E output.logstash.enabled=false -E 'output.elasticsearch.hosts=["localhost:9200"]'
      
  3. 启动 Filebeat

    • 启动并启用 Filebeat 服务:
      sudo systemctl start filebeat
      sudo systemctl enable filebeat
      

四、验证安装

  1. 检查 Filebeat 是否将数据发送到 Elasticsearch

    • 运行以下命令:
      curl -XGET 'http://localhost:9200/filebeat-*/_search?pretty'
      
    • 如果返回结果中包含 Filebeat 收集的日志数据,则说明安装成功。
  2. 在 Kibana 中查看日志数据

    • 登录 Kibana 的 Web 界面,进入“Discover”页面,即可查看和分析日志数据。

五、注意事项

  1. 性能优化
    • 根据实际需求调整 Elasticsearch 和 Logstash 的资源配置。
    • 例如,调整 Elasticsearch 的 JVM 堆大小,编辑 /etc/elasticsearch/jvm.options 文件:
      -Xms4g
      -Xmx4g
      
  2. 安全性
    • 为 Elasticsearch、Logstash 和 Kibana 配置访问控制和身份验证。
    • 例如,使用 Nginx 作为反向代理,为 Kibana 设置基本认证。
  3. 集群部署
    • 如果需要高可用性和扩展性,可以部署 Elasticsearch 和 Kibana 的集群。
    • 修改 Elasticsearch 的配置文件,指定集群名称、节点名称和发现种子主机。
posted @   软件职业规划  阅读(32)  评论(0)    收藏  举报
点击右上角即可分享
微信分享提示