日志管理利器:基于 ELK 的日志收集、存储与可视化实战

使用 LogstashElasticsearchKibana (通常称为 ELK Stack)可以快速搭建一个强大的日志收集、存储和可视化平台。以下是使用蓝易云搭建日志平台的步骤:


1. 环境准备

确保你有一台云服务器(如蓝易云提供的服务器),并具备以下条件:

  • 操作系统:推荐使用 Linux(如 CentOS、Ubuntu)。
  • Java 环境:Elasticsearch 和 Logstash 需要 Java 运行环境,建议安装 JDK 11 或以上版本。
  • 网络配置 :确保服务器的防火墙允许以下端口访问:
    • Elasticsearch: 9200
    • Kibana: 5601
    • Logstash: 5044(用于接收日志)

2. 安装 Elasticsearch

Elasticsearch 是日志存储和搜索的核心组件。

步骤:
  1. 下载并安装 Elasticsearch:

    bash 复制代码
    wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.10.0-linux-x86_64.tar.gz
    tar -xzf elasticsearch-8.10.0-linux-x86_64.tar.gz
    cd elasticsearch-8.10.0/
  2. 修改配置文件 config/elasticsearch.yml

    yaml 复制代码
    network.host: 0.0.0.0
    discovery.seed_hosts: ["127.0.0.1"]
    cluster.initial_master_nodes: ["127.0.0.1"]
  3. 启动 Elasticsearch:

    bash 复制代码
    ./bin/elasticsearch
  4. 验证 Elasticsearch 是否运行:

    bash 复制代码
    curl -X GET "localhost:9200"

    如果返回 JSON 格式的欢迎信息,说明 Elasticsearch 已成功启动。


3. 安装 Logstash

Logstash 用于收集、过滤和转发日志到 Elasticsearch。

步骤:
  1. 下载并安装 Logstash:

    bash 复制代码
    wget https://artifacts.elastic.co/downloads/logstash/logstash-8.10.0-linux-x86_64.tar.gz
    tar -xzf logstash-8.10.0-linux-x86_64.tar.gz
    cd logstash-8.10.0/
  2. 创建 Logstash 配置文件 config/logstash.conf

    yaml 复制代码
    input {
      beats {
        port => 5044
      }
    }
    
    filter {
      grok {
        match => { "message" => "%{COMBINEDAPACHELOG}" }
      }
    }
    
    output {
      elasticsearch {
        hosts => ["localhost:9200"]
        index => "logs-%{+YYYY.MM.dd}"
      }
      stdout { codec => rubydebug }
    }
  3. 启动 Logstash:

    bash 复制代码
    ./bin/logstash -f config/logstash.conf

4. 安装 Kibana

Kibana 是日志的可视化工具,用于展示和分析日志数据。

步骤:
  1. 下载并安装 Kibana:

    bash 复制代码
    wget https://artifacts.elastic.co/downloads/kibana/kibana-8.10.0-linux-x86_64.tar.gz
    tar -xzf kibana-8.10.0-linux-x86_64.tar.gz
    cd kibana-8.10.0/
  2. 修改配置文件 config/kibana.yml

    yaml 复制代码
    server.host: "0.0.0.0"
    elasticsearch.hosts: ["http://localhost:9200"]
  3. 启动 Kibana:

    bash 复制代码
    ./bin/kibana
  4. 访问 Kibana:

    打开浏览器,访问 http://<服务器IP>:5601,进入 Kibana 界面。


5. 配置日志收集

你可以使用 Filebeat 或直接通过 Logstash 收集日志。

使用 Filebeat:
  1. 下载并安装 Filebeat:

    bash 复制代码
    wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.10.0-linux-x86_64.tar.gz
    tar -xzf filebeat-8.10.0-linux-x86_64.tar.gz
    cd filebeat-8.10.0-linux-x86_64/
  2. 修改配置文件 filebeat.yml

    yaml 复制代码
    filebeat.inputs:
    - type: log
      enabled: true
      paths:
        - /var/log/*.log
    
    output.logstash:
      hosts: ["localhost:5044"]
  3. 启动 Filebeat:

    bash 复制代码
    ./filebeat -e

6. 在 Kibana 中查看日志

  1. 进入 Kibana 界面,点击 Discover
  2. 创建索引模式(如 logs-*),选择时间戳字段。
  3. 查看和分析日志数据。

7. 优化与扩展

  • 性能优化:根据日志量调整 Elasticsearch 和 Logstash 的资源配置。
  • 安全性:启用 Elasticsearch 和 Kibana 的安全功能(如 HTTPS、用户认证)。
  • 高可用性:部署多个 Elasticsearch 节点组成集群。

通过以上步骤,可以在蓝易云上快速搭建一个功能强大的日志平台,满足日志收集、存储和可视化的需求。

相关推荐
SkyWalking中文站5 小时前
认识 Horizon UI · 5/17:3D 基础设施地图
运维·监控·自动化运维
SkyWalking中文站1 天前
认识 Horizon UI · 1/17:SkyWalking 新一代可观测性控制台
运维·前端·监控
雪梨酱QAQ1 天前
Kubeneters HA Cluster部署
运维
江华森1 天前
Spring Cloud 微服务全栈实战:从 Eureka 到 Docker Compose 一文贯通
运维
江华森1 天前
Matplotlib 数据绘图基础入门
运维
江华森1 天前
NumPy 数值计算基础入门
运维
乘云数字DATABUFF5 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
荣--7 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森7 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜8 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https