Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Linux 安装部署 Elasticsearch 8.5.0

Linux 安装部署 Elasticsearch 8.5.0

原创
作者头像
是条鱼呀
发布于 2024-03-16 14:21:51
发布于 2024-03-16 14:21:51
41300
代码可运行
举报
运行总次数:0
代码可运行

Elasticsearch单节点部署

(1) root用户下进行操作,或者用sudo命令操作

  • 下载安装包,解压
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 tar -xzf elasticsearch-8.5.0-linux-x86_64.tar.gz
 cd elasticsearch-8.5.0/
  • 新建用户:ES为了安全考虑,不允许在root用户下启动ES程序,因此需要新建一个名为elastic的用户(可以起别的名字)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 groupadd elastic
 useradd -g elastic elastic
 # 密码设置为elastic
 passwd elastic
  • 为新用户赋予文件夹权限
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 chown -R elastic:elastic elasticsearch-8.5.0
 chmod -R 777 elasticsearch-8.5.0
  • 新用户添加至 sudoerslist,也可以不添加
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 sudo cd elasticsearch-8.5.0
 visudo
 添加 elastic ALL=(ALL) ALL
  • 配置JVM内存大小

进入config/jvm.options.d 目录,新建 jvm.options 文件, 添加以下内容

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 -Xms2g
 -Xmx2g
  • 安装IK分词器(如果有中文搜索分词需求)

上传ik压缩包到 elasticsearch 目录,解压到 /plugins/ik 文件夹中

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 cd /elasticsearch-8.5.0/plugins/
 mkdir ik
 cd ik
 cp /tmp/elasticsearch-analysis-ik-8.5.0.zip .
 unzip elasticsearch-analysis-ik-8.5.0.zip

修改 /etc/security/limits.conf 配置文件,添加以下内容并保存。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 *       soft    nofile  65536
 *       hard    nofile  131072
 *       soft    nproc   2048
 *       hard    nproc   4096

修改 /etc/sysctl.conf 配置文件,添加以下内容并保存,

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 vm.max_map_count=655360

用 sysctl -p命令使修改生效。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 sysctl -p

调整文件打开数限制

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 ulimit -HSn 65535
  • 配置安全证书

执行以下命令(提示输入文件名时回车跳过,会使用默认文件名,提示输入密码时输入elastic或者其他字符串作为密码)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 # 签发ca证书
 cd /elasticsearch-8.5.0/bin
 ./elasticsearch-certutil ca
 ​
 # 用ca证书签发节点证书
 cd /elasticsearch-8.5.0/bin
 ./elasticsearch-certutil cert --ca elastic-stack-ca.p12  
 ​
 # 证书默认在elasticsearch-8.5.0目录生成,将证书放到certs目录(config目录下手动创建certs目录)
 cd /elasticsearch-8.5.0
 mv elastic-certificates.p12  elastic-stack-ca.p12 config/certs 
  • 修改配置文件

