docker-compose部署ELK

ELK部署 (docker-compose方式) ELK的部署方式有很多种,这里我介绍一种简单的部署方式:docker-compose 一、docker-compose.yml version: "3.2" services: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:7.4.2 container_name: elast... 阅读详情
Elastic Stack
elasticsearch集群
mkdir ~/elasticsearch/data{01...03}
mkdir ~/elasticsearch/logs{01...03}
制作数字证书
# 启动一个临时容器
sudo docker run --name elasticsearch -exec -it --rm elasticsearch:7.14.1 /bin/bash
./bin/elasticsearch-certutil ca
./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12 --out config/elastic-certificates.p12
chmod 644 config/elastic-certificates.p12
# 导出容器
sudo docker cp elasticsearch:/user/share/elasticsearch/config/elastic-certificates.p12 ~/elasticsearch/
docker-compose.yml
version: '3.8'

services:
  es01:
    image: elasticsearch:7.14.1
    container_name: es01
    privileged: true
    environment:
      - node.name=es01
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es02,es03
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - xpack.security.enabled=true
      - xpack.security.transport.ssl.enabled=true
      - xpack.monitoring.collection.enabled=true
      - xpack.security.transport.ssl.verification_mode=certificate
      - xpack.security.transport.ssl.keystore.path=elastic-certificates.p12
      - xpack.security.transport.ssl.truststore.path=elastic-certificates.p12
      - "ES_JAVA_OPTS=-Xms32G -Xmx32G"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - ~/elasticsearch/data01:/usr/share/elasticsearch/data
      - ~/elasticsearches/log01:/usr/share/elasticsearch/logs
      - ~/elasticsearch/elastic-certificates.p12:/usr/share/elasticsearch/config/elastic-certificates.p12
    ports:
      - 9200:9200
    networks:
      - elastic
  es02:
    image: elasticsearch:7.14.1
    container_name: es02
    privileged: true
    environment:
      - node.name=es02
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es01,es03
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - xpack.security.enabled=true
      - xpack.security.transport.ssl.enabled=true
      - xpack.monitoring.collection.enabled=true
      - xpack.security.transport.ssl.verification_mode=certificate
      - xpack.security.transport.ssl.keystore.path=elastic-certificates.p12
      - xpack.security.transport.ssl.truststore.path=elastic-certificates.p12
      - "ES_JAVA_OPTS=-Xms32G -Xmx32G"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - ~/elasticsearches/data02:/usr/share/elasticsearch/data
      - ~/elasticsearches/log02:/usr/share/elasticsearch/logs
      - ~/elasticsearches/elastic-certificates.p12:/usr/share/elasticsearch/config/elastic-certificates.p12
    networks:
      - elastic
  es03:
    image: elasticsearch:7.14.1
    container_name: es03
    privileged: true
    environment:
      - node.name=es03
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es01,es02
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - xpack.security.enabled=true
      - xpack.security.transport.ssl.enabled=true
      - xpack.monitoring.collection.enabled=true
      - xpack.security.transport.ssl.verification_mode=certificate
      - xpack.security.transport.ssl.keystore.path=elastic-certificates.p12
      - xpack.security.transport.ssl.truststore.path=elastic-certificates.p12
      - "ES_JAVA_OPTS=-Xms32G -Xmx32G"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - ~/elasticsearches/data03:/usr/share/elasticsearch/data
      - ~/elasticsearches/log03:/usr/share/elasticsearch/logs
      - ~/elasticsearches/elastic-certificates.p12:/usr/share/elasticsearch/config/elastic-certificates.p12
    networks:
      - elastic

networks:
  elastic:
    driver: bridge
