首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Docker 最佳实战:Docker 部署单节点 ElasticSearch 实战?

Docker 最佳实战:Docker 部署单节点 ElasticSearch 实战?

提问于 2024-05-09 14:18:21
回答 0关注 0查看 138

Docker 最佳实战:Docker 部署单节点 ElasticSearch 实战

2024 年云原生运维实战文档 99 篇原创计划 第 015 篇 |Docker 最佳实战「2024」系列 第 010 篇

你好,欢迎来到运维有术

今天分享的内容是 Docker 最佳实战「2024」 系列文档中的 Docker 部署单节点 ElasticSearch 实战

本文将详细介绍如何用 Docker 容器及 Docker Compose 部署单节点 ElasticSearch,并配置基于 x-pack 的认证和 TLS 加密。

实战服务器配置 (架构 1:1 复刻小规模生产环境,配置略有不同)

主机名

IP

CPU(核)

内存(GB)

系统盘(GB)

数据盘(GB)

用途

docker-node-1

192.168.9.81

4

16

40

100

Docker 节点 1

docker-node-2

192.168.9.82

4

16

40

100

Docker 节点 2

docker-node-3

192.168.9.83

4

16

40

100

Docker 节点 3

合计

3

12

48

120

300

实战环境涉及软件版本信息

  • 操作系统:openEuler 22.03 LTS SP3
  • Docker:24.0.7
  • ElasticSearch:7.17.20

1. 前置条件

  • 配置系统内核参数

代码语言:bash

复制

代码语言:javascript
运行
AI代码解释
复制
echo "vm.max_map_count=262144" >> /etc/sysctl.conf
sysctl -w vm.max_map_count=262144
  • 准备密码

本文所有涉及密码的配置,均使用通用密码 PleaseChangeMe

生产环境,请用密码生成器生成20位以上不带特殊符号只包含大小写字母和数字混合组成的密码。

2. 准备前置数据

2.1 创建数据目录

代码语言:bash

复制

代码语言:javascript
运行
AI代码解释
复制
mkdir -p /data/containers/elasticsearch/{data,plugins,logs}
chown 1000:0 /data/containers/elasticsearch/{data,logs}
mkdir -p /data/containers/elasticsearch/config/certs

2.2 创建 ElasticSearch 自定义配置文件

实现 ElasticSearch 服务自定义配置有两种方案:

  • Docker-compose 中设置环境变量
  • 编写 elasticsearch.yml 配置文件,挂载到容器配置文件目录

本文选择第二种,编辑 elasticsearch.yml 配置文件,挂载到容器 /usr/share/elasticsearch/config 目录的方案。

创建配置文件,vi /data/containers/elasticsearch/config/elasticsearch.yml

代码语言:yaml

复制

代码语言:javascript
运行
AI代码解释
复制
# 基本配置
cluster.name: es-cluster
discovery.type: single-node
network.host: 0.0.0.0
http.port: 9200

# 启用 xpack 及 TLS
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true

# 证书配置
xpack.security.transport.ssl.keystore.type: PKCS12
xpack.security.transport.ssl.truststore.type: PKCS12
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: certs/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: certs/elastic-certificates.p12
#xpack.security.transport.ssl.keystore.password: PleaseChangeMe
#xpack.security.transport.ssl.truststore.password: PleaseChangeMe

# 其他配置
# 禁用 geoip
ingest.geoip.downloader.enabled: false

# 启用审计
xpack.security.audit.enabled: true

2.3 创建 CA 文件

  1. 执行下面的命令生成 CA 文件

代码语言:bash

复制

代码语言:javascript
运行
AI代码解释
复制
cd /data/containers/elasticsearch
docker run -it --rm \
-v ./config/certs:/usr/share/elasticsearch/config/certs \
elasticsearch:7.17.20 \
bin/elasticsearch-certutil ca --out config/certs/elastic-stack-ca.p12 --pass "PleaseChangeMe"

说明: --pass 生产环境一定要替换成自己的密码

正确执行后,2024今日更新输出结果如下:

回答

