ES 的安装和启动
# 10.ES 的安装和启动
在使用 ES 之前,我们得先安装。注意 ES 的基于 Java 的,因此要先安装好 Java。
# 下载 ES 压缩包
ElasticSearch 分为 Linux 和 Window 版本,基于我们主要学习的是 ElasticSearch 的 Java 客户端的使用,所以我们使用的是安装较为简便的 Window 版本(工作中一般是用 Linux)
ElasticSearch 的官方地址: Elasticsearch (opens new window),点击下载:
这里我们下载旧版本:
选择对应版本并下载:5.6.8 版本的
下载 zip 格式的,解压即用(tar 格式是 Linux 的,deb 是 Debian 操作系统的格式,MSI 则是微软的安装包格式)
随着 Elasticsearch 的更新,官网的 UI 可能会调整,以上截图仅供参考;嫌麻烦可以去我的 百度云网盘 (opens new window) 下载,路径为 编程资料/Java相关/06.主流框架/20.Elasticsearch/elasticsearch-5.6.8.zip
注意 5.6.8 的 ES 要求 Java8,更多版本的支持情况可以看官网:支持一览表 | Elastic (opens new window)
# ES 的目录结构
Window 版的 ElasticSearch 的安装很简单,类似 Window 版的 Tomcat,解压开即安装完毕,解压后的 ElasticSearch 的目录结构如下:
(https://image.peterjxl.com/blog/image-20230516204034-tcutxr8.png)
bin 目录:
config 目录:elasticsearch.yml 就是 ES 的配置文件,是我们后续要修改的
lib 目录下可以看到不少 Lucene 的依赖:
其他目录我们先不介绍。
# 启动 ES 服务
其实我们下载的时候,ES 已经告诉我们怎么启动了:
点击 bin 目录下的 elasticsearch.bat 启动,会弹出一个控制台,显示的日志信息如下:
(https://image.peterjxl.com/blog/image-20230516210317-j69bfo6.png)
9300 是 TCP 通讯端口,集群间和 TCPClient 都使用该端口
9200 是 http 协议的 RESTful 接口,打开 localhost: 9200 (opens new window),可以看到如下返回的 JSON 信息,服务启动成功
name 是我们目前这个节点的名称,cluster_name
是集群的名称,默认是 elasticsearch,然后下面的版本的一些信息。
# 安装图形化界面插件 head(建议安装)
ES 不同于 Solr 自带图形化界面,我们可以通过安装 ES 的 head 插件,完成图形化界面的效果,完成索引数据的查看。安装插件的方式有两种,在线安装和本地安装,我们用本地安装。
注意:elasticsearch5 及以上版本安装 head 需要安装 node 和 grunt
其实该插件就是一个用 node (opens new window) 开发的前端项目而已,我们需要先安装 node,然后输入如下命令:
git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install
npm run start
2
3
4
第一步中,也可以去我的 百度云网盘 (opens new window) 下载 head 插件:路径为 编程资料/Java相关/06.主流框架/20.Elasticsearch/elasticsearch-head-master.zip
。
如果你会 grunt,也可以这样做:
npm install ‐g grunt‐cli
git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install
grunt server
2
3
4
5
启动后,其告诉我们运行在 http://localhost: 9100 (opens new window):
我们打开,可以看到如下页面:
然后我们点击连接,
如果不能成功连接到 ES 服务,需要修改 ES 的配置文件 config/elasticsearch.yml,增加以下两个配置
http.cors.enabled: true
http.cors.allow-origin: "*"
2
该配置是设置允许跨域,并且运行所有域名的访问。配置完后,我们重启 ES,再次测试连接:成功了
然后下方,我们现在是在集群概览页面中,由于只有一个结点,因此只显示了一个;
# 总结
为了后续实践 ES,请务必安装好后,再继续后面的学习