从数据到洞察:在阿里云ECS上搭建ELK实现日志分析与可视化

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: ELK(Elasticsearch, Logstash, Kibana)是一个强大的开源日志管理解决方案,被广泛用于收集、存储、搜索、分析和可视化大规模的日志数据,本文主要分享了如何在阿里云ECS上搭建ELK实现日志分析与可视化。

一.背景知识

ELK(Elasticsearch, Logstash, Kibana)是一个强大的开源日志管理解决方案,被广泛用于收集、存储、搜索、分析和可视化大规模的日志数据。它由三个核心组件组成,每个组件都有独特的功能和作用。Elasticsearch是一个分布式搜索和分析引擎,用于存储、搜索和分析大量的实时数据。它使用倒排索引来快速查询和检索数据,并提供了强大的全文搜索、聚合和分析功能。Logstash是一个用于收集、处理和转发日志和事件数据的数据管道工具。它可以从各种来源(如日志文件、数据库、消息队列)收集数据,并经过过滤、解析和转换后发送到不同的目标,如Elasticsearch。Kibana是一个基于Web的用户界面,用于可视化和分析存储在Elasticsearch中的数据。它提供了丰富的图表、仪表板和搜索功能,使用户能够轻松地探索和理解数据。ELK组件的结合使得用户能够高效地收集、存储、搜索、分析和可视化大规模的日志数据,对于监控系统、故障排除、安全分析等领域非常有用。它也支持扩展和集成其他工具和插件,以满足不同的需求和场景。


二.环境配置

  • 服务器:阿里云ECS服务器
  • 操作系统版本:Centos 7

三.搭建步骤

1.安装依赖环境

(1)Elasticsearch对于JAVA JDK环境有要求,需要JDK1.8或以上的支持。我们执行如下命令来安装JAVA JDK环境。

yum -y install java-1.8.0-openjdk  java-1.8.0-openjdk -devel

图片.png

(2)执行如下命令来设置java主页

cat <<EOF | sudotee /etc/profile.d/
exportJAVA_HOME=/usr/lib/jvm/jre-openjdk
exportPATH=\$PATH:\$JAVA_HOME/bin
exportCLASSPATH=.:\$JAVA_HOME/jre/lib:\$JAVA_HOME/lib:\$JAVA_HOME/lib/tools.jar
EOF

图片.png

(3)配置完之后,执行如下命令来刷新配置文件,随后执行"java -version"来查看jdk版本。

source /etc/profile.d/java8.sh


图片.png

(4)执行如下命令来关闭防火墙

systemctl stop firewalld""systemctl disable firewalld

图片.png

(5)执行命令将如下内容输入添加到elasticsearch.repo中

cat <<EOF | tee /etc/yum.repos.d/elasticsearch.repo

图片.png

(6)执行如下命令来引入GPG key

rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

接着执行"yum clean all" "yum makecache"更新yum包。

图片.png


2.安装Elasticsearch应用

(1)执行"rpm -ivh elasticsearch-7.2.0-x86_64.rpm"命令来安装Elasticsearch

图片.png

(2)安装后,执行如下命令来确认Elasticsearch的安装信息

rpm -qi elasticsearch"

图片.png

(3)随后执行如下命令来启动Elasticsearch,并执行"systemctl start elasticsearch""",来设置开机自启动。

systemctl daemon-reload
systemctl start elasticsearch
systemctl enable elasticsearch

图片.png

(4) 执行"systemctl status elasticsearch"查看elasticsearch运行状态。

图片.png

(5)执行"curl localhost:9200"尝试请求9200端口允不允许访问

图片.png

当前只能相应本机的请求,其他机器想要访问的话需要修改elasticsearch的配置,执行"vim /etc/elasticsearch/elasticsearch.yml"修改如下配置,一定要把修改内容的注释取消!!

cluster.name: my-applicat
ionnode.name: master
network.host: 0.0.0.0
ttp.port: 9200cluster.initial_master_nodes: ["master", "node-2"]

图片.png

执行"systemctl stop elasticsearch""systemctl start elasticsearch"重启elasticsearch使其修改内容生效

图片.png

使用命令"netstat -nlpt"列出当前的有效连接,监听服务状态,建立相关链接得名字,tcp相关的选项。如果显示:::9200就可以通过外部浏览器去访问了。

图片.png

图片.png

3.安装Kibana应用

(1) .执行"yum install -y kibana"来进行kibana安装。

图片.png

(2). 执行"rpm -qi kibana"查看安装信息

图片.png

(3)执行"systemctl start kibana""systemctl enable kibana"设置开机自启动。

图片.png

(4)执行"systemctl status kibana"查看kibana运行状态

图片.png

(5)执行"curl localhost:5601 -L"测试访问

图片.png

(6)执行"vim /etc/kibana/kibana.yml"配置允许其他机器访问,修改以下配置。

server.port: 5601server.host: "0.0.0.0"elasticsearch.hosts: ["http://localhost:9200"]

