1.搜索Docker仓库中Logstash相关的镜像
docker search logstash
image.png
2.下载Logstash:7.10.1的镜像
这里一定要记得和Elasticsearch版本统一
docker pull logstash:7.10.1
image.png
等加载完成
启动
docker run -d --name=logstash logstash:7.10.1
查看日志
docker logs -f -n=10000 logstash
图片.png
这就是成功了
3.配置文件
创建文件赋予权限
docker cp logstash:/usr/share/logstash /data/elk7/
mkdir /data/elk7/logstash/config/conf.d
chmod 777 -R /data/elk7/logstash
添加配置文件
vi /data/elk7/logstash/config/logstash.yml
配置文件/data/elk7/logstash/config/logstash.yml,内容如下
http.host: "0.0.0.0"
xpack.monitoring.elasticsearch.hosts: [ "http://192.168.0.1:9200" ]
path.config: /usr/share/logstash/config/conf.d/*.conf
path.logs: /usr/share/logstash/logs
注意:请根据实际情况修改elasticsearch地址
新建文件syslog.conf,用来收集/var/log/messages
vi /data/elk7/logstash/config/conf.d/syslog.conf
syslog.conf文件,内容如下:
input {
file {
#标签
type => "systemlog-localhost"
#采集点
path => "/var/log/messages"
#开始收集点
start_position => "beginning"
#扫描间隔时间,默认是1s,建议5s
stat_interval => "5"
}
}
output {
elasticsearch {
hosts => ["192.168.0.1:9200"]
index => "logstash-system-localhost-%{+YYYY.MM.dd}"
}
}
设置日志文件读取权限
chmod 644 /var/log/messages
删掉之前的容器重新启动
docker rm -f logstash
四、启动容器 挂载的conf.d目录是放置一些配置文件,比如要同步从mysql同步数据到es,配置文件就放到这个目录下面(便于管理)
docker run -d \
--name=logstash \
--restart=always \
-p 5044:5044 \
-v /data/elk7/logstash:/usr/share/logstash \
-v /var/log/messages:/var/log/messages \
logstash:7.10.1
五、查看是否启动正常
docker ps
图片.png
创建索引了就是成功了
六、安装Logstash-input-jdbc插件
进入容器
docker exec -it <容器ID> /bin/bash
cd /usr/share/logstash/bin
查看插件列表
logstash-plugin list --verbose
图片.png
这里看到Logstash-input-jdbc被包含了就下载logstash-integration-jdbc
logstash-plugin install logstash-integration-jdbc
图片.png
这就成功了
网友评论