多服务器构建ELK

  • es-master:10.10.210.96
  • es-slave1:10.10.210.97
  • es-slave2:10.10.210.98

es-master

目录结构

- src
- data
- logs
- docker-compose.yml
- elasticsearch.yml

docker-compose.yml

version: "3"
services:
es-master:
image: elasticsearch:7.16.1
container_name: es-master
environment:
- ES_JAVA_OPTS=-Xms512m -Xmx512m
ports:
- "9200:9200"
- "9300:9300"
expose:
- "9200"
- "9300"
restart: always
volumes:
- ./elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
- ./data:/usr/share/elasticsearch/data:rw
- ./logs/:/usr/share/elasticsearch/logs

elasticsearch.yml

cluster.name: es-cluster
node.name: es-master
node.roles: ["master"]
network.host: 0.0.0.0
network.publish_host: 10.10.210.96
http.cors.enabled: true
http.cors.allow-origin: "*"
http.port: 9200
transport.port: 9300
discovery.seed_hosts: ["10.10.210.96:9300"]
cluster.initial_master_nodes: ["es-master"]

es-slave1

目录结构

- src
- data
- logs
- docker-compose.yml
- elasticsearch.yml

docker-compose.yml

version: "3"
services:
es-slave1:
image: elasticsearch:7.16.1
container_name: es-slave1
environment:
- ES_JAVA_OPTS=-Xms512m -Xmx512m
ports:
- "9200:9200"
- "9300:9300"
expose:
- "9200"
- "9300"
restart: always
volumes:
- ./elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
- ./data:/usr/share/elasticsearch/data:rw
- ./logs/:/usr/share/elasticsearch/logs

elasticsearch.yml

cluster.name: es-cluster
node.name: es-slave1
node.roles: ["data"]
network.host: 0.0.0.0
network.publish_host: 10.10.210.97
http.cors.enabled: true
http.cors.allow-origin: "*"
http.port: 9200
transport.port: 9300
discovery.seed_hosts: ["10.10.210.96:9300"]
cluster.initial_master_nodes: ["es-master"]

es-slave2

目录结构

- src
- data
- logs
- docker-compose.yml
- elasticsearch.yml

docker-compose.yml

version: "3"
services:
es-slave2:
image: elasticsearch:7.16.1
container_name: es-slave2
environment:
- ES_JAVA_OPTS=-Xms512m -Xmx512m
ports:
- "9200:9200"
- "9300:9300"
expose:
- "9200"
- "9300"
restart: always
volumes:
- ./elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
- ./data:/usr/share/elasticsearch/data:rw
- ./logs:/usr/share/elasticsearch/logs:rw

elasticsearch.yml

cluster.name: es-cluster
node.name: es-slave2
node.roles: ["data"]
network.host: 0.0.0.0
network.publish_host: 10.10.210.98
http.cors.enabled: true
http.cors.allow-origin: "*"
http.port: 9200
transport.port: 9300
discovery.seed_hosts: ["10.10.210.96:9300"]
cluster.initial_master_nodes: ["es-master"]

logstash

  • 使用grok解析数据

目录结构

- src
- config
- logstash.conf
- logstash.yml
- docker-compose.yml

docker-compose.yml

version: "3"
services:
logstash:
image: logstash:7.16.1
container_name: logstash
ports:
- "9600:9600"
- "5044:5044"
restart: always
environment:
- XPACK_MONITORING_ENABLED=false
volumes:
- ./config/logstash.conf:/usr/share/logstash/pipeline/logstash.conf:rw
- ./config/logstash.yml:/usr/share/logstash/config/logstash.yml:rw

logstash.conf

input{
beats {
port => 5044
}
}
filter {
ruby {
code => "event.timestamp.time.localtime"
}
}
output {
stdout {
codec => rubydebug
}
}

logstash.yml

http.host: 0.0.0.0
xpack.monitoring.enabled: false

kibana

目录结构

- src
- docker-compose.yml

docker-compose.yml

version: "3"
services:
kibana:
image: kibana:7.16.1
container_name: kibana
environment:
- ELASTICSEARCH_HOSTS=["http://10.10.210.96:9200"]
- I18N_LOCALE=zh-CN
ports:
- "5601:5601"

