讲师中心 微信公众号
AI工具推荐 视频效率加速

Kubernetes部署Elasticsearch集群教程

夜丽吖_9262

夜丽吖_9262

发布时间:2026-09-12 06:25:00

|

774人浏览过

|

来源于php中文网

原创

用StatefulSet部署Elasticsearch是唯一合理选择,因其提供稳定网络标识、独立持久卷、有序滚动更新及Headless Service支持,而Deployment会导致脑裂、数据丢失和扩缩容失败。

kubernetes部署elasticsearch集群教程

直接上结论:用 StatefulSet 部署 Elasticsearch 是唯一合理选择,Deployment 会导致脑裂、数据丢失、扩缩容失败——这不是配置问题,是架构不匹配。

为什么必须用 StatefulSet 而不是 Deployment

Elasticsearch 节点需要稳定的网络标识(如 es-data-0.es-data-svc.default.svc.cluster.local)和独立的持久卷,Deployment 无法提供这两点:

  • Deployment 的 Pod 名称随机、DNS 不固定,导致 discovery.seed_hosts 解析失败或指向错误实例
  • Deployment 共享同一 PVC 模板,多个 Pod 挂载同一块存储会引发文件锁冲突,ES 启动直接报 java.nio.file.AccessDeniedException
  • 滚动更新时,Deployment 并发重建 Pod,集群可能瞬间失去多数主节点,触发 discovery.zen.minimum_master_nodes 校验失败而拒绝服务

Headless Service 必须配对 StatefulSet 使用

Service 的 clusterIP: None(即 headless service)不是可选项,而是 StatefulSet 网络发现的前提:

Kubernetes Security Posture Scorecard
Kubernetes Security Posture Scorecard

评估 Kubernetes 集群安全态势,覆盖 RBAC、工作负载安全、网络策略、基础设施即代码(IaC)、运行时监控和密钥管理等 30 项控制项……

下载
  • 只有 headless service 才能让每个 Pod 拥有独立 DNS A 记录,例如 es-master-0.es-master-svc.default.svc.cluster.local → 对应具体 IP
  • discovery.seed_hosts 必须填入这种 FQDN 列表,不能写 es-master-svc 这种带负载均衡的 service 名
  • 若误配成 ClusterIP service,所有节点会解析到同一个 VIP,9300 端口通信全部失败,日志里反复出现 Failed to resolve host 或 NoNodeAvailableException

master/data/client 节点必须分离部署

混部节点(即一个 Pod 同时设 NODE_MASTER=true 和 NODE_DATA=true)在中等以上规模集群中极易出问题:

  • Master 节点承担元数据管理、分片分配等 CPU 密集型任务;Data 节点承担磁盘 I/O 和 JVM 堆压力——资源争抢会导致响应延迟飙升,甚至 master 心跳超时被踢出集群
  • discovery.zen.minimum_master_nodes(ES 6.x)或 cluster.initial_master_nodes(ES 7+)必须只由 master-only 节点组成,混部节点参与选举会破坏法定人数计算逻辑
  • StatefulSet 的 volumeClaimTemplates 应只为 data 节点定义,master 节点用 emptyDir 或 configmap 即可,避免无谓的 PV 绑定等待

JVM 与内核参数不是“调优项”,而是启动前提

ES 容器启动失败的前三大原因都和这俩有关:

  • bootstrap.memory_lock: true 时,宿主机必须允许 mlock:容器需加 securityContext.capabilities.add: ["IPC_LOCK"],且节点 /etc/security/limits.conf 中对应用户(如 elasticsearch)要有 memlock unlimited
  • vm.max_map_count 必须 ≥ 262144,该值是内核级限制,不能在容器内改,需在 kubelet 启动前于所有 worker 节点执行 sysctl -w vm.max_map_count=262144
  • ES_JAVA_OPTS 中 -Xms 和 -Xmx 必须相等,且不超过容器内存 limit 的 50%——比如 limit 是 8Gi,则堆最大只能设 4g,否则 OOM Killer 会优先干掉 ES 进程