进入config 目录,编辑 elasticsearch.yml 文件, 修改或添加以下内容

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 # ---------------------------------- Cluster -----------------------------------
 #
 # Use a descriptive name for your cluster:
 # 集群名称
 cluster.name: ES
 #
 # ------------------------------------ Node ------------------------------------
 #
 # Use a descriptive name for the node:
 #
 # 具体节点的名称
 node.name: node1
 #
 # Add custom attributes to the node:
 #
 #node.attr.rack: r1
 #
 # ---------------------------------- Network -----------------------------------
 #
 # By default Elasticsearch is only accessible on localhost. Set a different
 # address here to expose this node on the network:
 #
 # 节点IP地址(主机的IP地址)
 network.host: xxx.xx.xx.xx
 #
 # By default Elasticsearch listens for HTTP traffic on the first free port it
 # finds starting at 9200. Set a specific HTTP port here:
 #
 http.port: 9200
 #
 # 配置跨域
 http.cors.enabled: true
 http.cors.allow-origin: "*"
 http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
 # For more information, consult the network module documentation.
 #
 # --------------------------------- Discovery ----------------------------------
 #
 # Pass an initial list of hosts to perform discovery when this node is started:
 # The default list of hosts is ["127.0.0.1", "[::1]"]
 #
 #
 # Bootstrap the cluster using an initial set of master-eligible nodes:
 #
 #
 # For more information, consult the discovery and cluster formation module documentation.
 #
 #----------------------- BEGIN SECURITY AUTO CONFIGURATION -----------------------
 #
 # The following settings, TLS certificates, and keys have been automatically      
 # generated to configure Elasticsearch security features on 12-12-2023 00:39:26
 #
 # --------------------------------------------------------------------------------
 ​
 # Enable security features
 xpack.security.enabled: true
 ​
 xpack.security.enrollment.enabled: true
 ​
 # Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents
 xpack.security.http.ssl:
   enabled: true
   keystore.path: certs/elastic-stack-ca.p12
 ​
 # Enable encryption and mutual authentication between cluster nodes
 xpack.security.transport.ssl:
   enabled: true
   verification_mode: certificate
   keystore.path: certs/elastic-certificates.p12
   truststore.path: certs/elastic-certificates.p12
 # Create a new cluster with the current node only
 # Additional nodes can still join the cluster later
 # 节点的ip地址, 首次启动完成后删除或注释此配置项
 cluster.initial_master_nodes: ["xxx.xx.xx.xx"]
 ​
 #----------------------- END SECURITY AUTO CONFIGURATION -------------------------
 ​
 # Allow other nodes to join the cluster from anywhere
 # Connections are encrypted and mutually authenticated
 transport.host: 0.0.0.0
 ​
 ingest.geoip.downloader.enabled: false
  • 再次分配文件夹权限(保证新用户权限覆盖文件夹中所有新生成的文件)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 chown -R elastic:elastic elasticsearch-8.5.0
 chmod -R 777 elasticsearch-8.5.0

(2) 新用户下进行

执行以下命令,提示输入密码时输入elastic,即生成安全证书时设置的密码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 ./bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password
 ./bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password
 ./bin/elasticsearch-keystore add xpack.security.http.ssl.keystore.secure_password
 ./bin/elasticsearch-keystore add xpack.security.http.ssl.truststore.secure_password
  • 启动节点
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 # 切换新用户
 su elastic
 cd elasticsearch-8.5.0/bin
 ./elasticsearch
  • 启动成功后,节点启动页面会打印如下信息,分别是系统为 elastic 用户生成的密码,CA证书指纹,用于连接 kibana 的 token , 用于给集群添加新节点的 token。建议保存下来,两个 token 有 30min 有效时间,可以不保存,需要时再用下面的命令重新生成
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 ✅ Elasticsearch security features have been automatically configured!
 ✅ Authentication is enabled and cluster connections are encrypted.
 ​
 ℹ️  Password for the elastic user (reset with `bin/elasticsearch-reset-password -u elastic`):
   *_LNlFhqK5ULjbCyEYee
 ​
 ℹ️  HTTP CA certificate SHA-256 fingerprint:
   6aea402bdf44d4f64d77b9c01ac87904264c07943a4087af0492e84247f9ab86
 ​
 ℹ️  Configure Kibana to use this cluster:
 • Run Kibana and click the configuration link in the terminal when Kibana starts.
 • Copy the following enrollment token and paste it into Kibana in your browser (valid for the next 30 minutes):
   eyJ2ZXIiOiI4LjUuMCIsImFkciI6WyIxMC40MC4wLjA6OTIwMCJdLCJmZ3IiOiI2YWVhNDAyYmRmNDRkNGY2NGQ3N2I5YzAxYWM4NzkwNDI2NGMwNzk0M2E0MDg3YWYwNDkyZTg0MjQ3ZjlhYjg2Iiwia2V5IjoiOE5RU1hJd0JkcGJWLTFXV3ZKdVY6VkRPYTJIOWdTNjIxdGVWbkFjTFRDQSJ9
 ​
 ℹ️ Configure other nodes to join this cluster:
 • Copy the following enrollment token and start new Elasticsearch nodes with `bin/elasticsearch --enrollment-token <token>` (valid for the next 30 minutes):
   eyJ2ZXIiOiI4LjUuMCIsImFkciI6WyIxMC40MC4wLjA6OTIwMCJdLCJmZ3IiOiI2YWVhNDAyYmRmNDRkNGY2NGQ3N2I5YzAxYWM4NzkwNDI2NGMwNzk0M2E0MDg3YWYwNDkyZTg0MjQ3ZjlhYjg2Iiwia2V5IjoiOHRRU1hJd0JkcGJWLTFXV3ZKdXU6SXJObjMtVUxSanlSek4wdzRPOGtoUSJ9