docker-compose多服务器部署ELK的更多相关文章

  1. Docker Compose 项目打包部署

    Docker Compose 前面我们使用 Docker 的时候,定义 Dockerfile 文件,然后使用 docker build.docker run 等命令操作容器.然而微服务架构的应用系统一 ...

  2. Docker Compose编排工具部署lnmp实践及理论(详细)

    目录 一.理论概述 编排 部署 Compose原理 二.使用docker compose 部署lnmp 三.测试 四.总结 一.理论概述 Docker Compose是一个定义及运行多个Docker容 ...

  3. 【开源社交系统研发日记】利用 Docker 包 Laradock 服务器部署 Laravel & ThinkSNS+ 等程序实战(多项目)

    什么是ThinkSNS+ ThinkSNS(简称TS),一款全平台综合性社交系统,为国内外大中小企业和创业者提供社会化软件研发及技术解决方案,目前最新版本为ThinkSNS+. 前段时间不知道抽上面疯 ...

  4. 利用 Docker 包 Laradock 服务器部署 Laravel & ThinkSNS+ 等程序实战(多项目)

    什么是ThinkSNS+ ThinkSNS(简称TS),一款全平台综合性社交系统,为国内外大中小企业和创业者提供社会化软件研发及技术解决方案,目前最新版本为ThinkSNS+.ThinkSNS V4. ...

  5. Docker Compose 部署前后端分离应用

    部署前后端分离应用 容器化 Abp 应用 关于 Abp 应用的容器化,其实和普通的 ASP.NET Core 应用差不多,大家可以参考我此前的文章. 唯一需要注意的是:因为 Abp 解决方案中有多个项 ...

  6. 利用docker部署elk交换机日志分析

    今天我们来聊一下利用docker部署elk日志分析系统,这里解析一下elk是啥东西.elk分别是Elasticsearch,Logstash和Kibana的首字母缩写. Elasticsearch是一 ...

  7. 使用Prometheus监控docker compose方式部署的ES

    需求 收集 ES 的指标, 并进行展示和告警; 现状 ES 通过 docker compose 安装 所在环境的 K8S 集群有 Prometheus 和 AlertManager 及 Grafana ...

  8. Docker 核心技术之Docker Compose

    Docker Compose 简介 Docker Compose是什么? Docker Compose是一个能一次性定义和管理多个Docker容器的工具. 详细地说: Compose中定义和启动的每一 ...

  9. 使用 docker compose 安装 tidb

    目标 : 单机上通过 Docker Compose 快速一键部署一套 TiDB 测试集群 前提条件: 1.centos版本在7.3 以上 2.安装git 3.安装docker Docker versi ...

  10. 一文掌握Docker Compose

    目录 Docker Compose介绍 Docker Compose安装 Docker Compose基本示例 1.基本文件及目录设置 2.创建一个Dockerfile 3.通过docker-comp ...

随机推荐

  1. [nefu]算法设计与分析-锐格实验

    谈点个人感想:锐格这个题目和数据要是再不维护,估计直接就裂开了,跪求学校升级改进一下OJ系统和题目Orz 实验一 递归与分治 6104 #include<bits/stdc++.h> us ...

  2. 二进制安装Kubernetes(k8s) v1.26.1 IPv4/IPv6双栈 可脱离互联网

    二进制安装Kubernetes(k8s) v1.26.1 IPv4/IPv6双栈 可脱离互联网 https://github.com/cby-chen/Kubernetes 开源不易,帮忙点个star ...

  3. TypeScript必知三部曲(一)TypeScript编译方案以及IDE对TS的类型检查

    TypeScript代码的编译过程一直以来会给很多小伙伴造成困扰,typescript官方提供tsc对ts代码进行编译,babel也表示能够编译ts代码,它们二者的区别是什么?我们应该选择哪种方案?为 ...

  4. 数组练习 fill sort

    package day05; import java.util.Arrays; //fill sort equals public class testArrays { public static v ...

  5. 这样也行,在lambda表达式中优雅的处理checked exception

    目录 简介 lambda表达式中的checked exception lambda中的unchecked exception 对lambda的最终改造 总结 简介 最近发现很多小伙伴还不知道如何在la ...

  6. 【Vue】三

    Vue组件 非单文件组件 一个文件包含多个组件 单文件组件 一个文件只包含一个组件,vue文件初始化:vueInit <template lang=""> <di ...

  7. 基于sanic和爬虫创建的代理ip池

    搭建免费的代理ip池 需要解决的问题: 使用什么方式存储ip 文件存储 缺点: 打开文件修改文件操作较麻烦 mysql 缺点: 查询速度较慢 mongodb 缺点: 查询速度较慢. 没有查重功能 re ...

  8. docker启动mysql报错Can't read dir of '/etc/mysql/conf.d/'

    执行命令: docker run -p 3306:3306 --privileged=true -v /mysql/data:/var/lib/mysql -v /mysql/log:/var/log ...

  9. iframe分栏拖拽伸缩例子

    这个标题有些绕口,鄙人愚笨,实在找不到一个比较准确的说法,总之就是: 一个页面内显示多个iframe,一个变宽,另一个就变窄,一个变高,另一个就变矮的这种可自由伸缩的效果.它们之间有一个可多拽的分隔条 ...

  10. 从浏览器输入域名开始分析DNS解析过程

    摘要:DNS(Domain Name System)是域名系统的英文缩写,是一种组织成域层次结构的计算机和网络服务命名系统,用于 TCP/IP 网络. 本文分享自华为云社区<DNS那些事--从浏 ...