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

Linux中快速部署Elasticsearch(基础TLS配置)

Linux快速部署Elasticsearch用于服务对接(基础&TLS配置)

  • 部署 Elasticsearch 服务
    • 下载 Elasticsearch 服务
    • 安装 Elasticsearch 服务
    • 创建用户和组
  • 配置 Elasticsearch 服务
    • 配置elasticsearch.yml
    • 管理 TLS(自动)
  • 启动 Elasticsearch 服务
    • 作为守护进程运行启动 Elasticsearch 服务
    • 可能的错误
    • 关闭 Elasticsearch
    • 修改用户密码
  • 连接到 Elasticsearch 服务
    • 检查 Elasticsearch 是否正在运行
    • 业务系统按需连接即可
  • 相关链接

本文目标是部署基础可用的Elasticsearch服务,场景在于时间并不充足的情况下,需要快速部署一套Elasticsearch服务用于开发或者服务器初始化的情况,所以配置或不满足高可用、高安全等,以效率为主,后续使用过程中可以通过进阶配置完善

  • 文章最后也会附加官方文档链接,用于大家进阶配置,学习细节内容

部署 Elasticsearch 服务

下载 Elasticsearch 服务

所有Elasticsearch版本下载页面,选择需要的版本,点击蓝色Download
请添加图片描述
然后在该页面选择对应的架构,如Linux X86_64
请添加图片描述
右键复制链接,或者直接点击下载,再上传到服务器

复制地址如:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-9.1.5-linux-x86_64.tar.gz

安装 Elasticsearch 服务

在 Linux 的机器执行wget 复制的地址,下载 Elasticsearch 服务安装文件。或者将前面下载的文件上传到自己的目录,就不用wget,离线环境亦可用上传的方式

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-9.1.5-linux-x86_64.tar.gz
tar -xzf elasticsearch-9.1.5-linux-x86_64.tar.gz
cd elasticsearch-9.1.5/

后续elasticsearch-9.1.5此目录称为 $ES_HOME

创建用户和组

创建用户和组并将ES_HOME分配给该用户,因为ES不允许root用户运行,后续都将使用es-user操作

sudo groupadd -r es-user
sudo useradd -M -r -g es-user es-user# 分配目录权限
sudo chown -R es-user:es-user path/to/elasticsearch-9.1.5# 切换用户
su es-user

配置 Elasticsearch 服务

配置elasticsearch.yml

  • 编辑config/elasticsearch.yml
vi config/elasticsearch.yml
  • 取消注释行 #cluster.name: my-application
  • 为 Elasticsearch 实例指定你得集群名
cluster.name: elasticsearch-cluster

在多节点 Elasticsearch 集群中,所有 Elasticsearch 实例都需要具有相同的名称,记住当前配置的,以后会用到

  • 取消注释行 #network.host: 192.168.0.1
  • network改为0.0.0.0使其他主机网络可以访问
network.host: 0.0.0.0

生产环境中,您可能希望使用其他值,例如静态 IP 地址或主机网络接口的引用,可以以后再改,先起来再说💪🏻

  • 取消注释行 #transport.host: 0.0.0.0
  • transport改为0.0.0.0使其他主机网络可以访问
transport.host: 0.0.0.0

管理 TLS(自动)

当您首次启动第一个 Elasticsearch 节点时,它会自动执行以下安全设置,所以按上面操作的新Elasticsearch,无需操作此步,知晓即可

  • 为传输层和 HTTP 层生成TLS 证书
  • 将 TLS 配置设置应用于elasticsearch.yml
  • 为 elastic 超级用户设置密码 (目前不用管)
  • 创建用于安全连接 Kibana 和 Elasticsearch 的注册令牌 (目前不用管)

在某些情况下,由于节点启动过程检测到该节点已是集群的一部分,或者安全已配置或显式禁用,因此无法自动配置安全。

启动后日志中可以看到以下样子的内容,就表示自动配置成功
在这里插入图片描述

启动 Elasticsearch 服务

作为守护进程运行启动 Elasticsearch 服务

./bin/elasticsearch -d

日志消息可以在 $ES_HOME/logs/ 目录中找到

可能的错误

如果提示max virtual memory areas vm.max_map_count [65530] is too low,表示系统的内核参数 vm.max_map_count 过低,无法满足应用需求。

临时修改