设置认证
./bin/elasticsearch-setup-passwords interactive			#设置密码 Unique#2021
Enter password for [elastic]: 
Reenter password for [elastic]: 
Enter password for [apm_system]: 
Reenter password for [apm_system]: 
Enter password for [kibana]: 
Reenter password for [kibana]: 
Enter password for [logstash_system]: 
Reenter password for [logstash_system]: 
Enter password for [beats_system]: 
Reenter password for [beats_system]: 
Enter password for [remote_monitoring_user]: 
Reenter password for [remote_monitoring_user]: 
Changed password for user [apm_system]
Changed password for user [kibana]
Changed password for user [logstash_system]
Changed password for user [beats_system]
Changed password for user [remote_monitoring_user]
Changed password for user [elastic]
kibana
kibana.yml
server.port: 5601
server.host: "0"
server.publicBaseUrl: "http://visitIP:5601"
elasticsearch.hosts: ["http://esIP:9200"]
elasticsearch.username: "elastic"
elasticsearch.password: "Unique#2021"
kibana.index: ".kibana"
i18n.locale: "zh-CN"
docker-compose.yml
version: '3.8'

services:
  kbana:
    container_name: kibana
    hostname: kibana
    image: kibana:7.14.1
    restart: always
    privileged: true
    volumes:
      - ~/kibana.yml:/usr/share/kibana/config/kibana.yml
    ports:
      - 5601:5601
logstash
mkdir -p ~/config/conf.d
touch ~/config/logstash.yml
touch ~/config/conf.d/logstash-filebeat.conf
logstash.yml
http.host: "0.0.0.0"
path.logs: /usr/share/logstash/logs

xpack.monitoring.enabled: true
xpack.monitoring.elasticsearch.hosts: ["http://esIP:9200"]
xpack.monitoring.elasticsearch.username: logstash_system
xpack.monitoring.elasticsearch.password: Unique#2021
pipelines.yml
- pipeline.id: wonotice_2
  path.config: "/usr/share/logstash/pipeline/wonotice_2.conf"
- pipeline.id: wonotice_3
  path.config: "/usr/share/logstash/pipeline/wonotice_3.conf"
- pipeline.id: wonotice_4
  path.config: "/usr/share/logstash/pipeline/wonotice_4.conf"
- pipeline.id: wonotice_5
  path.config: "/usr/share/logstash/pipeline/wonotice_5.conf"
application-1.conf
input {
  beats {
  port => 5017
  host => "0.0.0.0"
  }
}
filter {
  multiline {
  pattern => "^[\[202]"
  negate => true
  what => "previous"
  }
  grok {
  match => {"message" => "%{TIMESTAMP_ISO8601:date} .* %{LOGLEVEL:level} %{GREEDYDATA:information}"}
  }
  mutate {
    replace => {"tags" => "syncData"}
  }
  prune {
    whitelist_names => ["@timestamp","tags","date","level","information"]
  } 
} 
output {
  elasticsearch{
    hosts => ["http://10.236.14.127:9200"]
    user =>  "elastic"
    password => "Unique#2021"
    manage_template => false
    index => "syncdata-%{+YYYY.MM.dd}"
  }
}

application-2.conf
input {
  beats {
  port => 5017
  host => "0.0.0.0"
  }
}
filter {
  multiline {
  pattern => "^[\[202]"
  negate => true
  what => "previous"
  }
  grok {
  match => {"message" => "\[%{LOGLEVEL:level}.*\] %{TIMESTAMP_ISO8601:date} %{GREEDYDATA:information}"}
  }
  mutate {
    replace => {"tags" => "syncData"}
  }
  prune {
    whitelist_names => ["@timestamp","tags","date","level","information"]
  } 
} 
output {
  elasticsearch{
    hosts => ["http://10.236.14.127:9200"]
    user =>  "elastic"
    password => "Unique#2021"
    manage_template => false
    index => "syncdata-%{+YYYY.MM.dd}"
  }
}

docker-compose.yml
version: '3.8'
  
services:
  logstash:
    container_name: logstash
    hostname: logstash
    image: logstash:7.14.1
    privileged: true
    restart: always
    volumes:
      - /home/deployer/ELK/logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml
      - /home/deployer/ELK/logstash/config/pipelines.yml:/usr/share/logstash/config/pipelines.yml
      - /home/deployer/ELK/logstash/config/pipeline/:/usr/share/logstash/pipeline/
      - /orabak/unique/logstash/data:/usr/share/logstash/data
    environment:
      - "LG_JAVA_OPTS=-Xms32G -Xmx32G"
    ports:
      - 5011:5011
      - 5012:5012
      - 5013:5013
      - 5014:5014
      - 5015:5015
