关于ElasticSearch环境搭建的详细教程
最近参与到公司认证管理系统的开发中,涉及到的技术栈是Spring Boot和ElasticSearch,在环境搭建的过程中遇到了不少问题,因此将安装过程及涉及到的细节进行了一番总结。
集群搭建离不开ElasticSearch和ElasticSearch-head插件的安装,首先是版本的选择,ElasticSearch为6.6.2Zip版本,ElasticSearch-head则是从GitHub 上下载的最新Zip版本,并将它们解压到本地主机的磁盘上。
其次进行相关文件的配置,进入ElasticSearch目录(我的路径是:F:/elasticsearch-6.6.2/config)下的elasticsearch.yml文件,在文件末尾增加两行:
http.cors.enabled: true(允许elasticsearch-head插件和集群间的跨域访问)
http.cors.allow-origin: '*'
进入elasticsearch-head-master的安装目录(我的路径是:F:/elasticsearch-head-master/)下,编辑Gruntfile.js文件,在
connect: {
server: {
options: {
port: 9100,
***hostname: '*',(增加这一行)***
base: '.',
keepalive: true
}
}
}
完成文件的配置后,开始进行安装的工作,在cmd窗口输入node -v查看NODEJS的版本,NODEJS的版本必须在6.0以上;随后再分别运行:
npm config get proxy
npm get https-proxy
可以分别获取对应代理(proxy)的状态,如果出现代理值不为null的情况,将相应的代理值设置为null。具体的命令如下:
npm config set proxy null
npm config set https-proxy null
由于公司的网络环境为内网,无外网连接,因此需要将对应的资源请求链接进行更改:npm config set registry https://npmjs.gree.com/
再运行npm get registry,便在命令行窗口出现https://npmjs.gree.com,则说明资源请求链接配置成功。随后在全局范围内安装elasticsearch的客户端:
npm install -g grunt (-g代表全局安装,无需进入elasticsearch的目录下执行安装命令),如果最后在安装窗口出现对应的时间数(比如:20s),说明elasticsearch的客户端安装成功;此时另启一个cmd窗口,进入elasticsearch-head-master的目录,执行npm install命令,出现了某个模块无法安装的错误:
Please report this full log at https://github.com/Medium/phantomjs
npm ERR! Darwin 15.0.0
npm ERR! argv “/usr/local/bin/node” “/usr/local/bin/npm” “install”
npm ERR! node v4.4.3
npm ERR! npm v3.10.9
npm ERR! code ELIFECYCLE
npm ERR! [email protected] install: node install.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node install.js(注意主要是[email protected]无法安装,需要单独安装)
执行命令:npm install [email protected] --ignore-scripts(2.1.14版本号因环境和elasticsearch-head插件的版本而异),完成该插件的安装。
执行 npm run start,出现了Started connect we Server on http://localhost:9100,则说明elasticsearch-head插件安装成功;最后进入elasticsearch的bin目录下,双击elasticsearch.bat文件启动elasticsearch。
在浏览器输入https://localhost:9100和https://localhost:9200分别出现如下两个页面,则说明Elasticsearch环境搭建成功。