ElasticSearch集群搭建
正文
一、调整内核参数
vim /etc/sysctl.conf
vm.max_map_count=262144
vim /etc/security/limits.conf
- soft nofile 65536
- hard nofile 65536
sysctl -p
二、解压文件
tar -zxf elasticsearch-7.16.3-linux-x86_64.tar.gz
三、重命名(根据自己喜欢)
mv elasticsearch-7.16.3-linux-x86_64.tar.gz es-9200
四、调整服务内存(根据服务器空间内存分配)
vim es-9200/config/jvm.options
-Xms32g
-Xmx32g
五、配置elasticsearch相关配置
vim es-9200/config/elasticsearch.yml
1.需调整的配置项:
cluster.name 集群名称
node.name 节点名称
network.host 是否开启外网访问,只有配置为0.0.0.0时,其他服务器才能访问
discovery.seed_hosts 集群所有节点
cluster.initial_master_nodes 集群初始主节点
xpack.security.enabled http安全访问
xpack.security.transport.ssl.enabled 集群节点ssl安全访问
2.添加证书配置
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
注意:
node.name: node-1 ##根据不同的节点修改
path.data: /app/es-9200/data##创建data文件目录并改属组
path.logs: /app/es-9200/logs##创建logs文件目录并改属组
cluster.initial_master_nodes: ["node-1"]##集群初始主节点,默认node-1
六、复制调整好的es-9200程序包到各个节点,并调整相关配置。
七、创建es用户并修改文件属组
useradd -s /bin/bash -d /app/es-9200/ -m es
如果切换显示异常,cp /root/.bashrc /app/es-9200/
递归修改整个程序包属组:chown -R es:es /app/es-9200
八、配置密码和节点证书
1.切换es用户,并在程序目录下
su - es;cd /app/es-9200/
2.生成证书
./bin/elasticsearch-certutil ca
统一回车,看到生成elastic-stack-ca.p12文件
3.颁发证书
./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
统一回车不输入密码,看到生成elastic-certificates.p12文件
4.分发证书到对应节点
scp -rp elastic-certificates.p12 root@es02:/app/es-9200/config/
scp -rp elastic-certificates.p12 root@es03:/app/es-9200/config/
scp -rp elastic-certificates.p12 root@es04:/app/es-9200/config/
....
mv elastic-certificates.p12 config/
5.重新修改下所有节点的文件属组
chown -R es:es /app/es-9200
九、创建systemctl启动es
vim /usr/lib/systemd/system/es.service
[Unit]
Description=elasticsearch
After=network.target
[Service]
Type=simple
User=es
Group=es
LimitNOFILE=100000
LimitNPROC=100000
Restart=no
ExecStart=/app/es-9200/bin/elasticsearch
PrivateTmp=true
[Install]
WantedBy=multi-user.target
十、启动服务
systemctl start es
systemctl status es
十一、主节点修改密码,建设设置强口令
./bin/elasticsearch-setup-passwords interactive