一、ElasticSearch5.6.3下载安装步骤
说明:ElasticSearch的运行不能用root执行,自己用useradd命令新建一个用户如下所示:
下载地址:https://www.elastic.co/downloads/elasticsearch 下载最新的安装包并解压、然后执行、命令如下:
执行之前就得修改配置文件:vim config/elasticsearch.yml
修改方法参考如下:
解释说明:
bootstrap.memory_lock: false
bootstrap.system_call_filter: false 一看就知道是关于内用访问的方面的配置
cluster.name 集群名字,同一个集群中使用相同名字,单机就随意
node.name: node-01 节点名字
node.master: 是否为集群的master机器
node.data: true 是否作为数据节点
network.host: 192.168.0.153 这个不用自然是配置ip地址的
http.port: 9200 端口号,不配置的话默认9200
discovery.zen.ping.unicast.hosts: [“192.168.0.153”,”192.168.0.154”,”192.168.0.155”] 这个就是配置集群的时候要用的到了,[]中填上集群中其他集群的ip的地址,如果是master的话请把所有salve的机器地址填上
discovery.zen.minimum_master_nodes: 2 关于这个值配置多少合适的话大家去搜一下,自己权衡一下集群,这里我用了3台机器模拟集群,所以填上2。
http.cors.enabled: true 这个参数的设置和下面一个配置就关于ip的访问策略了,如果你发现其他ip地址访问不了就有可以这参数没有配置
http.cors.allow-origin: “*”
如果你碰到错误不要慌下面有解决方法:
- 1、max file descriptor
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决方法,请用root权限修改,修改完记得重启elasticsearch和使用配置参数在环境里面生效(重新登录用户):(如果还有错误请把数字再设置大一点)
- 2、max number of threads
max number of threads [1024] for user [user] is too low, increase to at least [2048]
解决方法: (* 表示对所有用户有效)
- 3、在elasticsearch.yml中配置bootstrap.system_call_filter为false,注意要在Memory下面:
bootstrap.memory_lock: false
bootstrap.system_call_filter: false - 4、错误:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
临时设置:sudo sysctl -w vm.max_map_count=262144
永久修改:
修改/etc/sysctl.conf 文件,添加 “vm.max_map_count”设置
并执行:sysctl -p
二、集群安装、
这里使用三台机器模拟ElasticSearch集群,这三台的ip地址是如下:
上面我已近在192.168.0.153机器安装了好了ElasticSearch,剩下的就是分别按照上面的方法在154和155这两台机器上安装好ElasticSearch,然后只需要把配置文件elasticsearch.yml略作修改即可,读者自动对比上面
192.168.0.154的配置
192.168.0.155的配置
补充:修改的地方大家对比一下就很清楚了,如果配置更多台机器,上面方法照搬即可。
三、head插件的安装
说明:5.6版本好像不能再用/bin/plugin -install mobz/elasticsearch-head安装了,步骤好像有点复杂,不过不打紧,按照下面安装步骤即可:
- 1、下载head插件
在github上 https://github.com/mobz/elasticsearch-head/archive/master.zip下载插件,命令如下:
- 2、安装node
于head插件本质上还是一个nodejs的工程,因此需要安装node,使用npm来安装依赖的包 可以去官网下载https://nodejs.org/en/download/安装包安装。
我投简单是直接用yum命令安装。
yum安装node.js :参考地址:https://github.com/nodesource/distributions
源码安装方法如下:
- 3、安装grunt
grunt是一个很方便的构建工具,可以进行打包压缩、测试、执行等等的工作,5.6里的head插件就是通过grunt启动的。因此需要安装一下grunt:
5.0以上,elasticsearch-head 不能放在elasticsearch的 plugins、modules 目录下,否则elasticsearch启动会报错
修改vim Gruntfile.js文件:增加hostname属性,设置为*
修改 vim _site/app.js 文件:修改head的连接地址:
this.base_uri = this.config.base_uri || this.prefs.get(“app-base_uri”) || “http://localhost:9200“;
修改成ElasticSearch的机器地址
this.base_uri = this.config.base_uri || this.prefs.get(“app-base_uri”) || “http://192.168.0.153:9200“;
修改完成你就可以启动head插件了:在 elasticsearch-head-master下启动服务
访问地址:http://192.168.0.153:9100
如果你在浏览器中访问不了http://192.168.0.153:9100/请检查防火墙是否关闭。
下面看一我的集群信息: