上篇记录了es的安装启动,本篇再简单记录下es的集群搭建。
简单来说只要修改config文件夹下的elasticsearch.yml再启动即可。
cluster.name: sunwei_es #此参数为集群名,同一集群下的各节点要一致
node.name: es_130 #此参数为节点名,同一集群下不能相同
transport.tcp.port: 9300 #集群建通信端口
http.port: 9200 #http 端口
http.cors.enabled: true # elasticsearch中启用CORS
http.cors.allow-origin: "*" #保证此es服务可被其他机器访问
discovery.zen.ping.unicast.hosts: ["192.168.126.129:9300", "192.168.126.130:9300"] #在此处配置集群里的各节点ip和端口
各节点都这样配置、启动即可。
注意:各个节点的相应端口要对外开放。
以上是低版本的es集群部署方法,下面是8.2.0版本的集群部署方法,此处没有开启用户名密码认证。
1.不能直接用root启动es,所以要建一个新用户并且赋es的安装文件夹权限给此用户
useradd es
passwd es
chown -R es /opt/soft/elasticsearch-8.2.0
2.修改服务器配置,符合es的安装要求,不然报错
vim /etc/security/limits.conf 添加以下内容: es soft nofile 65536 es hard nofile 131072 es soft nproc 2048 es hard nproc 4096 vim /etc/sysctl.conf 添加参数: vm.max_map_count=655360 sysctl -p
3.es配置文件,其中ip和集群名、节点名按照实际修改一下放到各个节点上去,然后重启各节点即可
xpack.security.enabled: false
xpack.security.enrollment.enabled: false
cluster.initial_master_nodes: ["node1","node2","node3"]
http.host: 0.0.0.0
network.host: 0.0.0.0 #允许连接IP
cluster.name: sunwei_es #此参数为集群名,同一集群下的各节点要一致
node.name: node1 #此参数为节点名,同一集群下不能相同
transport.port: 9300 #集群建通信端口
http.port: 9200 #http 端口
http.cors.enabled: true # elasticsearch中启用CORS
http.cors.allow-origin: "*" #保证此es服务可被其他机器访问
discovery.seed_hosts: ["192.168.48.7:9300","192.168.48.112:9300", "192.168.48.253:9300"]