环境要求:
在安装Elasticsearch之前需要先部署好JDK的环境,这里我们以JDK1.8为例。
1、首先到官方下载JDK最新的tar包,然后将其解压到我们自己创建的目录,如/usr/local/jdk1.8
2、修改环境变量,编辑/etc/profile文件,添加以下行
1 | JAVA_HOME=/usr/local/jdk1.8 |
2 | PATH=$JAVA_HOME/bin:$PATH |
3 | export PATH JAVA_HOME |
1 | source /etc/profile |
安装Elasticsearch
1、到官方下载Elasticsearch的tar包并解压,可以看到对应目录如下
2、进入config目录,编辑配置文件elasticsearch.yml,修改以下项(特别注意discovery.zen.minimum_master_nodes一项,官方推荐设置数目是节点数量除以2再加1,我用2台节点测试的时候发现如果设置为2,那么必须要2台节点都同时启动才会正常,也就是说这里可以理解为设置了几,那么必须至少启动几个节点)
1 | cluster.name: estest #配置集群的名字,就算只有一台服务器,Elasticsearch也会认为自己是一个集群,并且是Master角色 |
2 | node.name: server1 #节点名字 |
3 | #path.data: /path/to/data #数据存放路径,根据需求更改 |
4 | #path.logs: /path/to/logs #日志存放路径,根据需求更改 |
5 | network.host: 0.0.0.0 #监听的地址,页可以写本机IP |
6 | http.port: 9200 #监听端口 |
7 | discovery.zen.ping.unicast.hosts: ["10.254.15.69", "10.254.15.70"] #设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点 |
8 | discovery.zen.minimum_master_nodes: 1 #设置有成为Master节点的主机数量 |
4、创建一个用户用于运行ES,然后将Elasticsearch整个目录属主修改为该用户
1 | useradd elasticsearch |
2 | chown -R elasticsearch.elasticsearch /elasticsearch-5.3.0 |
5、创建存放数据的目录,这个目录就是在elasticsearch.yml里所指定的目录,属主也要修改为对应用户
1 | mkdir -p /elasticsearch/logs |
2 | mkdir /elasticsearch/data |
3 | chown -R elasticsearch.elasticsearch /elasticsearch |
6、用创建的账户运行Elasticsearch,如果遇到以下错误,请做修改:
(1)max virtual memory areas vm.max_map_count [65530] is too low
修改/etc/sysctl.conf,增加一行vm.max_map_count= 262144。然后执行sysctl -p使其生效
(2)max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]
修改/etc/security/limits.conf,做以下配置
1 | * soft nproc 65536 |
2 | * hard nproc 65536 |
3 | * soft nofile 65536 |
4 | * hard nofile 65536 |
(3)memory locking requested for elasticsearch process but memory is not locked
将配置文件里的bootstrap.memory_lock: true注释掉
7、再次运行成功,监听了9200、9300两个端口,加-d选项可以让服务在后台运行。可以通过curl验证下
集群的构建:
在另一台节点上也做同样的操作,只不过yml配置文件里的node.name节点名字需要改一下,要保证唯一性。以及network.host这项改为自己的IP即可。其他配置和第一台一致,然后用非root用户启动服务。
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2018 群英 版权所有 茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号-36 粤公网安备 44090202000006号 粤工商备P091701000595