当前位置: 首页 > news >正文

基于 JumpServer 容器化部署 ES 集群

1 确保 JumpServer 容器环境正常

docker ps

2 编写文件

进入 JumpServer 的 /opt/jumpserver-xxx/compose 目录,备份 es.yml 文件并编辑 es.yml文件

services: es01: image: docker.elastic.co/elasticsearch/elasticsearch:7.17.25 container_name: jms_es01 hostname: es01 restart: always ports: - 9200:9200 volumes: - ${VOLUME_DIR}/elasticsearch/es01/data:/usr/share/elasticsearch/data - ${VOLUME_DIR}/elasticsearch/es01/logs:/usr/share/elasticsearch/logs environment: TZ: ${TZ:-Asia/Shanghai} cluster.name: jms-es-cluster node.name: es01 node.roles: master,data,ingest discovery.seed_hosts: es01,es02,es03 cluster.initial_master_nodes: es01,es02,es03 network.host: 0.0.0.0 bootstrap.memory_lock: "false" xpack.security.enabled: "false" TAKE_FILE_OWNERSHIP: "true" ES_JAVA_OPTS: "-Xms512m -Xmx512m" ulimits: memlock: soft: '-1' hard: '-1' healthcheck: test: "curl -sL http://localhost:9200 > /dev/null" interval: 10s timeout: 5s retries: 3 start_period: 60s networks: - net es02: image: docker.elastic.co/elasticsearch/elasticsearch:7.17.25 container_name: jms_es02 hostname: es02 restart: always ports: - 9201:9200 volumes: - ${VOLUME_DIR}/elasticsearch/es02/data:/usr/share/elasticsearch/data - ${VOLUME_DIR}/elasticsearch/es02/logs:/usr/share/elasticsearch/logs environment: TZ: ${TZ:-Asia/Shanghai} cluster.name: jms-es-cluster node.name: es02 node.roles: master,data,ingest discovery.seed_hosts: es01,es02,es03 cluster.initial_master_nodes: es01,es02,es03 network.host: 0.0.0.0 bootstrap.memory_lock: "false" xpack.security.enabled: "false" TAKE_FILE_OWNERSHIP: "true" ES_JAVA_OPTS: "-Xms512m -Xmx512m" ulimits: memlock: soft: '-1' hard: '-1' healthcheck: test: "curl -sL http://localhost:9200 > /dev/null" interval: 10s timeout: 5s retries: 3 start_period: 60s networks: - net es03: image: docker.elastic.co/elasticsearch/elasticsearch:7.17.25 container_name: jms_es03 hostname: es03 restart: always ports: - 9202:9200 volumes: - ${VOLUME_DIR}/elasticsearch/es03/data:/usr/share/elasticsearch/data - ${VOLUME_DIR}/elasticsearch/es03/logs:/usr/share/elasticsearch/logs environment: TZ: ${TZ:-Asia/Shanghai} cluster.name: jms-es-cluster node.name: es03 node.roles: master,data,ingest discovery.seed_hosts: es01,es02,es03 cluster.initial_master_nodes: es01,es02,es03 network.host: 0.0.0.0 bootstrap.memory_lock: "false" xpack.security.enabled: "false" TAKE_FILE_OWNERSHIP: "true" ES_JAVA_OPTS: "-Xms512m -Xmx512m" ulimits: memlock: soft: '-1' hard: '-1' healthcheck: test: "curl -sL http://localhost:9200 > /dev/null" interval: 10s timeout: 5s retries: 3 start_period: 60s networks: - net networks: net: external: true name: jms_net

3 启动 ES 容器

# 调整 vm.max_map_count 太小 echo "vm.max_map_count=262144" | sudo tee -a /etc/sysctl.conf sysctl -p # 启动 es 容器 docker compose -f es.yml up -d # 查看容器运行状态 docker ps | grep jms_es

4 检查 ES 容器状态

# 检查节点状态 curl -X GET "http://localhost:9200/_cat/nodes?v&pretty" # 检查集群健康 curl -X GET "http://localhost:9200/_cluster/health?pretty" # 检查索引 curl -X GET "http://localhost:9200/_cat/indices?v&pretty"
  • localhost:9200是 ES01 节点,其他端口(9201、9202)也可以分别查询。
  • 命令会显示每个节点的名称、角色、内存、CPU、主节点状态等。
  • status=green→ 集群健康,所有主分片和副本分片正常。
  • status=yellow→ 主分片正常,但副本分片未分配(通常是单节点集群才会出现)。
  • status=red→ 出现数据丢失或节点未启动,需要检查日志。
  • 可以看到所有索引状态是否为open
  • 如果有closedred状态,需要进一步排查。

5 将 ES 各个节点添加至 JumpServer 命令存储

1.依次点击 系统设置 -- 存储设置 -- 命令存储 -- 创建

2.设置为默认存储

3.依次点击 系统设置 -- 组件设置 -- 组件列表 -- 全选 -- 更多操作 -- 命令存储 -- ES3 -- 确认

6 验证 ES 节点是否正常存储命令

1.去 web cli 命令行输入命令验证 es 存储

2.依次点击 审计台 -- 会话命令 -- 命令存储 -- ES3

http://www.jsqmd.com/news/850279/

相关文章:

  • 手把手教你定制专属标注工具:基于Python3源码,打造你的医学/金融领域实体关系标注器
  • 如何防止 RabbitMQ 被未授权访问安全加固方案
  • ToastFish:终极Windows摸鱼背单词神器,上班族的隐蔽学习解决方案
  • C++中动态内存管理和泛型编程
  • 基于ssm的萌宠宜家商城系统(10064)
  • PiMAE:基于掩码自编码器的跨模态3D感知预训练技术解析
  • 实验干货:多因子细胞因子流式检测CBA技术
  • SMUDebugTool深度解析:AMD平台硬件调试与性能优化实战指南
  • c#基础知识合集06 类 值类型和引用类型 方法定义和调用
  • 抖音无水印批量下载终极指南:从零基础到专业用户的完整成长路径
  • 5个步骤掌握小程序源码解析:unveilr深度技术指南
  • 如何在3分钟内完成OBS多平台直播:终极免费插件完整指南
  • SAP 梳理思路
  • 紧跟市场黄金行情报价 合肥专业黄金饰品回收大价优 - 奢侈品回收测评
  • Linux内存压缩技术:ZRAM与ZSWAP原理、选型与性能调优指南
  • css的定位布局
  • GPR:面向大规模广告推荐的生成式预训练单模型范式Who is Zhongyao Tuo
  • 手把手教你用GD32E230驱动LED:从点亮到闪烁的完整代码与SysTick延时配置
  • 9周盒模型的外三层的结构 - feng
  • oiioii邀请码 2026年5月20号最新
  • 第十周 - qwerzxcv-
  • NoSQL数据库原理与应用
  • 避坑指南:Houdini风格化树木导入Unity URP后,光照和裁剪效果不对怎么办?
  • 终极指南:如何3秒快速预览Office文件而无需安装完整Office套件
  • 2026年性价比高的大中电机防爆电机厂家推荐,上海炬越能源工程有限公司好不好 - mypinpai
  • 2026年阿里云OpenClaw/Hermes Agent配置Token Plan快速上手指南
  • 2026年想快速提分?邵阳这些高复学校或许能帮你实现梦想!
  • 私域大师最好用的企微SCRM工具
  • G-Helper:华硕笔记本终极轻量级控制工具完整指南
  • 10分钟带你完成:Claude Code CC Switch 接入DeepSeek-V4