下载地址于 https://www.elastic.co/downloads/elasticsearch , 当时下载是 6.0.1 版本, 目前 (2017.12.14) 为 6.1.0 版本,以下是否适用,不予验证。
此版本为编译好的版本,因此无需重新编译。
安装比较简单,因为上面下载的.zip版本为编译好的版本,因此无需重新编译,需要注意的是安装环境。
安装完毕后,进入es目录,即
cd $ES_HOME (即elasticsearch安装目录)
bin/elasticsearch
即可启动,启动后可能有各种问题,见 3. 注意事项
下面附属笔者的环境:
* soft nofile 65536
* hard nofile 65536
直接重新登陆用ulimit -n就能看到效果(笔者这边需要一次切换用户才起效力)
vm.max_map_count=655360
然后执行命令:
sysctl -p
如果是单机部署,以上就可以使用了, 但是集群部署需要重新配置一下
配置文件(建议, 参考 https://www.elastic.co/guide/en/elasticsearch/reference/current/important-settings.html):
node.name: ${HOSTNAME}
network.host: 设置为当前主机的IP(Non-loopback)
discovery.zen.ping.unicast.hosts:[ip1,ip2,domain3,hostname4](提供几个集群内主机IP,按官方说法,只是 seeds, 无需全部)
master_eligible_nodes=有资格被设置为主节点的节点数/2 + 1 (有资格被设置为主节点的配置为node.master=true,也是默认设置为均可,这是为了防止集群脑裂的)
使用 SCP SSH复制命令进行集群部署
scp -r $LOCAL_DIR $REMOTE_IP:$REMOTE_DIR
启动节点,会有 with same id 错误,因为node-id使用了data目录下的文件进行了Hash,因此只需要将data目录下的文件全部删除,启动即可,具体原因参考 https://github.com/elastic/elasticsearch/issues/21405
具体的SSH免密登录方式,请查看 http://www.cnblogs.com/lzxlfly/p/7221890.html
ElasticSearch 提供了RestAPI (9200端口, 默认), 因此使用curl命令可进行连接
curl -XGET -H 'Content-type:application/json' 'http://IP:PORT/_cluster/health'