本文仅记录ElasticSearch7.1 集群配置过程,ElasticSearch及Kibana下载安装过程略,可参考其他文档。
1.在系统中添加elastic账号,ElasticsSearch禁止root账号启动
groupadd elastic
useradd elastic -g elastic
2.修改系统配置
vi /etc/security/limits.conf
* soft nofile 65536
* hard nofile 262144
* soft nproc 32000
* hard nproc 32000
* hard memlock unlimited
* soft memlock unlimited
vi /etc/sysctl.conf
vm.max_map_count=655360
3.修改结点的配置(以下为3个主结点的配置)
cluster.name: test
node.name: es-node-1
node.master: true
node.data: true
path.data: /home/esdata/data
path.logs: /home/esdata/logs
bootstrap.memory_lock: true
network.host: 0.0.0.0
discovery.seed_hosts: ["10.1.100.103", "10.1.100.104", "10.1.100.105"]
cluster.initial_master_nodes: ["10.1.100.103", "10.1.100.104", "10.1.100.105”]
4.集群添加用户安全认证功能
4.1 编辑 elasticsearch.yml 文件,追加如下内容:
xpack.security.enabled: true
xpack.license.self_generated.type: basic
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
4.2 生成 TLS 和身份验证,将会在 config 下生成 elastic-certificates.p12 文件,将此文件传到其他两个节点的 config 目录,注意文件权限
./bin/elasticsearch-certutil cert -out config/elastic-certificates.p12 -pass ""
4.3 将节点 1 上的证书依次拷贝到其他节点
scp elastic-certificates.p12 root@10.1.100.104:/usr/local/elasticsearch-7.1.1/config/
scp elastic-certificates.p12 root@10.1.100.105:/usr/local/elasticsearch-7.1.1/config/
4.4 重启ES集群
ES 集群不启动,下面的添加密码操作执行不了,所以依次重启 3 个节点。
4.5 创建 Elasticsearch 集群密码
在节点 1 上执行如下命令,设置用户密码。设置完之后,数据会自动同步到其他节点
./bin/elasticsearch-setup-passwords interactive
5.配置Kibana
修改kibana.yml配置,如下:
server.port: 5601
server.host: “0.0.0.0"
server.name: “kibana-dev"
elasticsearch.hosts: ["http://10.1.100.103:9200","http://10.1.100.104:9200","http://10.1.100.105:9200"]
elasticsearch.username: ""
elasticsearch.password: ""