ELK日志收集平台搭建

安装包下载

es:

https://www.elastic.co/es/downloads/past-releases/elasticsearch-7-17-0

kibana:

https://www.elastic.co/es/downloads/past-releases/kibana-7-17-0

logstash:

https://www.elastic.co/es/downloads/past-releases/logstash-7-17-0

windows

选择对应的操作系统下载安装包,解压。

es安装启动

不做任何配置也可以正常启动,试玩

在cmd中,切换到es安装目录 bin/elasticsearch.bat

kibana安装启动

配置文件修改

在kibana的解压目录下,找到config/kibana.yml配置文件,只需要修改2个地方:

elasticsearch.hosts:["xxxx.xxxx.xxx.xxxx:port"] --- 指定你的es的地址

i18.local:"zh-CN" ---指定中文界面

启动

cmd切换到对应目录:./bin/kibana.bat 启动即可

logstash安装

配置文件修改

在logstash的解压目录下,新增配置文件logstash.conf,配置内容如下:

input {

tcp {

mode => "server"

host => "0.0.0.0"

port => 5044

codec => json_lines

}

}

output {

elasticsearch {

hosts => ["xxx.xxxx.xxxx.xxxx:port"]

index => "logstash-xxx"

}

}

注意:该配置文件和bin文件在同一个目录

启动

cmd切换到logstash的目录 ./bin/logstash.bat -f logstash.conf

linux

1 创建对应的目录:

java 复制代码
mkdir -p /opt/elk/es

mkdir -p /opt/elk/kibana

mkdir -p /opt/elk/logstash

2 上传下载的压缩包到对应的目录

3 es安装

由于es在linux上不能用root用户执行,创建对应的用户和授权

Go 复制代码
 groupadd elk-test 
 useradd elk-test -g elk-test -p 123456 
 chown -R elk-test:elk-test /opt/elk/es/elasticsearch-7.17.0
 su elk-test   ---切换用户
 

配置文件修改

执行命令:vi /opt/elk/es/elasticsearch-7.17.0/config/elasticsearch.yml在末尾添加配置如下:

bash 复制代码
# 指定节点名称,每个节点名字唯一
node.name: es-node-1
# 绑定ip,开启远程访问,可以配置0.0.0.0
network.host: 0.0.0.0
# elasticsearch服务端口,可更改,默认就是9200
http.port: 9200
# 数据目录路径
path.data: /opt/elk/es/elasticsearch-7.17.0/data/
# 日志文件路径
path.logs: /opt/elk/es/elasticsearch-7.17.0/logs/
# 解决跨域问题
http.cors.enabled: true
http.cors.allow-origin: "*"
discovery.seed_hosts: ["127.0.0.1"]
cluster.initial_master_nodes: ["node-1"]

启动:

bash 复制代码
# 显示进程启动,可以查看启动是否异常
./bin/elasticsearch  
# 没问题后-后台启动
./bin/elasticsearch -d

如果出现报错,需要调整vm.max_map_count的数据就到对应的地方调整重启即可

kibana安装

配置文件修改

修改配置文件,增加如下3个配置

bash 复制代码
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://localhost:9200"]
i18n.locale: "zh-CN"

其中server.host:"0.0.0.0"表示可以在其他机器上访问

启动

./bin/kibana

应用日志接入

此时,只需要在logback.xml中增加对应的logstash配置即可把日志传递到logstash,再然后到es,最后在kibana中展示了

一下是一段logback.xml的配置示例

XML 复制代码
 <!-- 直接发送日志到Logstash (TCP方式) -->
    <appender name="LOGSTASH_TCP" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
        <!-- 替换为实际的Logstash服务器地址和端口 -->
        <destination>xxxx.xxxx.xxxx.xxxx:port</destination>
        <encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
            <providers>
                <timestamp>
                    <timeZone>Asia/Shanghai</timeZone>
                </timestamp>
                <pattern>
                    <pattern>
                        {
                        "severity": "%level",
                        "service": "agent-test",
                        "pid": "${PID:-}",
                        "thread": "%thread",
                        "class": "%logger{40}",
                        "message": "%message"
                        }
                    </pattern>
                </pattern>
            </providers>
        </encoder>
    </appender>
 
相关推荐
AI木马人15 小时前
16.【ELK日志系统实战】一次线上“定位失败”让我重构日志体系:如何在3分钟内定位AI系统问题?(完整可复现方案)
elk·重构
炸炸鱼.2 天前
ELK 企业级日志分析系统完整部署手册
elk·wpf
m0_737539375 天前
ELK企业日志分析系统
elk
LSL666_5 天前
快速Spring Cloud+ELK+AOP搭建一个简单的项目
spring·elk·spring cloud
JackSparrow4148 天前
使用Elasticsearch代替数据库like以加快查询的各种技术方案+实现细节
大数据·clickhouse·elk·elasticsearch·搜索引擎·postgresql·全文检索
工作log9 天前
从零搭建 ELK + Kafka 日志收集系统(Spring Boot + Logback 直连 Kafka)
spring boot·elk·kafka
總鑽風19 天前
搭建Spring Boot + ELK日志平台,实现可视化日志监控
spring boot·elk·macos
七七powerful19 天前
运维养龙虾--使用workbuddy专家模式一句话部署ELK 日志分析平台
elk·workbuddy
人间打气筒(Ada)22 天前
「码动四季·开源同行」go语言:如何使用 ELK 进行日志采集以及统一处理?
开发语言·分布式·elk·go·日志收集·分布式日志系统
艾伦_耶格宇22 天前
【ELK】-1 ELK的简要介绍
elk