sudo sysctl -w vm.max_map_count=262144

永久修改,编辑配置文件 /etc/sysctl.conf,添加以下行:

vm.max_map_count=262144

执行以下命令生效

sudo sysctl -p

关闭 Elasticsearch

要关闭 Elasticsearch,直接kill进程即可

kill -9 pid

修改用户密码

需要自己配置符合要求的密码

./bin/elasticsearch-reset-password -u elastic

随后输入超级用户elastic要设置的密码即可

连接到 Elasticsearch 服务

检查 Elasticsearch 是否正在运行

curl --cacert $ES_HOME/config/certs/http_ca.crt
-u elastic:$ELASTIC_PASSWORD https://localhost:9200

--cacert:HTTP 层生成的 http_ca.crt 证书的路径
$ELASTIC_PASSWORD 替换为 elastic 超级用户密码。请确保在调用中使用 https,否则请求将失败

调用将返回类似这样的响应

{"name" : "Cp8oag6","cluster_name" : "elasticsearch","cluster_uuid" : "AT69_T_DTp-1qgIJlatQqA","version" : {"number" : "9.1.5-SNAPSHOT","build_type" : "tar","build_hash" : "f27399d","build_flavor" : "default","build_date" : "2016-03-30T09:51:41.449Z","build_snapshot" : false,"lucene_version" : "10.0.0","minimum_wire_compatibility_version" : "1.2.3","minimum_index_compatibility_version" : "1.2.3"},"tagline" : "You Know, for Search"
}

业务系统按需连接即可

将客户端连接到 Elasticsearch

相关链接

在自托管集群中为原生用户和内置用户设置密码
将新节点加入现有 Elasticsearch 集群
在 Linux 或 MacOS 安装 Elasticsearch
Elasticsearch 集群通信的 TLS 加密
首次启动 Elasticsearch 自动安全设置
在生产环境中运行 Elasticsearch
配置 Elasticsearch 包括jvm配置优化等
为集群安装其他节点,则需要 生成一个注册令牌,并在首次启动 Elasticsearch 时传递它
Elasticsearch 网络设置

http://www.dtcms.com/a/490286.html

相关文章:

  • 2025吉比特-游戏引擎开发-一面复盘
  • java数据结构--List的介绍
  • 网站主页不收录肥城房产网
  • 计算机视觉(opencv)——基于 MediaPipe 的实时面部表情识别
  • C++设计模式_行为型模式_观察者模式Observer(发布-订阅(Publish-Subscribe))
  • 怎么解决ModuleNotFoundError: No module named ‘Cython‘
  • 电子商务网站规划流程手机主题制作网站
  • 微信小程序 Button 组件 open-type 完全指南:从用户信息获取到客服分享的实战应用
  • 阿里云白皮书-架构
  • Rokid 开发空间小程序 实战
  • RAG系统搭建指南:5种主流框架的易用性和效果对比
  • 网站后台怎么添加代码哪里有免费的域名注册建网站
  • Jetson AGX Orin+GMSL+AI视觉开发套件,支持自动驾驶,机器人,工业视觉等应用
  • 【JETSON+FPGA+GMSL+AI】自动驾驶与移动机器人的摄像头如何实现高精度时间同步?
  • Java 设计模式——建造者模式:从原理到实战的极简指南
  • 怎么找做企业网站的雁塔区住房和城乡建设局网站
  • 哈尔滨电商企业服务器托管方案
  • 机器学习基础入门(第五篇):半监督学习与强化学习
  • 建网站解决方案代运营网店公司
  • 网站建设网页制作软件wordpress 移动到回收站发生错误
  • 5G安全深入解析:EAP-AKA、EAP-AKA‘与5G-AKA详解
  • YOLO 系列演进:从 V1 到 V2 的目标检测革命
  • 云栖实录|MaxCompute全新升级:AI时代的原生数据仓库
  • 基于Multi-Agent开发的SmartCare系统自动化运维管家
  • 终结浏览器隐患:自动化安全审计与报表
  • 笔记本卡顿,拖慢的不止是CAD看图评审速度
  • 电脑被捆绑软件缠上?3 步根治:紧急断网 + 深度清理 + 长效防护
  • 网站专业优化商城购物网站开发背景
  • 哪家做外贸网站好沈阳高端网页
  • GPU服务器深度解析:H100/H200的“机头”与“模组”架构详解