ElasticSearch的安装与扩容
1.安装
将安装包上传到服务器上
执行安装命令
rpm --install elasticsearch-7.9.3-x86_64.rpm
这时会在/etc/
和/usr/share/
目录下各生成一个elasticsearch文件夹
2.配置证书
cd /usr/share/elasticsearch/bin
./elasticsearch-certutil ca # 默认回车,输入密码
./elasticsearch-certutil cert --ca elastic-stack-ca.p12 # 默认回车,输入密码
证书在/usr/share/elasticsearch
目录下
先把证书拷贝到/etc/elasticsearch/
中:
sudo cp /usr/share/elasticsearch/elastic-* /etc/elasticsearch/
修改权限:
sudo chown -R elasticsearch:elasticsearch /etc/elasticsearch/elastic-certificates.p12
sudo chown -R elasticsearch:elasticsearch /etc/elasticsearch/elastic-stack-ca.p12
再将证书发送到集群的其他节点中:
scp -P port /etc/elasticsearch/elastic-certificates.p12 user@ip:/etc/elasticsearch/
scp -P port /etc/elasticsearch/elastic-stack-ca.p12 user@ip:/etc/elasticsearch/
将密码添加到elasticsearch-keystore
cd /usr/share/elasticsearch/bin/
sudo ./elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password
sudo ./elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password
3.配置文件
1.内存配置
推荐内存为15g~20g 但是最好不要超过总内存的一半
32G内存可以设定为15G 64G内存可以设定为20G
vim /etc/elasticsearch/jvm.options
-xms15g
-xmx15g
2.yml文件配置
vim /etc/elasticsearch/elasticsearch.yml
cluster.name: clusterName
node.name: nodeName #每个节点唯一
node.master: true #是否可以当主节点,选true
node.data: true
path.data: /home/es/data #数据存储目录,重要,可以使用多个路径
path.logs: /home/es/log #日志目录
http.port: port
transport.tcp.port: 9300 #http的端口,为了防止攻击,建议不要使用默认的9200
network.host: 0.0.0.0
network.publish_host: 192.168.0.103
discovery.zen.ping.unicast.hosts: [集群ip]
discovery.zen.minimum_master_nodes: 3 #最小master节点数,计算方式为 节点数/2+1。比如一个节点选1,2个节点选择2,3个节点选择2,4个节点选择3,5个选3,6个选4
cluster.initial_master_nodes: master-data-01 #初始节点,可以任意选择一个集群中的一个节点名
action.destructive_requires_name: true
http.cors.enabled: true
http.cors.allow-origin: "*"
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: /etc/elasticsearch/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: /etc/elasticsearch/elastic-certificates.p12
xpack.monitoring.collection.cluster.stats.timeout: '30s'
cluster.max_shards_per_node: 10000
根据配置文件中的日志和数据路径 创建对应的目录并修改权限
sudo mkdir /home/es
sudo mkdir /home/es/data/
sudo mkdir /home/es/log/
sudo chown -R elasticsearch:elasticsearch /home/es/
sudo chown -R elasticsearch:elasticsearch /home/es/data/
sudo chown -R elasticsearch:elasticsearch /home/es/log/
设置开机自启
/bin/systemctl daemon-reload
/bin/systemctl enable elasticsearch.service
3.启动es
systemctl start elasticsearch
4.扩容
1.安装
在新节点上安装es并配置证书文件
注意修改集群配置
启动节点
通过head插件查看新节点是否已经加入到了集群之中
等待几分钟 当集群扩容基本完成之后 滚动重启之前的节点 使得修改的配置生效
注意:不要同时重启多个节点,当集群稳定之后再重启下一个节点
5.卸载es
1.查看es进程名
rpm -qa | grep elasticsearch
2.卸载es
rpm -e --nodeps elasticsearch
3.删除es相关目录
rm -rf /etc/elasticsearch
rm -rf /usr/share/elasticsearch
rm /home/es/
4.查看是否卸载成功
systemctl status elasticsearch