IT评测·应用市场-qidao123.com
标题:
docker搭建elk
[打印本页]
作者:
河曲智叟
时间:
15 小时前
标题:
docker搭建elk
1.拉取镜像
docker pull elasticsearch:7.16.3
docker pull logstash:7.16.3
docker pull kibana:7.16.3
复制代码
2.ES配置
elasticsearch.yml
http.host: 0.0.0.0
xpack.security.enabled: false
xpack.license.self_generated.type: basic
xpack.security.transport.ssl.enabled: false
network.host: 0.0.0.0
复制代码
3.logstash配置
logstash.yml
http.host: 0.0.0.0
xpack.monitoring.elasticsearch.hosts: [ "http://es7163:9200" ]
复制代码
logstash.conf:
input {
tcp {
mode => "server"
host => "0.0.0.0"
port => 5044
codec => json_lines
}
}
filter{
}
output {
elasticsearch {
hosts => "es7163:9200"
index => "tingshu-%{+YYYY.MM.dd}"
}
}
复制代码
4.kibana配置
kibana.yml:
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://es7163:9200"]
i18n.locale: "zh-CN"
复制代码
5.创建自界说网络
docker network create elk
复制代码
6.docker-compose.yml文件
version: '3'
services:
elasticsearch:
image: elasticsearch:7.16.3
container_name: es7163
networks:
- elk
environment:
- ES_JAVA_OPTS=-Xms1024m -Xmx1024m
- discovery.type=single-node
ports:
- "9200:9200"
- "9300:9300"
volumes:
- /usr/local/es/data:/usr/share/elasticsearch/data
- /usr/local/es/plugins:/usr/share/elasticsearch/plugins
- /usr/local/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
restart: always
logstash:
image: logstash:7.16.3
container_name: logstash7163
networks:
- elk
deploy:
resources:
limits:
cpus: '2'
memory: 4g
ports:
- "5044:5044" # Logstash 默认端口
- "9600:9600"
volumes:
- /usr/local/logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml # 配置文件
- /usr/local/logstash/config/logstash.conf:/usr/share/logstash/pipeline/logstash.conf # 配置文件
restart: always
depends_on:
- elasticsearch
kibana:
image: kibana:7.16.3
container_name: kibana7163
networks:
- elk
ports:
- "5601:5601"
volumes:
- /usr/local/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml
restart: always
depends_on:
- elasticsearch
networks:
elk:
driver: bridge
复制代码
7.springboot对接Logstash
1.创建一个springboot项目引入主要依赖
<dependency>
<groupId>net.logstash.logback</groupId>
<artifactId>logstash-logback-encoder</artifactId>
<version>6.6</version>
</dependency>
复制代码
2.application.yml配置
server:
port: 8080
logging:
config: classpath:logback-spring.xml
spring:
application:
name: linging-test
复制代码
3.resources目录中新增logback-spring.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/base.xml" />
<springProperty scope="context" name="springAppName" source="spring.application.name"/>
<springProperty scope="context" name="serverPort" source="server.port"/>
<appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<!--logstash的服务地址和端口,可以实际情况设置-->
<destination>192.168.159.100:5044</destination>
<!-- 日志输出编码 -->
<encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder">
<providers>
<timestamp>
<timeZone>UTC</timeZone>
</timestamp>
<pattern>
<pattern>
{
<!--应用名称 -->
"app": "${springAppName}_${serverPort}",
<!--打印时间 -->
"timestamp": "%d{yyyy-MM-dd HH:mm:ss.SSS}",
<!--线程名称 -->
"thread": "%thread",
<!--日志级别 -->
"level": "%level",
<!--日志名称 -->
"logger_name": "%logger",
<!--日志信息 -->
"message": "%msg",
<!--日志堆栈 -->
"stack_trace": "%exception"
}
</pattern>
</pattern>
</providers>
</encoder>
</appender>
<!--定义日志文件的存储地址,使用绝对路径-->
<property name="LOG_HOME" value="/home/logs"/>
<!-- 按照每天生成日志文件 -->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<fileNamePattern>${LOG_HOME}/${springAppName}-${serverPort}-%d{yyyy-MM-dd}.log</fileNamePattern>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="LOGSTASH" />
<appender-ref ref="FILE" />
<appender-ref ref="CONSOLE" />
</root>
</configuration>
复制代码
4.启动项目,搞点日记
5.进入kibana控制台
6.添加索引模式
7.检索日记,打开Discover
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/)
Powered by Discuz! X3.4