当前位置: 首页 > news >正文

docker快速安装ELK

一、创建elk目录

创建/elk/elasticsearch/data/目录

mkdir -p /usr/local/share/elk/elasticsearch/data/

创建/elk/logstash/pipeline/目录

mkdir -p /usr/local/share/elk/logstash/pipeline/

创建/elk/kibana/conf/目录

mkdir -p /usr/local/share/elk/kibana/conf/

二、创建docker-compose.yml (linux没装docker和docker-compose的先自行百度装一下)

进入上述创建的elk目录

cd /usr/local/share/elk/

创建docker-compose.yml

vi docker-compose.yml,然后将下面的代码粘贴到文件中,最后保存即可

#docker-compose.yml
version: '3.3'services:elasticsearch:image: docker.elastic.co/elasticsearch/elasticsearch:8.5.3restart: alwayscontainer_name: elasticsearchports:- "9200:9200"- "9300:9300"environment:- discovery.type=single-node- xpack.security.enabled=falsevolumes:- /usr/local/share/elk/elasticsearch/data:/usr/share/elasticsearch/data"networks:- elk-netlogstash:image: docker.elastic.co/logstash/logstash:8.5.3restart: alwayscontainer_name: logstashports:- "5044:5044/tcp"- "9600:9600/tcp"volumes:- /usr/local/share/elk/logstash/pipeline:/usr/share/logstash/pipelinedepends_on:- elasticsearchnetworks:- elk-netkibana:image: docker.elastic.co/kibana/kibana:8.5.3restart: alwayscontainer_name: kibanaports:- "5601:5601"#volumes:#- /usr/local/share/elk/kibana/conf:/usr/share/kibana/configenvironment:- ELASTICSEARCH_HOSTS=http://elasticsearch:9200depends_on:- elasticsearchnetworks:- elk-netnetworks:elk-net:

三、创建logstash.conf 

进入上述创建的/elk/logstash/pipeline目录

cd /usr/local/share/elk/logstash/pipeline

创建logstash.conf 

vi logstash.conf 

将下面的代码复制粘贴到文件中保存即可

#logstash.conf
input {beats {port => 5044}
}filter {if [tags] =~ /wclflow/ {# 解析时间戳date {match => [ "message", "yyyy-MM-dd HH:mm:ss.SSS" ]target => "@timestamp"}# 提取其他字段grok {match => { "message" => "%{TIMESTAMP_ISO8601:timestamp} %{GREEDYDATA:remaining_message}" }add_field => [ "[@metadata][timestamp]", "%{timestamp}" ]}# 进一步分割日志grok {match => { "remaining_message" => "%{DATA:thread} %{LOGLEVEL:level} %{GREEDYDATA:message}" }}# 移除原始消息中的时间戳mutate {remove_field => [ "message" ]}# 添加时间戳字段date {match => [ "timestamp", "yyyy-MM-dd HH:mm:ss.SSS" ]target => "@timestamp"}}
}output {elasticsearch {hosts => ["http://elasticsearch:9200"]index => "wclflow-logs-%{+YYYY.MM.dd.HH.mm.ss}"}
}

四、启动ELK

先进入/usr/local/share/elk目录,然后启动ELK

cd /usr/local/share/elk && docker-compose up -d

启动命令执行后,等待十多秒后,查看容器运行情况,如下图表示启动成功

五、kibana汉化

将kibana容器里的配置文件复制出来,修改后再复制到容器里

进入第一步创建的kibana配置目录

cd /usr/local/share/elk/kibana/conf/

复制容器内的配置文件到当前目录

docker cp kibana:/usr/share/kibana/config/kibana.yml .

修改kibana.yml,在最后一行回车后,加上这段内容:i18n.locale: zh-CN

如下图填写,保存即可

保存成功后,将kibana.yml复制回容器,然后重启kibana服务

复制回容器

docker cp ./kibana.yml kibana:/usr/share/kibana/config/

重启kibana服务

 docker-compose up -d kibana

六、浏览器访问

docker ps查看容器状态,如图所示,表示ELK服务已正常运行

打开浏览器访问http://192.168.7.46:5601/,注意ip是你的服务器ip,端口就是5601,首次访问页面如下,需要先配置Elastic,我们选择自己手动配置一下,然后配置Elastic服务地址,修改下ip和端口,如我就是配置的是192.168.7.46:9200

如果汉化不生效,试试docker restart kibana   或者  systemctl restart kibana这两个个命令,分别试一下。我的重启后再次访问,效果如下:

http://www.lryc.cn/news/453612.html

相关文章:

  • GS-SLAM论文阅读笔记-CaRtGS
  • 15分钟学 Python 第36天 :Python 爬虫入门(二)
  • Spring:强制登陆与拦截器
  • MySQL-数据库约束
  • 线性表三——队列queue
  • 算法笔记(十)——队列+宽搜
  • webpack配置全面讲解【完整篇】
  • 十、kotlin的协程
  • vscode qt 最新开发环境配置, 基于最新插件 Qt All Extensions Pack
  • 【MySQL】Ubuntu环境下MySQL的安装与卸载
  • C# StringBuilder类:高效构建和修改字符串的利器
  • AVL平衡树(AVL Tree)
  • 【python实操】python小程序之两数取大值以及login登录
  • Pikachu-File Inclusion-远程文件包含
  • TIM(Timer)定时器的原理
  • Microsoft Visual Studio有多油饼
  • Golang | Leetcode Golang题解之第452题用最少数量的箭引爆气球
  • Python 从入门到实战35(进程-multiprocessing模块)
  • “米哈游悄然布局未来科技:入股星海图,共绘具身智能机器人新篇章“
  • 基于spring boot的篮球论坛系统
  • 华夏ERP账号密码泄露漏洞
  • Android问题笔记五十:构建错误-AAPT2 aapt2-7.0.2-7396180-windows Daemon
  • CAD 3dsmax maya等autodesk系列专用卸载修复工具AutoRemove,一键完全彻底卸载删除软件的专用卸载工具
  • python中的函数介绍
  • LinuxO(1)调度算法
  • 安防监控/视频系统EasyCVR视频汇聚平台如何过滤134段的告警通道?
  • SDKMAN!安装Maven
  • [NeurIPS 2022] STaR: Bootstrapping Reasoning With Reasoning
  • C++中对象的构造与析构
  • 算法笔记(九)——栈