docker-compose
sudo cp docker-compose /usr/bin/
启动
~/elasticsearch/:
	sudo docker-compose -f docker-compose.yml up -d
	sudo docker-compose down
~/kibana/:
	sudo docker-compose -f docker-compose.yml up -d
	sudo docker-compose down
~/logstah/:
	sudo docker-compose -f docker-compose.yml up -d
	sudo docker-compose down
filebeat
filebeat.yml
filebeat.inputs:

- type: log

  enabled: true
  encoding: gbk
  paths:
    - /home/unionmon/wonotice_2/logs/catalina.out
  tags: ["wonotice_2"]
  multiline.pattern: '^\['
  multiline.negate: true
  multiline.match: previous

filebeat.config.modules:
  path: ${path.config}/modules.d/*.yml
  reload.enabled: false

output.logstash:
  hosts: ["logstashIP:5044"]
启动
./filebeat -e -c filebeat.yml > filebeat.log &
Linux Docker Compose 搭建ELK 7.17.2版本 Spring boot使用Logback日志框架对Logstash进行传输数据,Logstash进行数据过滤采集,发送到Elasticsearch,再由Kibana可视化页面展示日志查询 阅读详情

相关推荐

深入RK3588内存管理:如何用dma_buf_alloc和mpp_buffer为RGA2分配4G以内内存(附kernel版本选择)

本文深入探讨了RK3588平台上RGA2核心的4G内存限制问题,详细解析了dma_buf_alloc和mpp_buffer两种内存分配方案的技术细节与适用场景。通过代码示例和性能对比,帮助开发者优化高分辨率视频处理流程,并提供了内核版本选择与常见错误排查指南。

weixin_29168153的博客 364

别再手动配环境了!用Docker Compose一键部署ELK 7.17.2(附SpringBoot日志接入完整配置)

本文详细介绍了如何使用Docker Compose一键部署ELK 7.17.2日志系统,并提供了SpringBoot日志接入的完整配置。通过Docker Compose的版本锁定、资源隔离和一键编排优势,大幅简化了ELK的部署流程,同时分享了Logback配置、日志字段设计和Kibana可视化等实战技巧,帮助开发者快速搭建生产级日志中心。

weixin_42665255的博客 341

Matlab安装Embedded Coder Support Package for Texas Instruments C2000 Processors教程

Matlab安装Embedded Coder Support Package for Texas Instruments C2000 Processors

m0_69133594的博客 2823

【基于Docker-Compose安装ELK日志系统完整操作步骤】

本文主要介绍ELK日志收集分析平台的完整搭建步骤,博主才疏学浅,很多知识都不太懂,遇到的坑比较多,不过都能靠着坚定的意志,一步一步的把问题都解决了,希望这篇文章能给读者们带来帮助,让大家少走一些弯路。

weixin_43755251的博客 3129

【机器人】线性方程最小二乘解法对机械臂DH参数进行标定

1.前言 看了一篇文章,觉得里面的DH参数标定法讲的很清晰,便使用Matlab复现了一下,效果还可以,特写此文记录。 2.原理 2.1.误差最佳值的最小二乘计算 有研究结果表明:几乎95%的机器人位置误差都是由机器人内部运动学的不准确描述引起的,所以对DH模型参数进行标定是很有必要的。 DH参数物理含义:选自《机器人学、机器视觉与控制-Matlab基础》 当DH参数确定后,我们...

要恰饭得嘛 1万+

430单片机实现三人投票表决器_基于单片机的五人表决器的设计

姚海云+马野摘要:本设计利用51单片机,按键开关模块,数码管显示模块和LED模块来实现一个简单的五人表决器的功能。按键开关模块中的键2~键6表示五个人,由5个人来投票,当同意的票数大于或者等于3人时,数码管显示同意的人数,说明表决通过。当表决的人数小于3时,数码管显示同意的人数。关键词:表决器;单片机;流水灯;数码管;矩阵键盘;时钟中图分类号:TP391 文献标识码:A 文章编号:1009-304...

weixin_33277215的博客 2557

Docker compose 安装 ELK

3 个节点组成高可用集群。Logstash:至少部署 2 个实例,实现高可用性和负载均衡。Redis:根据业务需求选择单机或集群模式。Filebeat:部署在每个日志源服务器上,负责收集日志并发送到 Redis。Kibana:通常部署 1 个实例,除非有高并发访问需求。通过这种部署架构,可以确保日志收集、处理、存储和展示的高可用性和扩展性。

ygqygq2的IT博客 3805

别再只用串口助手了!用LabVIEW给STM32F103C8T6做个专属上位机(附完整源码)

本文详细介绍了如何利用LabVIEW为STM32F103C8T6开发定制化上位机,替代传统串口助手,实现高效数据交互。内容涵盖硬件架构设计、STM32固件优化、LabVIEW上位机开发技巧及工业级应用案例,特别适合需要实时数据采集与处理的工控场景。

weixin_42524762的博客 367

Docker-Compose部署ELK教程

Docker-Compose部署ELK教程

sunjob_s72的博客 1705

PLC模糊控制模糊PID(梯形图实现+算法分析)

博途PLC的模糊PID控制详细内容请查看下面的博客文章:Matlab仿真+博途PLC模糊PID控制完整SCL源代码参考(带模糊和普通PID切换功能)_博途怎么实现模糊pid_RXXW_Dor的博客-优快云博客模糊PID的其它相关数学基础,理论知识大家可以参看专栏的其它文章,这里不再赘述,本文就双容水箱的模糊PID问题做详细讲解(包括所有源代码和模糊规则设置参数)。

RXXW_Dor的博客 5883

Python爬虫实战:模拟登录知乎 – 通过加密参数和验证码实现自动登录

通过本篇博客的讲解,我们学习了如何通过 POST请求 和 验证码识别,模拟登录知乎并爬取用户信息、问题数据。随着爬虫技术的发展,面对更复杂的反爬虫机制,我们可以不断调整策略,以绕过这些防护,实现数据的自动化抓取。

2201_76125261的博客 731

Docker-Compose部署ELK

Docker-Compose部署ELK

weixin_44359151的博客 3028

7、布尔网络的基础定义

本文介绍了布尔网络的基础定义及其在系统生物学中的应用。布尔网络是一种描述复杂系统动态行为的数学模型,由布尔变量和布尔函数组成,能够模拟生物系统中基因调控、信号传导和细胞代谢等过程。文章详细阐述了布尔网络的基本结构、动力学特征(如状态转移图和吸引子),以及其在生物建模中的重要价值,并探讨了优化和简化技术(如Backward Boolean Equivalence)如何提升其计算效率。

yhn45678901的博客 262

SpringBoot整合ELK + Docker Compose部署

ELK 架构是一套用于日志收集、处理和可视化的完整解决方案,由三个核心组件组成:Elasticsearch、Logstash 和 Kibana。以下是对 ELK 架构的详细解释:基本概念和组成部分‌Elasticsearch‌:一个分布式搜索和分析引擎,提供实时的全文搜索、结构化搜索和分析功能。‌Logstash‌:一个数据收集引擎,能够从多种数据源自动收集数据,对数据进行过滤和转换,然后输出到 Elasticsearch。

qq_43604366的博客 956

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Docker-compose部署ELK

Docker-compose部署单机ELK环境主机IP 192.168.0.9Docker version 19.03.2docker-compose version 1.24.0-rc1elasticsearch version 6.6.1kibana version 6....

bawei5098的博客 979

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

ELK Docker与Docker Compose集成:现代化部署与管理策略

ELK Stack(Elasticsearch、Logstash、Kibana)作为日志管理和分析的黄金组合,在容器化时代需要更高效的部署方案。本文将详解如何通过Docker Compose实现ELK的一键部署、无缝扩展和简化管理,帮助新手用户快速构建企业级日志分析平台。 ## 为什么选择Docker Compose部署ELK? 传统ELK部署面临组件版本兼容、依赖配置复杂和跨平台一致性等挑战

gitblog_00682的博客 639

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Docker Compose 部署 ELK 技术栈:日志采集与分析

通过使用Docker Compose部署ELK技术栈,我们可以更高效地进行日志采集与分析。易用性:通过清晰的描述和准确的配置,可以更好地理解日志数据。实用性:在实际应用中,通过详细的操作指南和实用性。专业水平:通过详细说明,可以更好地理解ELK技术栈的专业水平。实用性:通过准确的描述,可以更好地应用ELK技术栈。

2501_92486745的博客 850

通过Docker Compose部署EFK/ELK进行Docker日志采集

一个开源的分布式搜索和分析引擎,用于存储和查询日志数据。它是 EFK 的核心组件,负责高效地存储和检索日志信息。Filebeat:一个轻量级的日志采集器,主要用于将日志文件数据发送到 Logstash 或 Elasticsearch。Filebeat 设计用于高效地转发和处理日志数据,具有低内存消耗和可靠的传输能力。Kibana:一个开源的数据可视化平台,与 Elasticsearch 配合使用,用于创建图表、仪表板和报告,以便对日志数据进行分析和展示。

https://ophome.blog.youkuaiyun.com,在IT行业有多年的工作经验,尤其是在Python、Linux、负载均衡、Nginx和服务器运维等领域。 1436

Docker Compose 部署 ELK:日志采集、存储与分析

Elasticsearch是一款强大的开源搜索和分析引擎,它基于Apache Lucene构建,支持全文搜索、结构化搜索以及复杂的聚合分析。Elasticsearch广泛应用于日志数据、社交数据、实时监控等领域。本文详细介绍了如何使用Docker Compose部署ELK栈,实现日志的采集、存储与分析。易于部署:Docker Compose简化了ELK栈的部署过程,降低了运维成本。灵活性:ELK栈支持多种日志采集和处理方式,适应不同的业务场景。高扩展性。

2501_91460574的博客 537

Docker Compose 快速部署 ELK,避坑指南 + 全配置

核心前提:部署前必须调整内核参数,否则 ES 启动失败。配置关键ES 核心配置:禁用安全认证(新手)、设置单机模式、绑定 0.0.0.0 允许外部访问;Logstash 核心:管道配置(input/filter/output)需指向 ES 服务名;Kibana 核心:指定 ES 地址、开启中文界面(可选)。验证步骤:优先检查 ES 可用性,再验证 Kibana 访问,最后测试 Logstash 数据输出。

毛尖 578

Docker Compose 部署 ELK:日志存储与检索效率优化

本文从 Docker Compose 部署 ELK 的角度,详细阐述了日志存储与检索效率的优化策略。通过合理配置索引生命周期管理、选择合适的存储介质、优化映射和查询,我们可以显著提高 ELK 的性能,为日志管理提供高效、可靠的解决方案。在未来,我们可以继续探索更多优化策略,如使用更先进的存储技术、引入人工智能算法等,以满足日益增长的日志处理需求。

2501_92487436的博客 378

Docker Compose 部署 ELK:日志采集、存储与分析全流程

Elasticsearch是一款高度可扩展的开源全文搜索引擎,用于快速、高效地搜索和分析大量数据。它基于Lucene构建,提供了丰富的查询语言和数据分析功能。本文详细介绍了如何使用Docker Compose部署ELK,实现日志采集、存储与分析的全流程。ELK作为一种强大的日志处理和分析平台,能够帮助企业高效地处理和挖掘日志数据,提高系统运维效率。在实际应用中,可以根据业务需求对ELK进行定制化部署和优化,以满足不同场景下的日志管理需求。

2501_92487717的博客 1287

docker-compose部署ELK(亲测)

具体的配置可以参考上面一篇:docker部署ELK 以下是做了一些修改的地方: kibana.yml [root@topcheer config]# cat kibana.yml server.host: "0.0.0.0" elasticsearch.url: http://elasticsearch01:9200 xpack: apm.ui.enabled: false g...

qq_29860591的博客 1407
上一篇: Ambari 2.7.5+HDP 3.1.5.0部署
wxwopt
博客等级 码龄7年 1粉丝 4原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值