基于Docker搭建ES集群,并设置冷热数据节点
1.背景
存在三台服务器分别是 192.168.2.91(master节点、data-content节点、data-hot节点)、192.168.2.92(data-cold节点、ingest节点)、192.168.2.93(master节点、data-content节点、data-hot节点)
冷热数据分离搭建教程
2.搭建91节点 热数据节点
(1)获取到elasticsearch.tar包,使用
docker load -i elasticsearch.tar
命令生成elasticsearch镜像。
(2)执行命令
docker run -t -d --name node-database -p 19200:19200/tcp -p 19201:19201/tcp --restart always 镜像ID
生成 elasticsearch 容器
(3)进入当前生成的容器内部
docker exec -it 容器ID bash
(4)进入config目录
cd config/
(5)修改elasticsearch.yml 配置文件
#绑定ip地址
network.host: 0.0.0.0#绑定端口
http.port: 19200
transport.port: 19201#索引目录
path.data: /自定义目录/elasticsearch#日志目录
path.logs: /自定义目录/logs/elasticsearch
####### 集群信息 #######
network.publish_host: 192.168.2.91 集群内部互相暴露出地址 便于互相发现
http.publish_host: 192.168.2.91 集群内部互相暴露出地址 便于互相发现
transport.publish_host: 192.168.2.91 集群内部互相暴露出地址 便于互相发现
transport.publish_port: 19201 集群内部互相暴露出地址 便于互相发现
#集群名称
cluster.name: group
节点角色,master,data_hot,data_content 热数据节点 以及 master节点
node.roles: [master,data_hot,data_content]
node.attr.temperature: hot #说明该节点是热数据节点
#节点名称
node.name: group-node-1#节点自定义属性
#node.attr.rack: r1#启动时传递节点列表
discovery.seed_hosts: ["192.168.2.91", "192.168.2.92","192.168.2.93"]#集群节点
cluster.initial_master_nodes: ["group-node-1","group-node-2","group-node-3"]####### 集群信息 #######
#设置在节点间传输数据时是否压缩,默认为 False,不压缩。
#transport.tcp.compress: true#心跳超时时间
#discovery.zen.ping_timeout: 120s
#节点检测时间
#discovery.zen.fd.ping_interval: 120s
#ping 超时时间
#discovery.zen.fd.ping_timeout: 120s
#心跳重试次数
#discovery.zen.fd.ping_retries: 6#自动创建索引
action.auto_create_index: false
#index.mapper.dynamic: false
#设置堆大小,内存占比
indices.fielddata.cache.size: 30%
#内存
indices.memory.index_buffer_size: 30%ingest.geoip.downloader.enabled: falseaction.destructive_requires_name: false
#锁定内存
bootstrap.memory_lock: falseindex.codec: best_compression#threadpool.index.type: fixed
#threadpool.index.size: 100
#threadpool.index.queue_size: 500
#threadpool.bulk.queue_size: 1000cluster.max_shards_per_node: 100000thread_pool.write.queue_size: 2000#增加新的参数,head插件可以访问es
http.cors.enabled: true
http.cors.allow-origin: "*"#Enable security features
xpack.security.enabled: true
xpack.security.enrollment.enabled: true#是否开启ssl
xpack.security.http.ssl:enabled: falsekeystore.path: certs/http.p12#节点之间数据传输加密
xpack.security.transport.ssl:enabled: trueverification_mode: certificatekeystore.path: certs/elastic-certificates.p12truststore.path: certs/elastic-certificates.p12
(7)重启当前服务器中的ES容器
docker restart 容器ID
3.搭建92节点
(1)
重复91节点所有工作,只不过在修改elasticsearch.yml 配置文件中修改为如下信息
####### 集群信息 #######
network.publish_host: 192.168.2.92
http.publish_host: 192.168.2.92
transport.publish_host: 192.168.2.92
transport.publish_port: 19201
#节点角色,冷数据节点、ingest计算节点
node.roles: [data_cold,ingest]
#标记为冷数据节点
node.attr.temperature: cold
#节点名称
node.name: group-node-2
(2)重启当前服务器中的ES容器
docker restart 容器ID
4.搭建93节点
(1)重复91节点所有工作,只不过在修改elasticsearch.yml 配置文件中修改为如下信息
#集群名称
network.publish_host: 192.168.2.93
http.publish_host: 192.168.2.93
transport.publish_host: 192.168.2.93
transport.publish_port: 19201
#节点角色,热数据节点、数据存储节点、mater节点
node.roles: [master,data_hot,data_content]
#标记为冷数据节点
node.attr.temperature: hot
#节点名称
node.name: group-node-3
(2)重启当前服务器中的ES容器
docker restart 容器ID
5.测试是否搭建成功
浏览器输入https://192.168.2.91:19200/_cluster/health 说明有一个集群产生了 包含3个节点
相关文章:

