Elasticsearch搭建集群步骤: |
(1). 解压文件到指定目录。 |
(2). 修改elasticsearch.yml配置文件: |
[root@hadoop102 elasticsearch]# vim /opt/module/elasticsearch/config/elasticsearch.yml |
cluster.name :ES (集群名称,这个自定义)。 |
node.name: hadoop102 (节点名称)。 node.master: true 表示节点是否具有成为主节点的资格, 注意:此属性的值为true,并不意味着这个节点就是主节点。 因为真正的主节点,是由多个具有主节点资格的节点进行选举产生的。所以,这个属性只是代表这个节点是不是具有主节点选举资格。 |
node.data: true 这个属性表示节点是否存储索引数据。 |
path.data : 自行设置索引数据的存储路径。 path.log : 存放log日志的目录。 |
bootstrap.memory_lock : false 如果设置为true,会导致硬盘频繁读,IOPS变高,导致集群启动失败,所以为了避免出现这样的问题,需要将该项设置为false。 |
network.host: hadoop104 这个参数是用来同时设置集群节点之间交互的ip地址。 |
http.port : 设置对外服务的http端口,默认为9200。 |
transport.tcp.port: 设置节点间交互的tcp端口,默认是9300。 |
discovery.seed_hosts: ["hadoop103","hadoop104"] 写入候选主节点的设备地址,在开启服务后可以被选为主节点。 cluster.initial_master_nodes :["hadoop102"] 集群中默认的主节点。 |
(3). 修改 jvm.option文件: |
修改总堆空间的初始大小: -Xms512m -Xmx512m 修改堆最大值和最小值,改为512m, 默认为1G,目的就是启动时占用少量内存。 |
(4) . 修改系统文件(以下设置都是在root用户下设置): |
1. 通过命令方别修改 : vim /etc/security/limits.conf 添加以下内容: |
* soft nproc 65536 * hard nproc 65536 |
* soft nofile 131072 * hard nofile 131072 |
修改完后,保存退出! |
2. 通过命令修改 : vim /etc/sysctl.conf 在文件末尾加上: vm.max_map_count =655360 , 然后保存退出! |
这是要注意,一定要让sysctl.conf文件配置生效,使用命令 sysctl vm.max_map_count=655360,如果出现vm.max_map_count = 655360 ,则说明配置生效。 |
3. 修改 /etc/systemd/user.conf 及/etc/systemd/system.conf : |
DefaultLimitNOFILE=65536 |
完成以上步骤,Iserach主节点配置完毕,接下来 [root@hadoop102 module]# chown -R tom elasticsearch [root@hadoop102 elasticsearch]# cd /bin [root@hadoop102 elasticsearch]# su tom [tom@hadoop102 elasticsearch]$ bin/elasticsearch 注意:elasticsearch启动需要在普通用户下启动,不能用root用户启动,否则会报错 最后将hadoop102配置好的文件分发到hadoop103,hadoop104,修改node.name分别hadoop103,hadoop104, 然后分别启动即可。 |