图片.png

图片.png

(7)  执行"systemctl stop kibana""systemctl start kibana"进行重启使其生效

图片.png

(8)执行"netstat -nlpt"和安装Elasticsearch一样,发现出现0.0.0.0:5601说明可以从外部浏览器访问Kibana服务。

图片.png

图片.png


4.安装Logstash应用

(1)执行"yum install -y logstash"安装Logstash,如下图所示。

图片.png


(2)执行"rpm -qi logstash"确实logstash已安装,如下图所示。

图片.png

(3) 执行"systemctl start logstash"启动logstash,执行"systemctl status logstash"查看logstash运行状态

图片.png

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
7天前
|
缓存 NoSQL Linux
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
|
9天前
|
存储 消息中间件 人工智能
AI大模型独角兽 MiniMax 基于阿里云数据库 SelectDB 版内核 Apache Doris 升级日志系统,PB 数据秒级查询响应
早期 MiniMax 基于 Grafana Loki 构建了日志系统,在资源消耗、写入性能及系统稳定性上都面临巨大的挑战。为此 MiniMax 开始寻找全新的日志系统方案,并基于阿里云数据库 SelectDB 版内核 Apache Doris 升级了日志系统,新系统已接入 MiniMax 内部所有业务线日志数据,数据规模为 PB 级, 整体可用性达到 99.9% 以上,10 亿级日志数据的检索速度可实现秒级响应。
AI大模型独角兽 MiniMax 基于阿里云数据库 SelectDB 版内核 Apache Doris 升级日志系统,PB 数据秒级查询响应
|
8天前
|
Ubuntu Linux 测试技术
在Linux中,已知 apache 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?
在Linux中,已知 apache 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?
|
8天前
|
存储 监控 网络协议
在Linux中,如何使用 tcpdump 监听主机为 192.168.1.1,tcp 端⼝为 80 的数据,并将将输出结果保存输出到tcpdump.log?
在Linux中,如何使用 tcpdump 监听主机为 192.168.1.1,tcp 端⼝为 80 的数据,并将将输出结果保存输出到tcpdump.log?
|
3天前
|
Prometheus 监控 Cloud Native
Web服务器的日志分析与监控
【8月更文第28天】Web服务器日志提供了关于服务器活动的重要信息,包括访问记录、错误报告以及性能数据。有效地分析这些日志可以帮助我们了解用户行为、诊断问题、优化网站性能,并确保服务的高可用性。本文将介绍如何使用日志分析和实时监控工具来监测Web服务器的状态和性能指标,并提供具体的代码示例。
36 0
|
3天前
|
SQL 数据库 数据安全/隐私保护
服务器数据恢复—raid5阵列故障因操作不当导致数据无法恢复的案例
服务器数据恢复环境: 一台服务器中有一组由4块SCSI硬盘组建的raid5磁盘阵列,划分了一个逻辑卷,操作系统为WINDOWS SERVER,作为SQL SERVER服务器使用。 服务器故障: 运行过程中该服务器raid5磁盘阵列瘫痪,管理员检查服务器发现raid5阵列中已经有3块磁盘离线。管理员选择其中2块离线硬盘进行强制上线操作,强制上线后操作系统无法启动。使用WINPE光盘启动操作系统后,可以看到数据。
|
4天前
|
JSON API 数据格式
基于服务器响应的实时天气数据进行JSON解析的详细代码及其框架
【8月更文挑战第25天】这段资料介绍了一个使用Python从服务器获取实时天气数据并解析JSON格式数据的基本框架。主要分为三个部分:一是安装必要的`requests`库以发起HTTP请求获取数据,同时利用Python内置的`json`库处理JSON数据;二是提供了具体的代码实现,包括获取天气数据的`get_weather_data`函数和解析数据的`parse_weather_data`函数;三是对代码逻辑进行了详细说明,包括如何通过API获取数据以及如何解析这些数据来获取温度和天气描述等信息。用户需要根据实际使用的天气API调整代码中的API地址、参数和字段名称。
|
8天前
|
SQL 监控 Oracle
Oracle数据误删不用怕,跟我来学日志挖掘
Oracle数据误删不用怕,跟我来学日志挖掘
13 0
|
12天前
|
Kubernetes 关系型数据库 API
实时计算 Flink版产品使用问题之连接的PG表长时间无数据写入,WAL日志持续增长,该如何解决
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
24天前
|
安全 API 数据库
OceanBase数据库clog日志,删前请三思!一不小心可能引发数据灾难,快来了解正确的日志管理之道!
【8月更文挑战第7天】ModelScope(魔搭)作为开放的模型即服务平台,提供丰富的预训练模型。访问令牌在此类平台中至关重要,用于验证用户身份并授权访问特定模型或服务。本文介绍访问令牌的概念、获取方法及使用示例,强调安全性与有效期内的使用,并简述刷新令牌机制。掌握这些知识可帮助用户安全高效地利用ModelScope的资源。
34 0
下一篇
云函数