Elasticsearch7.x 单机安装及整合x-pack

1 Elasticsearch 是什么

引用官方对es的描述:

Elasticsearch 是一个分布式的免费开源搜索和分析引擎,适用于包括文本、数字、地理空间、结构化和非结构化数据等在内的所有类型的数据。Elasticsearch 在 Apache Lucene 的基础上开发而成,由 Elasticsearch N.V.(即现在的 Elastic)于 2010 年首次发布。Elasticsearch 以其简单的 REST 风格 API、分布式特性、速度和可扩展性而闻名,是 Elastic Stack 的核心组件;Elastic Stack 是一套适用于数据采集、扩充、存储、分析和可视化的免费开源工具。人们通常将 Elastic Stack 称为 ELK Stack(代指 Elasticsearch、Logstash 和 Kibana),目前 Elastic Stack 包括一系列丰富的轻量型数据采集代理,这些代理统称为 Beats,可用来向 Elasticsearch 发送数据。

2.下载安装包

下载地址:https://www.elastic.co/downloads/elasticsearch


选择对应的平台及版本我这里下载的是 elasticsearch-7.15.1.tar.gz

保存至/opt目录下

cd /opt

tar -zxvf elasticsearch-7.15.1.tar.gz

3.创建用户es,用户组es

groupadd es

useradd es -g es -p elasticsearch

4.修改文件权限

cd /opt/

chown -R es:es elasticsearch-7.15.1

5.修改配置文件

cd /opt/elasticsearch-7.15.1/config/

vim elasticsearch.yml

修改以下配置:

集群名称,建议修改成自己的,防止误用默认集群

cluster.name: elasticsearch

设置节点名称

node.name: node-10.10.10.10

配置外网可以访问

network.host: 0.0.0.0

单节点需要修改配置

cluster.initial_master_nodes: ["node-1"]

如果有特殊需求可以设置日志路径和数据路径

path.data: /esdata/data

path.logs: /esdata/log

追加配置文件:


echo "bootstrap.memory_lock: false" >>  /opt/elasticsearch-7.15.1/config/elasticsearch.yml

echo "bootstrap.system_call_filter: false" >> /opt/elasticsearch-7.15.1/config/elasticsearch.yml

echo "* soft nofile 65536" >> /etc/security/limits.conf

echo "* hard nofile 65536" >> /etc/security/limits.conf

echo "* soft nproc 4096" >> /etc/security/limits.conf

echo "* hard nproc 4096" >> /etc/security/limits.conf

echo "vm.max_map_count=655360" >> /etc/sysctl.conf

保存后执行

sysctl -p

6.配置jvm内存大小

cd /opt/elasticsearch-7.15.1/config/

修改文件jvm.options

# Xms represents the initial size of total heap space根据内容需要设置建议设置内容一半

# Xmx represents the maximum size of total heap space 根据内容需要设置建议设置内容一半

-Xms8g 

-Xmx8g

echo "export ES_HEAP_SIZE=8g" >> /opt/elasticsearch-7.15.1/bin/elasticsearch

7.启动服务

su es

cd /opt/elasticsearch-7.15.1/bin/

./elasticsearch -d

8. 访问验证:

curl http://ip/9200

9.X-pack

X-Pack是Elastic Stack扩展功能,提供安全性,警报,监视,报告,机器学习和许多其他功能。 ES7.0+之后,默认情况下,当安装Elasticsearch时,会安装X-Pack,无需单独再安装。

自6.8以及7.1+版本之后,基础级安全永久免费。

10.为集群创建认证机构

文件根目录下执行 

bin/elasticsearch-certutil ca

依次输入回车(文件使用默认名),并输入密码

11.节点颁发证书

TLS需要X.509证书(X.509 证书是一个数字证书,它使用 X.509 公有密钥基础设施标准将公有密钥与证书中包含的身份相关联。X.509 证书由一家名为证书颁发机构 (CA) 的可信实体颁发。CA 持有一个或多个名为 CA 证书的特殊证书,它使用这种证书来颁发 X.509 证书。只有证书颁发机构才有权访问 CA 证书)才能对与之通信的应用程序执行加密和身份验证。 为了使节点之间的通信真正安全,必须对证书进行验证。

在Elasticsearch集群中验证证书真实性的推荐方法是信任签署证书的证书颁发机构(CA)。

这样,只需要使用由同一CA签名的证书,即可自动允许该节点加入集群。

bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12  #依次输入上一个步骤的密码。回车(文件使用默认名),密码(建议与上一步密码相同)

bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password    #并输入第一步输入的密码 

bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password  #并输入第一步输入的密码 

12.复制生成的两个文件到config目录下


13.修改配置

在elasticsearch-7.6.1/config/elasticsearch.yml中增加一下配置,启用x-pack安全组件,启用ssl加密通信,并且配置认证证书:

xpack.security.enabled: true

xpack.security.transport.ssl.enabled: true

xpack.security.transport.ssl.verification_mode: certificate

xpack.security.transport.ssl.keystore.path: elastic-certificates.p12

xpack.security.transport.ssl.truststore.path: elastic-certificates.p12

配置修改完成后,重启es服务,重启成功后 

http://ip/9200访问Es服务要输入用户名和密码

14.密码设置

通过设置访问密码,这是elastic用户和其他一些系统内置用户的密码

bin/elasticsearch-setup-passwords interactive


设置完成后启动并输入用户名密码登录

你可能感兴趣的:(Elasticsearch7.x 单机安装及整合x-pack)