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

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

相关推荐
Brilliantwxx3 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
richdata4 小时前
商品数字化不是先做大数据,而是先把数据变成可用决策
大数据·运维·数据治理·商品数字化·智能补货·ai商品决策
weixin_416667965 小时前
【无标题】
运维·服务器·网络
一池秋_5 小时前
arm低配linux设备,桌面应用冷启动提速方法
linux·运维·arm开发
上海云盾-小余7 小时前
流量攻击复盘:为什么 WAF 完好,业务依旧瘫痪
运维·服务器·网络
IT大白鼠7 小时前
Docker 私有仓库管理:Harbor 企业级仓库搭建与镜像全生命周期管理
运维·docker·容器
戴西软件7 小时前
戴西iDWS.3DViz Suite数据轻量化可视化软件,从传统桌面软件向云端协同的重大突破
大数据·运维·网络·人工智能·机器学习·3d
tianyuanwo8 小时前
Jenkins Pipeline 沙箱与非沙箱:CPS、序列化与白名单的深度解读(含 `take()` 与 `subList()` 实战对比)
pipeline·jenkins·groovy·take·sublist
我命由我123459 小时前
Linux - Linux/POSIX 路径斜杠折叠规则
linux·运维·服务器·android studio·android jetpack·android-studio·android runtime
姚不倒9 小时前
Nginx 反向代理:5 种负载均衡策略与实战
运维·nginx·负载均衡