最容易被忽略的是:headless service 的 serviceName 必须和 StatefulSet 的 serviceName 字段完全一致,大小写、中划线都不能错;否则 DNS 记录根本不会生成,节点间连 ping 都通不了——这时候查日志只会看到一堆超时,而不是明确的 DNS 错误。

热门AI工具

更多
DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

Seko
Seko Hot

一款AI视频创作工具,主要用于商汤科技推出的创编一体的AI短视频创作Agent,适合需要提升相关任务效率的用户。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

相关专题

更多
Elasticsearch 从入门到搜索引擎实战
Elasticsearch 从入门到搜索引擎实战

本专题带你从零掌握 Elasticsearch 分布式搜索引擎。深入解析倒排索引核心原理,涵盖单机与 Docker 环境搭建、IK 中文分词器配置及索引文档的 CRUD 操作。通过丰富的 Query DSL 实战案例,详解布尔查询、聚合分析与高亮显示,助你快速构建毫秒级响应的企业级高性能搜索服务。

39

2026.05.12

Elasticsearch 高级查询与性能优化
Elasticsearch 高级查询与性能优化

本专题深入解析 Elasticsearch 高级查询与性能优化实战。详解 Bool 复合查询、复杂过滤及聚合分析技巧,解决多条件精准检索难题。从索引设计、JVM 调优到硬件规划,全方位分享 Filter 缓存、深分页优化及集群架构调优策略,助你突破性能瓶颈,打造毫秒级响应的高并发企业级搜索服务。

64

2026.05.12

Elasticsearch 企业级开发与运维实践专题
Elasticsearch 企业级开发与运维实践专题

本专题聚焦 Elasticsearch 企业级开发与运维实战。深入解析生产环境集群架构规划、节点角色分离及冷热数据分层策略。涵盖索引生命周期管理(ILM)、安全权限控制、快照备份及全链路监控告警体系搭建。通过分享高可用部署与故障排查经验,助你构建安全、稳定且可扩展的企业级分布式搜索平台。

61

2026.05.12

LLVM自定义Pass怎么写
LLVM自定义Pass怎么写

本专题聚焦LLVM自定义Pass开发,整理Pass类结构、run()方法、PreservedAnalyses、CMake构建、插件注册、-load-pass-plugin加载和测试用例编写流程。

0

2026.09.30

LLVM RISC-V参数配置教程
LLVM RISC-V参数配置教程

本专题介绍LLVM对RISC-V基础ISA和扩展的支持方式,涵盖RV32、RV64、标准扩展、实验性扩展、厂商扩展、-menable-experimental-extensions和版本差异。

0

2026.09.30

LLVM IR中间表示入门指南
LLVM IR中间表示入门指南

本专题整理LLVM IR的核心概念,包括中间表示作用、模块结构、函数、基本块、SSA形式、类型系统和常见语法,帮助新手理解LLVM编译流程中的关键层。

0

2026.09.30

PDF转图片方法
PDF转图片方法

需要把 PDF 页面用于上传、预览、分享或图片归档时,PDF 转图片方法专题整理 JPG/PNG 格式选择、逐页导出、清晰度设置、批量下载和结果检查等流程,帮助用户稳定完成 PDF 图片化处理。

0

2026.09.30

PixTV AI视频生成与无限画布创作
PixTV AI视频生成与无限画布创作

PixTV专题整理AI视频与视觉内容创作相关功能使用教程,涵盖AI生图、视频生成、无限画布、多模型创作、素材管理、声音音乐及视频剪辑等功能,帮助用户快速掌握PixTV从创意到成片的完整制作方法。

0

2026.09.29

Buffalo框架数据库开发全教程
Buffalo框架数据库开发全教程

本专题围绕Buffalo框架数据库开发,讲解database.yml多环境配置、soda与fizz迁移生成回滚、模型结构体标签、增删改查与条件查询、一对多与多对多关联、数据校验、回调钩子、事务处理及原生SQL执行能力。

200

2026.09.23

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Kubernetes官方教程手册
Kubernetes官方教程手册

共0课时 | 0人学习

Kubernetes官方中文文档
Kubernetes官方中文文档

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn