日志管理利器:基于 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 节点组成集群。

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

相关推荐
Do_GH2 小时前
【Linux】07.Ubuntu开发环境部署
linux·运维·ubuntu
勤源科技3 小时前
全链路智能运维中的实时流处理架构与状态管理技术
运维·架构
tryCbest3 小时前
Linux使用Docker部署项目后期更新
linux·运维·docker
早睡冠军候选人5 小时前
Ansible学习----Ansible Playbook
运维·服务器·学习·云原生·容器·ansible
sulikey5 小时前
从实验出发深入理解Linux目录权限:r、w、x分别控制什么?能否进入目录到底由谁决定?
linux·运维·服务器·ubuntu·centos
li3714908906 小时前
nginx报400bad request 请求头过大异常处理
java·运维·nginx
久曲健的测试窝6 小时前
Jenkins Share Library教程 —— 开发入门
运维·servlet·jenkins
游戏开发爱好者87 小时前
FTP 抓包分析实战,命令、被动主动模式要点、FTPS 与 SFTP 区别及真机取证流程
运维·服务器·网络·ios·小程序·uni-app·iphone
默 语7 小时前
AI驱动软件测试全流程自动化:从理论到实践的深度探索
运维·人工智能·驱动开发·ai·自动化·ai技术·测试全流程
望获linux8 小时前
【实时Linux实战系列】实时 Linux 的自动化基准测试框架
java·大数据·linux·运维·网络·elasticsearch·搜索引擎