Elasticsearch与可视化页面EsHead安装
ES是一个基于Lucene的分布式全文搜索服务器,和SQL Server的全文索引(Fulltext Index)有点类似,都是基于分词和分段的全文搜索引擎,具有分词,同义词,词干查询的功能,但是ES天生具有分布式和实时的属性,本随笔演示在Windows环境中安装ElasticSearch,以及用于管理ElasticSearch的Head插件。
ElasticSearch官网:http://www.elasticsearch.org
要求环境
ElasticSearch是基于lucence开发的,也就是运行需要java jdk()支持。所以要先安装JAVA环境。
由于ElasticSearch 5.x 依赖于JDK 1.8
的,所以如果你的电脑没有jdk环境,或者版本不多,首先要下载JDK 1.8或者更高版本。
- 下载jdk环境后,在命令窗口输入javac
D:\java -version
- 运行后出现如下窗口
文章图片
shell.png
则java环境安装成功
- 从官网下载ElasticSearch https://www.elastic.co/downloads/elasticsearch,下载zip 这里我们下载5.6.0的,我们项目目前使用的也正是5.6.0
- 解压到指定的目录,这里我解压到了C盘根目录。
- 进入到C:\elasticsearch-5.3.0\bin执行elasticsearch.bat
- 本机就启动了一个ElasticSearch节点,启动后会显示如图所示
文章图片
image.png
文章图片
image.png 可视化插件Elasticsearch-head 然后我们安装可视化插件Elasticsearch-head
这是一个node.js项目,所以我们电脑要先部署node环境
- 可以直接从腾讯软件助手下载node.js并安装
文章图片
node.png
在命令行打命令如上图则安装成功
- 安装grunt
grunt是一个很方便的构建工具,可以进行打包压缩、测试、执行等等的工作,5.x里的head插件就是通过grunt启动的。因此需要安装grunt.
注意:路径切到nodejs安装目录下,[我安装在C:\Program Files\nodejs]。
npm install -g grunt-cli
-g代表全局安装。安装路径为C:\Users{yourname}\AppData\Roaming\npm,并且自动加入PATH变量。
查看版本号grunt -version
文章图片
image.png - 下载head插件
- 配置head
由于head的代码还是2.6版本的,直接执行有很多限制,比如无法跨机器访问。因此需要用户修改两个地方:
① c:/elasticsearch-head-master/Gruntfile.js,增加hostname属性,设置为*,如图
文章图片
image.png
②修改连接地址:C:\elasticsearch-head-master/_site/app.js,将表红线地址改为es服务器地址。
文章图片
image.png
修改一下es使用的参数。编辑C:/elasticsearch-5.3.0/config/config/elasticsearch.yml:
cluster.name: es-5.2-test#换个集群的名字,免得跟别人的集群混在一起
node.name: node-es-101#换个节点名字
network.host: 0.0.0.0#修改一下ES的监听地址,这样别的机器也可以访问
http.port: 9200#端口号,默认就好
# 增加新的参数,这样head插件可以访问es
http.cors.enabled: true
http.cors.allow-origin: "*"
@注意,设置参数的时候:后面要有空格!
- 安装head
git clone git://github.com/mobz/elasticsearch-head.gitcd elasticsearch-headnpm installnpm run startopen http://localhost:9100/
进入到我们下载好的elasticsearch-head包里,然后执行
npm install
文章图片
image.png
安装完成之后npm run start或grunt server
文章图片
image.png
文章图片
image.png
浏览器访问 http://localhost:9100/
文章图片
EsHead.png
到此,Elasticsearch和ElasticSearch-head已经装好了。 【Elasticsearch与可视化页面EsHead安装】
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- Docker应用:容器间通信与Mariadb数据库主从复制
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量
- 第326天
- Shell-Bash变量与运算符
- 逻辑回归的理解与python示例
- Guava|Guava RateLimiter与限流算法
- 我和你之前距离
- CGI,FastCGI,PHP-CGI与PHP-FPM
- 原生家庭之痛与超越