[关闭]
@wddpct 2017-04-03T13:21:37.000000Z 字数 4145 阅读 2271

Elasticsearch 在 windows 和 ubuntu 下详细安装过程

Elasticsearch


1. 前言

作为一名 .NET 平台开发者,选择开发框架时总会面临更多的局限性,不过对于搜索这种刚需服务来说,开源框架可供选择的余地还是比较大的。笔者之前用的是 Lucene.net ,现在深感其使用不便,而且也没有 .net core 版本,因此便找了基于其构建的两款搜索产品,一个是 Elasticsearch ,一个就是 Solr,后来查看了一些相关博客,确定了选择 Elasticsearch 进行搜索开发,对于两者的抉择详看 搜索引擎选择: Elasticsearch与Solr,大家可以根据自己的需要进行抉择。简单来说,更注重实时性和配置简便性的便选择 ES 即可。

Elasticsearch 是一个基于 Apache Lucene(TM) 的开源全文搜索和分析引擎,详细的介绍信息在官网文档中一应俱全,对 .NET 开发者也提供了相应的 NEST 和 Elasticsearch.NET 客户端,其他就不再赘述了。让我们来快速开始 Elasticsearch 在 Windows 下的快速安装吧。

笔者预感到 es 可能要陪伴自己很长一段时间,所以想以博客的形式记录下来,一方面方便自己阅读,另一方面也给以后的同事有个快速入门的途径。

2. 安装

2.1 安装 java 环境

安装 Elasticsearch 的唯一要求就是支持java环境,我们只需要去 Java 官网下载JRE进行安装即可,当然你也可以直接一步到位下载 JDK 进行安装, JDK 默认包含 JRE 。

2.2 下载 ElasticSearch 本地安装包

前往 Elasticsearch 官网下载最新版本的软件包,下载完成后解压到本地。文件夹结构如下列代码所示(省略)。

此处输入图片的描述

我们只需要手动打开 bin 文件夹下的 elasticsearch.bat 处理文件,它便会自动运行安装 Elasticsearch。如果 java 环境没有正确安装,这一步便会提示失败。

或者你可以在命令行中定位至 elasticsearch-5.2.2 文件夹,输入 bin\elasticsearch.bat 命令起到同样的效果。

2.3 检验启动 Elasticsearch

