简介:本文将详细介绍如何搭建Elasticsearch 7集群,并配置节点证书以确保集群的安全性。我们将按照以下步骤进行操作:下载和安装Elasticsearch、创建集群认证机构、为节点颁发证书、保存证书密码和将证书移动到config目录。通过这些步骤,我们将能够成功地搭建一个安全的Elasticsearch 7集群。
一、下载和安装Elasticsearch
首先,我们需要从官网下载Elasticsearch的安装包。选择适合自己操作系统的版本,这里以Linux x86_64类型为例,下载7.9.0版本。下载完成后,使用tar命令解压安装包。解压后,生成一个名为elasticsearch-7.9.0的文件夹。为了方便管理,新建一个文件夹elasticsearch-cluster,并将elasticsearch-7.9.0文件夹复制三份,分别重命名为elasticsearch-cluster/elasticsearch-9301、elasticsearch-cluster/elasticsearch-9302和elasticsearch-cluster/elasticsearch-9303。
二、创建集群认证机构
进入Elasticsearch根目录,执行以下命令创建集群认证机构:
bin/elasticsearch-certutil ca
执行命令后会有两次输入,第一次为CA文件名,第二次为密码。建议依次输入回车(文件使用默认名,不设置密码)。执行完会在ES根目录生成elastic-stack-ca.p12文件(默认文件名)。
三、为节点颁发证书
执行以下命令为节点颁发证书:
bin/elasticsearch-certutil cert —ca elastic-stack-ca.p12
执行命令后会有三次输入:第一次输入为CA密码;第二次输入为证书文件名,建议直接回车(使用默认文件名);第三次输入为证书密码。执行完会在ES目录生成elastic-certificates.p12文件(默认文件名)。
四、保存证书密码
使用elasticsearch-keystore命令保存证书密码:
bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password
bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password
如果没有创建keystore文件,会提示是否创建,输入y即可(文件默认创建在elasticsearch.yml同级目录下)。然后输入证书密码。经测试证书密码为空的时候,可以省略这一步。
五、将生成的证书移动到config目录并重启es服务
将生成的elastic-certificates.p12文件和elastic-stack-ca.p12文件移动到config目录,然后重启es服务:
mv elastic-certificates.p12 config/
mv elastic-stack-ca.p12 config/
经测试,elastic-stack-ca.p12文件可以不保留。
六、为集群中其他节点颁发证书
有两种方法任一都可以:进入集群中其他节点ES目录,拷贝步骤2生成的CA文件到ES根目录,然后重复步骤3、4、5;或者登录其他es应用用户,拷贝步骤3生成的证书文件和keystore文件,放到ESconfig目录,然后重启es服务。
至此,我们已经完成了Elasticsearch 7集群的搭建和节点证书的配置。现在,您的Elasticsearch集群已经具备了安全保障,可以确保数据传输的安全性和集群的稳定性。请记住,这只是一个简单的示例配置,实际应用中可能需要根据具体情况进行更详细的配置和优化。