前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ElasticSearch安装手册

ElasticSearch安装手册

原创
作者头像
空洞的盒子
发布2024-07-15 10:19:02
640
发布2024-07-15 10:19:02
举报
文章被收录于专栏:JD的专栏

环境要求

软件

版本

Elasticsearch版本

7.17.22

系统

Ubuntu 64bit

节点要求

节点规格

磁盘容量

数量

用途

16C64G

4096G SSD

3

Elasticsearch Data Node

4C16G

100G SSD

3

Elasticsearch Master Node

注:具体规格以生产环境业务需求为准进行评估。

部署方式

1.Elasticsearch安装包的下载

可以使用wget方式进行安装包的下载或直接访问downloads地址下载安装包后上传至相应节点并进行解压。

代码语言:bash
复制
cd /data
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.22-linux-x86_64.tar.gz
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.22-linux-x86_64.tar.gz.sha512
shasum -a 512 -c elasticsearch-7.17.22-linux-x86_64.tar.gz.sha512 
tar -zxzf elasticsearch-7.17.22-linux-x86_64.tar.gz
cd elasticsearch-7.17.22/

注:在本文中统一安装至/data目录下

2.JDK环境的安装

这里我们使用Elasticsearch安装包中自带的JDK环境,配置JDK环境变量。

代码语言:bash
复制
vi /etc/profile
#在文件末尾加入以下三行内容
export JAVA_HOME=/data/elasticsearch-7.17.22/jdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
#添加完成后进行保存
:wq
#使用source命令进行profile文件的更新
source /etc/profile

执行java -version验证JDK版本,如下图所示,即为JDK环境配置成功。

3.JVM参数修改

进入”/data/elasticsearch-7.17.22/config”目录下,找到”jvm.options”文件。

代码语言:bash
复制
cd /data/elasticsearch-7.17.22/config
vi jvm.options
#找到IMPORTANT: JVM heap size部分
#打开##,修改JVM堆内存额度
-Xms32g
-Xmx32g
#保存并退出
:wq

修改后如图所示:

注:Elasticsearch节点堆内存默认设置为节点内存总额度的一半,最大支持设置为32g。

4.Elasticsearch基础配置参数修改

进入”/data/elasticsearch-7.17.22/config”目录下,找到” elasticsearch.yml”文件。

进入文件后需要找到以下属性并进行属性值修改(修改时需要打开#注释):

代码语言:bash
复制
cd /data/elasticsearch-7.17.22/config
vi elasticsearch.yml
#设置集群名称
cluster.name: demo-cluster
#设置节点名(可以根据节点角色与节点主机名进行设置)
node.name: es-data-node1
#如果节点为集群的专用主节点,需添加以下两行内容
node.master: true
node.data: false
#设置数据存放目录(需要设置为节点数据磁盘的挂载目录)
path.data: /path/to/data
#设置日志存放目录
path.logs: /var/logs/elasticsearch
#打开启动时锁定内存
bootstrap.memory_lock: true
#设置节点在网络中的IP(建议设置为节点的IP地址,需要替换为实际的节点IP)
network.host: 192.168.10.100
#设置HTTP端口
http.port: 9200
#设置transport通信端口,添加以下内容
transport.tcp.port: 9300
#设置节点发现列表(主要配置用于作为主节点的IP与端口,建议配置为奇数)
discovery.seed_hosts: ["192.168.10.100:9300","192.168.231.10:9300","192.168.231.10:9300"]
#设置节点发现时间
discovery.find_peers_interval: 120s
#设置初始符合主节点条件的节点进行集群引导(这里需要配置为与seed_hosts中配置的IP对应的主机名)
cluster.initial_master_nodes: ["es-node1", " es-node2","es-node3"]

5.设置TLS

生成CA证书

代码语言:bash
复制
./bin/elasticsearch-certutil ca

在生成时,可以按需设置证书的名字与证书的密码,改密码设置后建议记录保存。

然后在elasticsearch.yml文件末尾添加以下证书配置内容,这里需要正确配置证书的名称,路径等信息.

代码语言:xml
复制
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate 
xpack.security.transport.ssl.client_authentication: required
xpack.security.transport.ssl.keystore.path: elastic-ca.p12
xpack.security.transport.ssl.truststore.path: elastic-ca.p12

由于之前在创建证书时输入了密码,这里需要执行以下两步,将密码保存至Elasticsearch的秘钥库中。

代码语言:bash
复制
./bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password

代码语言:bash
复制
./bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password

这里每执行一步都需要输入之前创建证书时输入的密码

6.配置Elasticsearch用户与用户组

由于Elasticsearch在启动时,不允许使用root账户进行启动,所以需要为Elasticsearch单独创建用户与用户组。

代码语言:bash
复制
#依次执行以下命令进行用户组与用户的创建
useradd elasticsearch
groupadd elasticsearch
usermod -a -G elasticsearch elasticsearch
#修改Elasticsearch安装目录及文件的用户与用户组
chown -R elasticsearch:elasticsearch elasticsearch-7.17.22

7.启动Elasticsearch

这里以守护进程的模式进行Elasticsearch服务的启动。

代码语言:bash
复制
#切换至elasticsearch用户
su elasticsearch
#以守护进程的方式启动Elasticsearch
cd /data/elasticsearch-7.17.22
./bin/elasticsearch -d -p pid
#终止Elasticsearch服务
pkill -F pid

8.修改elastic账户的密码

运行以下命令,进行Elasticsearch相应账户的修改,用于设置相关账户的密码,便于后续其他服务进行访问。

代码语言:bash
复制
bin/elasticsearch-setup-passwords interactive

注:修改后的密码建议保存,后续kibana等需要访问Elasticsearch数据的服务都会使用。

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 环境要求
  • 节点要求
  • 部署方式
    • 1.Elasticsearch安装包的下载
      • 2.JDK环境的安装
        • 3.JVM参数修改
          • 4.Elasticsearch基础配置参数修改
            • 5.设置TLS
              • 6.配置Elasticsearch用户与用户组
                • 7.启动Elasticsearch
                  • 8.修改elastic账户的密码
                  相关产品与服务
                  Elasticsearch Service
                  腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档