Elasticsearch 常见的集群部署方式
文章目录
- 1. 节点类型
- 2. 节点参数配置
- 3. 单一职责的节点
- 4. 单一角色:职责分离的好处
- 5. Dedicate Coordinating Only Node (Client Node)
- 6. Dedicate Master Node
- 7. 基本部署:增减节点,水平扩展
- 8. 水平扩展:Coordinating Only Node
- 9. 读写分离
- 10. 在集群里部署 Kibana
- 11. 异地多活的部署
1. 节点类型
不同角色的节点
Master eligible / Data / Ingest / Coordinating / Machine Learning
在开发环境中,一个节点可承担多种角色
在生产环境中
- 根据数据量,写入和查询的吞吐量,选择适合的部署方式
- 建议设置单一角色的节点(dedicated node)
2. 节点参数配置
一个节点在默认情况下会同时扮演: master eligible
,data node
和 ingest node
节点类型 | 配置参数 | 默认值 |
---|---|---|
master eligible | node.master | true |
data | node.data | true |
ingest | node.ingest | true |
coodrinating only | 无 | 设置上面三个参数全部为 false |
machine learning | node.ml | true (需要 enable x-pack) |
3. 单一职责的节点
一个节点只承担一个角色
4. 单一角色:职责分离的好处
Dedicated master eligible nodes:负责集群状态(cluster state)的管理
- 使用低配置的 CPU ,RAM 和磁盘
Dedicated data nodes: 负责数据存储及处理客户端请求
- 使用高配置的 CPU,RAM 和磁盘
Dedicated ingest nodes: 负责数据处理
- 使用高配置的 CPU ; 中等配置的 RAM; 低配置的磁盘
5. Dedicate Coordinating Only Node (Client Node)
配置:将 Master ,Data ,Ingest 都配置成 Flase
- Medium / High CUP; Medium / High RAM;Low Disk
生产环境中,建议为一些大的集群配置 Coordinating Only Nodes
- 扮演 Load Balancers。 降低 Master 和 Data Nodes 的负载
- 负载搜索结果的 Gather / Reduce
- 有时候无法预知客户端会发生怎样的请求
大量占用内存的结合操作,一个深度聚合可能引发 OOM
6. Dedicate Master Node
从高可用 & 避免脑裂的角色出发
- 一般在生产环境中配置 3 台
- 一个集群只有 1 台活跃的主节点
- 负载分片管理,索引创建,集群管理等操作
如果和数据节点或者 Coordinate 节点混合部署
- 数据节点相对有比较大的内存占用
- Coordinate 节点有时候可能会有开销很高的查询,导致 OOM
- 这些都有可能影响 Master 节点,导致集群的不稳定
7. 基本部署:增减节点,水平扩展
当磁盘容量无法满足需求时,可以增加数据节点;磁盘读写压力大时,增加数据节点
8. 水平扩展:Coordinating Only Node
当系统中有大量的复杂查询及聚合时候,增加 Coordinating 节点,增加查询的性能
9. 读写分离
10. 在集群里部署 Kibana
11. 异地多活的部署
集群处在三个数据中心;数据三写;GTM 分发读请求
Elasticsearch 常见的集群部署方式相关推荐
- 1.ElasticSearch系列之集群部署
第一步:安装JDK JDK要求jdk1.8+,不安装也可以,ES自带JDK 第二步:系统配置 2.1 禁用交换区 sudo swapoff -a 2.2 开最大文件数的限制 编辑文件 /etc/sec ...
- k8s集群部署方式(kubeadm方式安装k8s)
说明:部分操作请先看报错说明,在进行操作!! 环境准备(1. centos7.7操作系统配置) #--------------------------------------------------- ...
- Kubernetes集群部署方式以及pod的管理方式
文章目录 一.Kubernetes部署方式 1.基础环境配置 2.操作步骤 二.集群的创建以及对于node和pod的基础管理方式 1.node的加入方式 2.Kubernetes结合HarBor仓库进 ...
- 邮储银行系统上线有感--集群部署方式
毕业后的第一个项目,半年时间了,现在马上要上线了,我不是很懂,帮不上什么忙,心里有满满的疑惑,特别想知道上线的过程. 今天请教了下,暂时知道了些,真的是挺神奇的一件事情,先记下来. 我们开发完之后,行 ...
- ZooKeeper集群部署方式
2019独角兽企业重金招聘Python工程师标准>>> 1.什么是zookeeper ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby ...
- 永洪Bi架构部署与集群部署
永洪Bi架构部署与集群部署 永洪Bi是一款先进的数据技术与数据可视化的一站式大数据分析平台.他的优势在于:1.可靠的多数据源对接能力:2.丰富精致的数据图表样式:3.灵活高效的可视化探索式分析:4 ...
- elasticsearch2.3安装以及集群部署
摘要: elasticsearch安装以及集群部署 一.下载 1.1安装elasticsearch-2.3.3要求是安装官方新版的Java,必须是JDK 1.7以上,1.7以下执行的时候会报以下错误. ...
- docker 容器实现 hadoop分布式集群部署
在学习hadoop课程中,讲师介绍了hadoop的单机以及集群部署方式,由于本地资源限制,只有一台虚拟机,所以考虑使用docker的方式实现分布式集群搭建. 如上图: 需要在主节点启动NameNode ...
- cockroachdb 替换mysql_CockroachDB集群部署及常见问题
CockroachDB支持secure和insecure两种集群部署方式,本文重点介绍secure模式下CockroachDB集群的搭建过程.集群的状态查看方法.集群重启.CockroachDB版本升 ...
最新文章
- 区块链技术背后的运行逻辑
- AAAI2020 | SNERL:抛开mention级别的监督,实体链接、关系抽取我都行
- Linux下配置JAVA 环境变量及查看JDK安装路径
- 三十三、Java集合中的LinkedList
- Java Servlet生成JSON格式数据并用jQuery显示
- 新闻发布项目——接口类(categoryTBDao)
- 如何像阿里巴巴一样高效跨企业项目协作
- WinRAR(WinZip)压缩与解压实现(C#版Window平台)
- ubuntu之anaconda之编辑器
- 【爬虫】爬取冰冰第一条视频,保存至csv文件(多页爬取)
- jsoup解析HTML及简单实例
- 【mac】mac 安装nginx
- shell for while循环
- HDU - 6638
- CentOS 7 ping不通提示“Name or service not kown“的解决办法
- 学习 MBM 笔记2
- 数据结构复习题(一)
- 【QT项目——视频播放器——解码】5.1decoder-5.10音频重采样
- 汉语计算机系统,汉语编程单片机的计算机系统
- OpenCV函数应用:基于二值图像的三种孔洞填充方法记录(附python,C++代码)
热门文章
- 408数据结构学习笔记——二叉排序树、二叉平衡树、红黑树
- Chapter 5 决策树和随机森林实践
- 【游戏开发解答】Unity使用lua将table转为树结构,以多级折叠内容列表的UI形式展现(树结构 | UGUI | 折叠展开 | lua)
- 7个最佳WordPress设计师和摄影师作品插件
- 读书 文摘 笔记 2 人生的支柱
- 浏览器指纹能破解吗?用户如何躲避浏览器指纹追踪保护隐私安全?
- Android 使用 style 给 Activity 设置背景(background 和 windowBackground的区别)
- ANSYSLI exited or could not read server port ANSYSli_DEMO_PORT解决方法
- 爱奇艺谢丹铭:用AI让创作者提升效率,让消费者简单快乐
- 写作路上的这些小成绩,铸就了一个不平庸的我