生成kibana连接token的命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 ./bin/elasticsearch-create-enrollment-token -f --scope kibana -E xpack.security.http.ssl.verification_mode=certificate

生成用于添加新节点的token的命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 ./bin/elasticsearch-create-enrollment-token -f --scope node -E xpack.security.http.ssl.verification_mode=certificate
  • 关闭节点
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 # 如果没有以守护进程的方式启动,直接ctrl+c就可以关闭程序
 # 如果以守护进程的方式启动则需要查询进程PID再杀死进程关闭程序
 ps -ef | grep elasticsearch
 kill -9 <进程PID>
  • 节点配置成systemd服务
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 su root 
 cd /lib/systemd/system/      ###配置服务的目录
 vim /lib/systemd/system/elasticsearch.service     ###写入如下内容
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 [Unit]
 Description=elasticsearch
 After=network.target
 ​
 [Service]
 Type=simple
 User=elastic
 # elasticsearch安装目录
 ExecStart=/opt/elasticsearch-8.5.0/bin/elasticsearch
 PrivateTmp=true
 # 指定此进程可以打开的最大文件数
 LimitNOFILE=65535
 # 指定此进程可以打开的最大进程数
 LimitNPROC=65535
 # 最大虚拟内存
 LimitAS=infinity
 # 最大文件大小
 LimitFSIZE=infinity
 Restart=on-failure
 ​
 [Install]
 WantedBy=multi-user.target
  • 配置开机自启,并启动节点
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 # 更新systemd配置文件
 systemctl daemon-reload
 # 使服务生效
 systemctl enable elasticsearch
 # 启动服务
 systemctl start elasticsearch
 # 查看服务状态
 systemctl status elasticsearch

