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

简介: 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

相关实践学习
使用操作系统智能助手OS Copilot解锁操作系统运维与编程
在本实验场景中,将在阿里云ECS上体验OS Copilot产品。OS Copilot是阿里云操作系统团队基于大模型构建的OS智能助手。它具有自然语言问答、辅助命令执行、系统运维调优等功能,帮助用户更好地使用Linux,提升阿里云的使用体验。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
7月前
|
消息中间件 Java Kafka
搭建ELK日志收集,保姆级教程
本文介绍了分布式日志采集的背景及ELK与Kafka的整合应用。传统多服务器环境下,日志查询效率低下,因此需要集中化日志管理。ELK(Elasticsearch、Logstash、Kibana)应运而生,但单独使用ELK在性能上存在瓶颈,故结合Kafka实现高效的日志采集与处理。文章还详细讲解了基于Docker Compose构建ELK+Kafka环境的方法、验证步骤,以及如何在Spring Boot项目中整合ELK+Kafka,并通过Logback配置实现日志的采集与展示。
1221 64
搭建ELK日志收集,保姆级教程
|
数据可视化 关系型数据库 MySQL
ELK实现nginx、mysql、http的日志可视化实验
通过本文的步骤,你可以成功配置ELK(Elasticsearch, Logstash, Kibana)来实现nginx、mysql和http日志的可视化。通过Kibana,你可以直观地查看和分析日志数据,从而更好地监控和管理系统。希望这些步骤能帮助你在实际项目中有效地利用ELK来处理日志数据。
912 90
|
存储 消息中间件 网络协议
日志平台-ELK实操系列(一)
日志平台-ELK实操系列(一)
|
存储 监控 安全
|
分布式计算 资源调度 数据可视化
Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看
Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看
380 1
|
存储 消息中间件 监控
Java日志详解:日志级别,优先级、配置文件、常见日志管理系统ELK、日志收集分析
Java日志详解:日志级别,优先级、配置文件、常见日志管理系统、日志收集分析。日志级别从小到大的关系(优先级从低到高): ALL < TRACE < DEBUG < INFO < WARN < ERROR < FATAL < OFF 低级别的会输出高级别的信息,高级别的不会输出低级别的信息
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
542 9
|
11月前
|
监控 容灾 算法
阿里云 SLS 多云日志接入最佳实践:链路、成本与高可用性优化
本文探讨了如何高效、经济且可靠地将海外应用与基础设施日志统一采集至阿里云日志服务(SLS),解决全球化业务扩展中的关键挑战。重点介绍了高性能日志采集Agent(iLogtail/LoongCollector)在海外场景的应用,推荐使用LoongCollector以获得更优的稳定性和网络容错能力。同时分析了多种网络接入方案,包括公网直连、全球加速优化、阿里云内网及专线/CEN/VPN接入等,并提供了成本优化策略和多目标发送配置指导,帮助企业构建稳定、低成本、高可用的全球日志系统。
1091 54