elasticsearch集群部署,及采坑问题

1,官网下载安装包html

2,解压安装包到指定的目录node

tar -zxvf elasticsearch-6.5.4.tar.gzes6

3,重命名bootstrap

mv elasticsearch-6.2.1  elasticsearchvim

4,建立数据存放路径(应将设置配置为在Elasticsearch主目录以外定位数据目录,以便在不删除数据的状况下删除主目录!)跨域

mkdir -p /home/data/es数组

5,创建用户并受权(es不能用root运行)服务器

groupadd es 网络

useradd es -g esapp

passwd es

chown -R es.es /home/elasticsearch /home/data/es

6,修改elasticsearch配置文件

vi /home/elasticsearch/config/elasticsearch.yml 将配置文件如下内容进行修改:

#集群的名称
cluster.name: es6.2
#节点名称,其他两个节点分别为node-2 和node-3
node.name: node-1
#指定该节点是否有资格被选举成为master节点,默认是true,es是默认集群中的第一台机器为master,若是这台机挂了就会从新选举master
node.master: true

bootstrap.memory_lock: false

bootstrap.system_call_filter: false

#容许该节点存储数据(默认开启)
node.data: true
#索引数据的存储路径
path.data: /home/data/es
#日志文件的存储路径
path.logs: /home/data/es/logs
#设置为true来锁住内存。由于内存交换到磁盘对服务器性能来讲是致命的,当jvm开始swapping时es的效率会下降,因此要保证它不swap
bootstrap.memory_lock: true
#绑定的ip地址
network.host: 0.0.0.0
#设置对外服务的http端口,默认为9200
http.port: 9200
# 设置节点间交互的tcp端口,默认是9300
transport.tcp.port: 9300
#Elasticsearch将绑定到可用的环回地址,并将扫描端口9300到9305以尝试链接到运行在同一台服务器上的其余节点。
#这提供了自动集群体验,而无需进行任何配置。数组设置或逗号分隔的设置。每一个值的形式应该是host:port或host
#(若是没有设置,port默认设置会transport.profiles.default.port 回落到transport.tcp.port)。
#请注意,IPv6主机必须放在括号内。默认为127.0.0.1, [::1]
discovery.zen.ping.unicast.hosts: ["192.168.8.101:9300", "192.168.8.103:9300", "192.168.8.104:9300"]
#若是没有这种设置,遭受网络故障的集群就有可能将集群分红两个独立的集群 - 分裂的大脑 - 这将致使数据丢失

discovery.zen.minimum_master_nodes: 3

# 是否支持跨域

http.cors.enabled: true

# *表示支持全部域名

http.cors.allow-origin: "*"

7,启动

su es 

/home/elasticsearch/bin/elasticsearch -d

8,坑问题

启动发现报错:

解决方法:

su root

vim /etc/security/limits.conf

* soft nofile 65536 

* hard nofile 65536

 * soft nproc 2048

 * hard nproc 4096

vi /etc/sysctl.conf

vm.max_map_count=655360,修改完以后需从新启动机器,临时修改

执行命令:

sysctl -w vm.max_map_count=262144

查看结果:

sysctl -a|grep vm.max_map_count

显示:

vm.max_map_count = 262144

改完以后须要推出终端,从新链接,而后再次启动es

 

原文出处:https://www.cnblogs.com/daxiangfei/p/10245751.html

相关文章
相关标签/搜索