基于Docker搭建ES集群,并设置冷热数据节点
1.背景 存在三台服务器分别是 192.168.2.91(master节点、data-content节点、data-hot节点)、192.168.2.92(data-cold节点、ingest节点)、192.168.2.93(master节点、data-content节点、data-hot节点) 冷热数据分离搭建教程 2.搭建91节点 热数据节点 (1࿰…...
MyBatis常见知识点
#{} 和 ${} 的区别是什么? 答: ${}是 Properties 文件中的变量占位符,它可以用于标签属性值和 sql 内部,属于原样文本替换,可以替换任意内容,比如${driver}会被原样替换为com.mysql.jdbc. Driver。 一个…...

Redis --- 使用GEO实现经纬度距离计算
什么是GEO? Spring Boot 项目中可以通过 Spring Data Redis 来使用 Redis GEO 功能,主要通过 RedisTemplate 和 GeoOperations 接口来操作地理位置数据。 Service public class GeoService {Autowiredprivate RedisTemplate<String, Object> red…...
【0403】Postgres内核 检查(procArray )给定 db 是否有其他 backend process 正在运行
文章目录 1. 给定 db 是否有其他 backend 正在运行1.1 获取 allPgXact[] 索引1.1.1 MyProc 中 databaseId 初始化实现1.2 allProcs[] 中各 databaseId 判断1. 给定 db 是否有其他 backend 正在运行 CREATE DATABASE 语句创建用户指定 数据库名(database-name)时候, 会通过 …...
[数据结构] Set的使用与注意事项
目录 Set的说明 常见方法说明 注意事项 TreeSet使用案例 Set的说明 Set与Map主要的不同有两点: Set是继承自Collection的接口类,Set中只存储了Key. 常见方法说明 方法解释boolean add(E e)添加元素,但重复元素不会被添加成功void clear()清空集合boolean contains(Object…...

amis组件crud使用踩坑
crud注意 过滤条件参数同步地址栏 默认 CRUD 会将过滤条件参数同步至浏览器地址栏中,比如搜索条件、当前页数,这也做的目的是刷新页面的时候还能进入之前的分页。 但也会导致地址栏中的参数数据合并到顶层的数据链中,例如:自动…...
离线统信系统的python第三方库批量安装流程
一、关于UOS本机 操作系统:UOS(基于Debian的Linux发行版) CPU:海光x86 二、具体步骤 1、在联网的电脑上用控制台的pip命令批量下载指定版本的第三方库 方法A cd <目标位置的绝对路径> pip download -d . --platform many…...

韶音科技:消费电子行业售后服务实现数字化转型,重塑客户服务体系
韶音科技:消费电子行业售后服务实现数字化转型,重塑客户服务体系 在当今这个科技日新月异的时代,企业之间的竞争早已超越了单纯的产品质量比拼,**售后服务成为了衡量消费电子行业各品牌实力与客户满意度的关键一环。**深圳市韶音…...

神经网络|(九)概率论基础知识-泊松分布及python仿真
【1】引言 在前序学习进程中,我们已经知晓二项分布是多重伯努利分布,二伯努利分布对应的是可以无限重复、结果只有两种可能的随机试验。 相关文章链接为: 神经网络|(八)概率论基础知识-二项分布及python仿真-CSDN博客 上述文章还调用nump…...

114,【6】攻防世界 web wzsc_文件上传
进入靶场 传个桌面有的 直接空白了 我们 访问一下上传的东西 /index 没显示用于解析的.htaccess和.user.ini 文件,还两个都不显示 .htaccess 和 .user.ini 文件分别用于 Apache 服务器和 PHP-FPM 环境的目录级配置 但上传的时候bp查看状态码是200,…...
【Kubernetes的SpringCloud最佳实践】有Service是否还需要Eureka?
在 Kubernetes 中部署 Spring Cloud 微服务时,是否还需要 Eureka 取决于具体场景和架构设计。以下是详细的实践建议和结论: 1. Kubernetes 原生服务发现 vs Eureka Kubernetes 自身提供了完善的服务发现机制(通过 Service 资源)&…...
SQL最佳实践(笔记)
写在前面: 之前baeldung的Java Weekly Reviews里面推荐了一篇关于SQL优化的文章,正好最近在学习数据库相关知识,记一些学习笔记 原文地址:SQL Best Practices Every Java Engineer Must Know 1. 使用索引 使用索引…...

vue3学习四
七 标签ref属性 设置标签ref属性,类似于设置标签id。 普通标签 <template name"test4"> <p ref"title" id"title" click"showinfo">VIEW4</p> <View3/><script lang"ts" setup>…...
C# LiteDB 使用教程
一、引言 在软件开发中,数据存储和管理是至关重要的一环。对于小型项目或者对性能和便捷性有较高要求的场景,传统的大型数据库可能显得过于笨重。而 LiteDB 作为一款轻量级的嵌入式 NoSQL 数据库,为开发者提供了一个简洁、高效的解决方案。它…...

Python Pandas(3):DataFrame
1 介绍 DataFrame 是 Pandas 中的另一个核心数据结构,类似于一个二维的表格或数据库中的数据表。它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame 既有行索引也有列索引,它可以被看做由…...

使用通义灵码 ai编程 来提高开发效率
1、我们先新建一个Hello,world的vue3项目(快速上手 | Vue.js) 创建好以后,运行以下界面: about界面如下,现在我们让灵码给我们修改一下这个字体的颜色及加点其它的样式: 2、先选中样式…...

【OpenCV】入门教学
🏠大家好,我是Yui_💬 🍑如果文章知识点有错误的地方,请指正!和大家一起学习,一起进步👀 🚀如有不懂,可以随时向我提问,我会全力讲解~ ὒ…...

大数据项目4:基于spark的智慧交通项目设计与实现
项目概述 项目直达 www.baiyuntu.com 随着交通数据的快速增长,传统的交通管理方式已无法满足现代城市的需求。交通大数据分析系统通过整合各类交通数据,利用大数据技术解决交通瓶颈问题,提升交通管理效率。本项目旨在通过大数据技术&#…...

netcore openTelemetry+prometheus+grafana
一、netcore项目 二、openTelemetry 三、prometheus 四、grafana添加Dashborad aspire/src/Grafana/dashboards at main dotnet/aspire GitHub 导入:aspnetcore.json和aspnetcore-endpoint.json 效果:...

Spring Boot接入Deep Seek的API
1,首先进入deepseek的官网:DeepSeek | 深度求索,单击右上角的API开放平台。 2,单击API keys,创建一个API,创建完成务必复制!!不然关掉之后会看不看api key!!&…...

Chapter03-Authentication vulnerabilities
文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...

【入坑系列】TiDB 强制索引在不同库下不生效问题
文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
STM32+rt-thread判断是否联网
一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...
系统设计 --- MongoDB亿级数据查询优化策略
系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...

页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
Java入门学习详细版(一)
大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...

用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...
OpenLayers 分屏对比(地图联动)
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...
JavaScript 数据类型详解
JavaScript 数据类型详解 JavaScript 数据类型分为 原始类型(Primitive) 和 对象类型(Object) 两大类,共 8 种(ES11): 一、原始类型(7种) 1. undefined 定…...