进入 https://xxx.xx.xx.xxx:9200/ 查看节点是否启动成功

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
ElasticSearch-7.17.24设置密码及CA证书
将ElasticSearch集群从开源版本升级为具备安全认证功能的版本(如X-Pack),为集群配置SSL/TLS加密并启用安全认证。
火之高兴
2024/10/21
3890
ES8集群部署
这次ES8集群部署花的时间真不少,还熬了两夜,原本是比较简单的,同事搞就可以了,结果还是超出了预期,不熟悉的东西部署也是相当耗时间的。开始是准备基于Docker部署的,但是没有成功,网上参考了很多,调各个配置参数,就是没成功,后来看到这个文章:https://www.zsjweblog.com/2022/03/09/elasticsearch8-1-0%e9%9b%86%e7%be%a4%e6%90%ad%e5%bb%ba/,改为直接使用安装包进行部署,在测试机上尝试是可以把几个节点服务连接成一个集群的。
明月AI
2024/02/26
7990
ES8集群部署
使用 EFKLK 搭建 Kubernetes 日志收集工具栈
前面大家介绍了 Kubernetes 集群中的几种日志收集方案,Kubernetes 中比较流行的日志收集解决方案是 Elasticsearch、Fluentd 和 Kibana(EFK)技术栈,也是官方现在比较推荐的一种方案。
CNCF
2021/05/07
2.1K0
使用 EFKLK 搭建 Kubernetes 日志收集工具栈
Elastic Stack 7.5 X-Pack 安全功能部署
elasticsearch kibana 基本上是多人使用的, 所以进行权限控制是必然,以提高安全保障
用户6641876
2020/02/19
1.3K0
ES集群设置密码
在es的bin目录下执行./elasticsearch-certutil ca生成elastic-stack-ca.p12 [root@localhost elasticsearch-7.6.0]# cd bin/ [root@localhost bin]# ls elasticsearch elasticsearch-cli elasticsearch-keystore elasticsearch-saml-metadata elasticsearch-
summerking
2022/09/19
2.2K0
ES集群设置密码
elasticsearch CCR CCS互信配置
export ES_JAVA_HOME=/data/es8/cluster1/node1/jdk
周银辉
2024/06/27
2081
TBDS-Elasticsearch安全认证配置方法
ES高版本已经支持x-pack认证,TBDS的ES版本是6.4.2,默认已经安装了x-pack,下面是配置方法。
袁宋
2020/12/18
3K0
1.Elasticsearch8 集群搭建和Kibana安装
用于定义初始的主节点,确保主节点选举的有效性。这里面的名字要和node.name保持一致
AI码师
2023/08/18
7220
1.Elasticsearch8 集群搭建和Kibana安装
Linux 安装部署 Kibana 8.5.0
是条鱼呀
2024/03/16
4210
Linux 安装部署 Kibana 8.5.0
ES8.8集群与Kibana部署
es可以使用二进制、docker、k8s、rpm方式部署,此处以rpm方式为例。相较于二进制部署,省去了繁琐的用户创建、证书生成、密码设置、启动脚本配置等操作,简化部署流程,可以将更多的精力用于es的使用而不是部署上面。如果资源有限,想体验elk相关功能,可参考文档:https://www.cuiliangblog.cn/detail/section/117075458,后续也会发布docker模式下elk自定义日志采集文章。
章工运维
2024/03/13
1K0
ES8.8集群与Kibana部署
ElasticSearch安装手册
可以使用wget方式进行安装包的下载或直接访问downloads地址下载安装包后上传至相应节点并进行解压。
空洞的盒子
2024/07/15
1.2K1
Elasticsearch8.13.0安装指引
空洞的盒子
2024/10/09
7472
Elasticsearch X-pack的实际应用
用户数据的安全性一直是开发和运维人员关注的重点问题,Elasticsearch在6.8之前官方的X-pack安全认证功能都是收费的,所以很多人都采用Search Guard或者ReadOnly REST这些免费的安全插件对Elasticsearch进行安全认证。但是使用者都知道Search Guard插件存在很多Bug,比如节点gc超时导致集群掉线后,重启很有可能就要重新进行Search Guard的刷新。从Elasticsearch 6.8开始,Security 纳入 x-pack 的 Basic 版本中,免费使用一些基本的功能。本文将对X-pack安全认证的过程进行详细的讲解。
雨夜v1
2021/07/08
2.5K1
Elasticsearch X-pack的实际应用
docker安装Elasticsearch7.6集群并设置密码
Elasticsearch从6.8开始, 允许免费用户使用X-Pack的安全功能, 以前安装es都是裸奔。接下来记录配置安全认证的方法。
Ryan-Miao
2020/04/10
5.7K0
docker安装Elasticsearch7.6集群并设置密码
ES7.8 设置 xpack
单节点 xpack 配置 ---- 修改 ES 配置文件,开启 Security 默认文件:./config/elasticsearch.yml xpack.security.enabled: true xpack.security.transport.ssl.enabled: true 配置修改完之后重启 ES。 设置内置用户密码 ./bin/elasticsearch-setup-passwords interactive 修改 Kibana 配置文件,访问 ES 默认文件:$KIBANA_HOME/c
山海散人
2021/03/03
3K0
Elasticsearch集群安装
Elasticsearch由Java构建,其内置JDK,官方推荐使用内置JDK来运行Elasticsearch。如果没有安装JDK,那么无需另行安装,启动时会自动使用内置JDK;如果已经安装JDK且试图使用已安装的JDK来运行Elasticsearch,那么需要删除内置JDK目录,然后配置JAVA_HOME环境变量即可。
程序猿杜小头
2022/12/01
4450
【docker】使用docker安装部署elasticsearch+Kibana
Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。作为 Elastic Stack 的核心,它集中存储您的数据,帮助您发现意料之中以及意料之外的情况。
宝耶需努力
2022/12/13
4K0
【docker】使用docker安装部署elasticsearch+Kibana
es集群使用xpack(基于elastic 6.5.4)
保存elastic-certificates.p12路径并输入密码(123456) 将上面生成的两个文件拷贝到elastic的config目录下 比如我设置的是在config/certs下面
日薪月亿
2019/05/14
4.6K0
es集群使用xpack(基于elastic 6.5.4)
Docker 最佳实战:Docker 部署单节点 ElasticSearch 实战
今天分享的内容是 Docker 最佳实战「2024」 系列文档中的 Docker 部署单节点 ElasticSearch 实战。
运维有术
2024/05/08
1.9K0
Docker 最佳实战:Docker 部署单节点 ElasticSearch 实战
云服务器 Centos7 部署 Elasticsearch 8.0 + Kibana 8.0 指南
默认的不修改任何配置的官方推荐的部署方式,很快!基本上 0 配置修改动动鼠标即可完成部署。参考如下文章:
铭毅天下
2022/04/06
2.5K0
云服务器 Centos7 部署 Elasticsearch 8.0 + Kibana 8.0 指南
相关推荐
ElasticSearch-7.17.24设置密码及CA证书
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验