江门网站优化排名,wordpress 微信主题,什么是seo站内优化,网页图片保存【Springcloud】elk分布式日志 【一】基本介绍【二】Elasticsearch【1】简介【2】下载【3】安装【4】启动 【三】Logstash【1】简介【2】下载【3】安装【4】启动 【四】Kibana【1】简介【2】下载【3】安装【4】启动 【五】切换中文【六】日志收集 【一】基本介绍
#xff08;… 【Springcloud】elk分布式日志 【一】基本介绍【二】Elasticsearch【1】简介【2】下载【3】安装【4】启动 【三】Logstash【1】简介【2】下载【3】安装【4】启动 【四】Kibana【1】简介【2】下载【3】安装【4】启动 【五】切换中文【六】日志收集 【一】基本介绍
1什么是分布式日志
在分布式应用中日志被分散在储存不同的设备上。如果你管理数十上百台服务器你还在使用依次登录每台机器的传统方法查阅日志。这样是不是感觉很繁琐和效率低下。所以我们使用集中化的日志管理分布式日志就是对大规模日志数据进行采集、追踪、处理。
2为什么要使用分布式日志
一般我们需要进行日志分析场景直接在日志文件中grep、awk就可以获得自己想要的信息。但在规模较大的场景中此方法效率低下面临问题包括日志量太大如何归档、文本搜索太慢怎么办、如何多维度查询。需要集中化的日志管理所有服务器上的日志收集汇总。常见解决思路是建立集中式日志收集系统将所有节点上的日志统一收集管理访问。
3ELK 分布式日志 实际上ELK是三款软件的简称分别是Elasticsearch、 Logstash、Kibana组成。
Elasticsearch 基于java是个开源分布式搜索引擎它的特点有分布式零配置自动发现索引自动分片索引副本机制restful风格接口多数据源自动搜索负载等。
Kibana 基于nodejs也是一个开源和免费的工具Kibana可以为Logstash和ElasticSearch提供的日志分析友好的Web 界面可以汇总、分析和搜索重要数据日志。
Logstash 基于java是一个开源的用于收集,分析和存储日志的工具。
4ELK的工作原理
【二】Elasticsearch
【1】简介
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎基于RESTful web接口。Elasticsearch是用Java开发的并作为Apache许可条款下的开放源码发布是当前流行的企业级搜索引擎。设计用于云计算中能够达到实时搜索稳定可靠快速安装使用方便。
我们建立一个网站或应用程序并要添加搜索功能但是想要完成搜索工作的创建是非常困难的。我们希望搜索解决方案要运行速度快我们希望能有一个零配置和一个完全免费的搜索模式我们希望能够简单地使用JSON通过HTTP来索引数据我们希望我们的搜索服务器始终可用我们希望能够从一台开始并扩展到数百台我们要实时搜索我们要简单的多租户我们希望建立一个云的解决方案。因此我们利用Elasticsearch来解决所有这些问题及可能出现的更多其它问题。
ElasticSearch是Elastic Stack的核心同时Elasticsearch 是一个分布式、RESTful风格的搜索和数据分析引擎能够解决不断涌现出的各种用例。作为Elastic Stack的核心它集中存储您的数据帮助您发现意料之中以及意料之外的情况。
【2】下载
到官网下载 (https://www.elastic.co/cn/downloads/elasticsearch )
【3】安装
解压到相应目录
tar -zxvf elasticsearch-7.10.2-linux-x86_64.tar.gz -C /usr/local修改配置
cd /usr/local/elasticsearch-7.10.2/config/
vim elasticsearch.ymlnode.name: node-1
path.data: /usr/local/elasticsearch-7.10.2/data
path.logs: /usr/local/elasticsearch-7.10.2/logs
network.host: 127.0.0.1
http.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: [127.0.0.1]
cluster.initial_master_nodes: [node-1]创建es用户 因为ElasticSearch不支持Root用户直接操作因此我们需要创建一个es用户
useradd es
chown -R es:es /usr/local/elasticsearch-7.10.2【4】启动
切换用户成es用户进行操作
su - es
/usr/local/elasticsearch-7.10.2/bin/elasticsearch后台启动
/usr/local/elasticsearch-7.10.2/bin/elasticsearch -d 在浏览器打开9200端口地址 (http://120.78.129.95:9200/)如果出现了下面的信息就表示已经成功启动了 【三】Logstash
【1】简介
Logstash是一个开源的服务器端数据处理管道能够同时从多个来源采集数据转换数据然后将数据发送到最喜欢的存储库中我们的存储库当然是ElasticSearch
【2】下载
到官网下载 (https://www.elastic.co/cn/downloads/logstash ) 【3】安装
解压到相应目录
tar -zxvf logstash-7.10.2.tar.gz -C /usr/local新增配置文件
cd /usr/local/logstash-7.10.2/bin
vim logstash-elasticsearch.confinput {stdin {}
}
output {elasticsearch {hosts 120.78.129.95:9200}stdout {codec rubydebug}
}【4】启动
./logstash -f logstash-elasticsearch.conf【四】Kibana
【1】简介
Kibana 是一款开源的数据分析和可视化平台它是 Elastic Stack 成员之一设计用于和 Elasticsearch 协作。您可以使用 Kibana 对 Elasticsearch 索引中的数据进行搜索、查看、交互操作。您可以很方便的利用图表、表格及地图对数据进行多元化的分析和呈现。
【2】下载
到官网下载 (https://www.elastic.co/cn/downloads/kibana)
【3】安装
解压到相应目录
tar -zxvf kibana-7.10.2-linux-x86_64.tar.gz -C /usr/local
mv /usr/local/kibana-7.10.2-linux-x86_64 /usr/local/kibana-7.10.2修改配置
cd /usr/local/kibana-7.10.2/config
vim kibana.ymlserver.port: 5601
server.host: 0.0.0.0
elasticsearch.hosts: [http://120.78.129.95:9200]
kibana.index: .kibana授权es用户
chown -R es:es /usr/local/kibana-7.10.2/【4】启动
切换用户成es用户进行操作
su - es
/usr/local/kibana-7.10.2/bin/kibana 后台启动
/usr/local/kibana-7.10.2/bin/kibana 在浏览器打开5601端口地址 (http://120.78.129.95:5601/)如果出现了下面的信息就表示已经成功启动了
【五】切换中文
在config/kibana.yml添加
i18n.locale: zh-CN【六】日志收集
对应服务器安装logstash配置规则例如新建logstash-apache.conf
input {file {path /home/ruoyi/logs/sys-*.logstart_position beginningsincedb_path /dev/nullcodec multiline {pattern ^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}negate trueauto_flush_interval 3what previous}}
}filter {if [path] ~ info {mutate { replace { type sys-info } }grok {match { message %{COMBINEDAPACHELOG} }}date {match [ timestamp , dd/MMM/yyyy:HH:mm:ss Z ]}} else if [path] ~ error {mutate { replace { type sys-error } }} else {mutate { replace { type random_logs } }}
}output {elasticsearch {hosts 120.78.129.95:9200}stdout { codec rubydebug }
}启动logstash
./logstash -f logstash-apache.conf通过kibana可视化检索各个服务日志数据