成为首答用户。去 写回答
相关文章
Docker 最佳实战:Docker 部署单节点 ElasticSearch 实战
今天分享的内容是 Docker 最佳实战「2024」 系列文档中的 Docker 部署单节点 ElasticSearch 实战。
运维有术
2024/05/08
1.6K0
Docker 最佳实战:Docker 部署单节点 ElasticSearch 实战
Docker 最佳实战:Docker 部署单节点 MySQL 实战
今天分享的内容是 Docker 最佳实战「2024」 系列文档中的 Docker 部署单节点 MySQL 实战。
运维有术
2024/04/10
4200
Docker 最佳实战:Docker 部署单节点 MySQL 实战
Docker 最佳实战:Docker 部署单节点 etcd 实战
今天分享的内容是 Docker 最佳实战「2024」 系列文档中的 Docker 部署单节点 etcd 实战。
运维有术
2024/02/29
4.3K0
Docker 最佳实战:Docker 部署单节点 etcd 实战
Docker 最佳实战:Docker 离线部署 Harbor 实战
今天分享的内容是 Docker 最佳实战「2024」 系列文档中的 Docker 离线部署 Harbor 实战。
运维有术
2024/04/28
1.6K0
Docker 最佳实战:Docker 离线部署 Harbor 实战
Docker 最佳实战:Docker 部署 etcd 集群实战
今天分享的内容是 Docker 最佳实战「2024」 系列文档中的 Docker 部署 etcd 集群实战。
运维有术
2024/03/07
1.9K0
Docker 最佳实战:Docker 部署 etcd 集群实战
Docker 最佳实战:Docker 和 Docker Compose 离线部署实战
今天分享的内容是 Docker 最佳实战「2024」 系列文档中的 Docker 和 Docker Compose 离线部署实战。
运维有术
2024/04/24
2.2K0
Docker 最佳实战:Docker 和 Docker Compose 离线部署实战
Docker 最佳实战:Docker 部署主从复制模式 MySQL 实战
今天分享的内容是 Docker 最佳实战「2024」 系列文档中的 Docker 部署主从复制模式 MySQL 实战。
运维有术
2024/04/23
4390
Docker 最佳实战:Docker 部署主从复制模式 MySQL 实战
docker安装elasticsearch单节点
# 1.拉取镜像 [root@node3 ~]# docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.1 6.3.1: Pulling from elasticsearch/elasticsearch 7dc0dca2b151: Pull complete d781ed11f72a: Pull complete 1750e875cdfc: Pull complete c41f251a2369: Pull complete 75f
summerking
2022/10/27
7720
实战篇-Docker 安装ELK(单节点)
@派大星
2024/04/02
5040
实战篇-Docker 安装ELK(单节点)
Docker实战:Docker部署Redis集群
数据从redis-4服务获取到,redis-4服务是redis-3服务的从机,这就实现了高可用!!
百思不得小赵
2022/12/01
5680
Docker实战:Docker部署Redis集群
【Docker实战】使用Docker部署Tomcat
江湖有缘
2023/05/29
4.7K0
【Docker实战】使用Docker部署Tomcat
docker部署redis实战
Docker是一个用来管理容器的应用程序,而容器就是模拟运行应用程序所依赖环境的一个服务。一般一个容器内只安装一个程序,在容器内的应用程序会认为自己是机器上运行的唯一进程,一台机器可以独立运行多个容器。
机智的程序员小熊
2019/12/11
6920
Docker 最佳实战:定制 Docker compose 通用模板
今天分享的内容是 Docker 最佳实战「2024」 系列文档中的 定制 Docker compose 通用模板。
运维有术
2024/02/23
8510
Docker 最佳实战:定制 Docker compose 通用模板
ElasticSearch单节点部署
互联网-小阿宇
2023/10/17
4860
ElasticSearch单节点部署
springboot实战之docker部署
进行阅读后,再来阅读本文。本文属于工具使用教程类,主要是讲述如何使用。相关的理论知识上边的文章都有详细论述,这边就不再罗列理论,下边就直接进入实战
lyb-geek
2022/03/10
2.1K0
springboot实战之docker部署
Docker实战-部署「Redis集群」
阅读量: 51 Redis集群思维导图 创建集群 一、创建自定义网络模式 docker network create --driver bridge --subnet 172.28.0.0/16 redis-group 二、Shell脚本快速创建集群 1. 创建配置文件夹并启动容器 # 创建集群配置文件夹 for port in $(seq 1 6); \ do \ mkdir -p ./mydata/redis/node-${port}/conf touch ./mydata/redis/n
李昂君
2021/12/24
1.1K0
Docker实战-部署「Redis集群」
Docker部署elasticsearch
2、创建用户定义的网络(可用于连接到连接到同一网络的其他服务(例如Kibana))
Ant丶
2022/03/01
4010
Docker部署elasticsearch
Spring Boot实战-docker部署项目
其中的${docker.image.prefix}需要我们在pom.xml中的properties节点中定义,用于作为docker镜像的名字。
我的小熊不见了丶
2019/05/22
6780
docker 实战—部署tomcat\weblogic集群 (二)
docker run -t -i -v /home:/opt/data –name mk_tomcat ubuntu /bin/bash
全栈程序员站长
2022/07/10
6360
docker 实战—部署tomcat\weblogic集群 (二)
【Docker项目实战】使用Docker部署kener监控面板
江湖有缘
2024/04/19
6920
【Docker项目实战】使用Docker部署kener监控面板

相似问题

如何部署docker?

3294
相关问答用户
腾讯云TDP | TDP会员擅长3个领域
到家集团 | 技术VP擅长5个领域
腾讯云TDP | KOL擅长5个领域
擅长4个领域
web前端擅长4个领域
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文