这一步中,我们只需要在命令行中呼叫其默认网络地址即可,可以在 powershell 中输入 curl http://localhost:9200/ 即可成功运行,运行成功提示如下

  1. StatusCode : 200
  2. StatusDescription : OK
  3. Content : {
  4. "name" : "sSxiwaM",
  5. "cluster_name" : "elasticsearch",
  6. "cluster_uuid" : "gf0rL8_nS6yVw845-E9_VQ",
  7. "version" : {
  8. "number" : "5.2.2",
  9. "build_hash" : "f9d9b74",
  10. "build_date" : "2017-...
  11. RawContent : HTTP/1.1 200 OK
  12. Content-Length: 327
  13. Content-Type: application/json; charset=UTF-8
  14. {
  15. "name" : "sSxiwaM",
  16. "cluster_name" : "elasticsearch",
  17. "cluster_uuid" : "gf0rL8_nS6yVw845-E9_VQ",
  18. "versi...
  19. Forms : {}
  20. Headers : {[Content-Length, 327], [Content-Type, application/json; charset=UTF-8]}
  21. Images : {}
  22. InputFields : {}
  23. Links : {}
  24. ParsedHtml : mshtml.HTMLDocumentClass
  25. RawContentLength : 327

如果你没有使用 powershell ,你可以去 http://curl.haxx.se/download.html 网址下载 curl 软件。

2.4 配置 Elasticsearch

2.4.1 命令行启动配置

Elasticsearch 的默认配置文件 elasticsearch.yml 放置于 bin 文件夹下,当然我们也可以在命令行中通过命令选项进行手动配置。

  1. ./bin/elasticsearch -Ecluster.name=my_cluster -Enode.name=node_1

该段命令的含义是启动 es 服务,并将集群名和节点名分别设置为 my_cluster 和 node_1。

2.4.2 注册服务

Elasticsearch 可以作为服务被安装在 windows 后台运行,启动时可以自动启动。命令处理同样位于 bin 文件夹下。让我们输入以下命令,可以看到相应的服务命令参数。

  1. PS C:\Elasticsearch\elasticsearch-5.2.2> .\bin\elasticsearch-service
  2. Usage: elasticsearch-service.bat install|remove|start|stop|manager [SERVICE_ID]

明白上述参数后,我们继续输入以下命令,服务即可自动安装和运行。

  1. .\bin\elasticsearch-service.bat install #安装
  2. .\bin\elasticsearch-service.bat start #启动

同时,es 也为我们提供了一个简单的 manager gui,如上述列表最后一个参数,我们只需要输入以下命令即可运行。大家也可以好好利用起来。

  1. .\bin\elasticsearch-service.bat manager #启动 gui

manager gui 界面如图所示。

此处输入图片的描述

2.5 安装 Kibana 服务

Kibana 是一个开源的分析和可视化平台,旨在与Elasticsearch协同工作。Kibana可以被用来搜索,查看存储在Elasticsearch索引中的数据。 Kibana的安装也十分方便。详见 Kibana 服务

2.5.1 下载 Kibana

Kibana 在 Windows 上可以以软件服务的状态存在,所以我们需要去官网下载页面对应的服务包。需要下载与 ElasticSearch 对应的产品版本,否则将会运行失败。目前最新版本是 kibana-5.2.2。

2.5.2 安装运行

下载完成后,解压到本地磁盘,比如 C:\ElasticSearch\kibana-5.2.2-windows-x86。通过 powershell 导航到对应文件夹位置,输入 .bin\kibana ,在 Elasticsearch 服务已经启动的情况下, Kibana也将成功运行。此时再在浏览器中输入 http://localhost:5601 网址,即可进入 Kibana 控制台使用相关 api 查看 ES 的相关情况。如下图所示,之后我们的一些 api 演示都会在 Kibana 的控制台中运行。

此处输入图片的描述

提示一:es 中的服务 api 执行有数种方式,比如检查服务器状态的语句为 GET /_cat/health?v,等价的 bash 命令为 curl -XGET 'localhost:9200/_cat/health?v&pretty',等价的网址 url 为 http://localhost:9200/_cat/health?v,它们都可以返回相同的结果。

提示二:Kibana 的配置文件存放于 config 文件夹下,开发者可以根据需要修改对应运行域名等信息,相当于可以提供一种外部服务器监测的手段。默认的 Kibana 服务端口为 server.port: 5601

3. 结尾

之后我将陆陆续续带来对 Elasticsearch 和 Kibana 的实战使用博文(结合 .NET Core),同时也会把运行环境逐步由 Windows 转向 Linux ,请大家敬请期待吧


4. ubuntu 安装简要补充

2017年3月1号补充

4.1 安装java环境

我目前的 ubuntu 版本是16.04(桌面版),安装 java 环境十分简单,软件库里默认继承了 open_sdk ,我们直接在终端中输入 sudo apt-get install default-jdk,对于新机来说,也不用进行 jdk 软件版本校对的步骤,所以再把环境变量设置以一下即可。

继续在终端中输入 sudo update-alternatives --config java,选择对应的路径(假如有多个java版本请注意选择)。如我的机器中输入上述代码后会出现下列提示。

There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
Nothing to configure.

输入 sudo nano /etc/environment ,使用nano编辑器打开环境变量设置文件进行编辑,加入 JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java" 至最后一行即可。

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/$ames:/usr/local/games"
JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java"

之后使用 ctrl+x 保存退出。

4.2 安装运行 ES 和 Kibana

跟 windows 下的安装十分类似,ES 和 Kibana 也是同样的步骤。前往 ESKibana 的下载地址,下载对应的 tar 包至 linux 服务器上,使用相应的 tar -zvxf xx.tar.gz 指令解除封印,召唤卡牌。之后再分别定位到各自的文件夹,分别调用 ./bin/elasticsearch./bin/kibana 即可成功运行。

真够“简要”的……

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注