本文是 Elasticsearch 5.0 系列博文的安装使用篇,主要介绍如何安装并运行 Elasticsearch,顺带介绍 Kibana 的安装

写在前面

  • 本文以 Elasticsearch 5.0.1 版本为例进行讲解,不定期更新
  • 该系列主要参考的 Elasticsearch Reference: 5.0,尽量避免照搬翻译,只摘录精要部分辅以简单说明
  • 写这个系列博客的初衷是强迫自己梳理,同时方便一些较忙/没空耐心看英文文档的朋友快速上手,建议读者有空多读官方文档,毕竟别人写的都是二手资料
  • 如需查看 ES 系列更多博文,请关注我的个人网站@brianway 或者 @CSDN

下载安装

参考install Elasticsearch即可,这里简单展示一下

  • 前台运行

ES 默认运行在前台,日志打印到标准输出

1
2
3
4
5
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.0.1.tar.gz
sha1sum elasticsearch-5.0.1.tar.gz
tar -xzf elasticsearch-5.0.1.tar.gz
cd elasticsearch-5.0.1/
./bin/elasticsearch

在终端输入curl -XGET 'localhost:9200/?pretty'

得到响应:

1
2
3
4
5
6
7
8
9
10
11
12
13
{
"name": "Dp0oq_v",
"cluster_name": "elasticsearch",
"cluster_uuid": "6rLSu0JMTlq_YJqyhWS_xQ",
"version": {
"number": "5.0.1",
"build_hash": "080bb47",
"build_date": "2016-11-11T22:08:49.812Z",
"build_snapshot": false,
"lucene_version": "6.2.1"
},
"tagline": "You Know, for Search"
}
  • 后台运行

参考 Running as a daemon

日志信息在$ES_HOME/logs/文件夹

文件夹结构

这里我使用的是.zip.tar.gz的包直接解压得到的,文件夹的目录结构:Directory layout of .zip and .tar.gz archives

重要配置

  • path.datapath.logs:使用.zip.tar.gz的 Elasticsearch 的话,这两个路径是$ES_HOME的子文件夹,升级 Elasticsearch 时有被删除的风险,所以需要另外指定路径,path.data可指定多路径
  • cluster.name:节点只能加进cluster.name相同的集群中,默认名是elasticsearch
  • node.name:Elasticsearch 默认采用随机 UUID 的前 7 位字符作为节点id,且节点id一直保存,节点重启并不会改变节点名。
  • bootstrap.memory_lock:JVM 不被交换到硬盘对于节点健康很重要,一种实现方式是将bootstrap.memory_lock设置成true
  • network.host:Elasticsearch 默认只绑定 loopback 地址(127.0.0.1[::1]),多节点在一个 server 上启动也是可行的,生产环境下不建议罢了。
  • discovery.zen.ping.unicast.hosts:同一个 server 上的节点将扫描端口号 9300 到 9305 来尝试连接其他该 server 上的节点。和其他 server 节点组成集群时,需要配置该项。端口默认 9300,域名对应多IP的话会尝试所有解析出来的 IP
  • discovery.zen.minimum_master_nodes:不设置的话可能出现split brain问题,造成数据丢失。为了避免这样,该项设置为(master_eligible_nodes / 2) + 1

Kibana 安装

由于老在终端里使用 curl 命令很不方便,所以顺带安装了一下 Kibana。简单介绍下 Kinaba,它是一个配合 Elasticsearch 工作的分析和可视化平台,一些和 Elasticsearch 通过 REST API 交互的请求可以在这里面比较方便的输入和回显。

我是在 Mac 下安装的,下载好安装好解压就行了。其他系统参考 Installing Kibana

1
2
curl -O https://artifacts.elastic.co/downloads/kibana/kibana-5.0.1-darwin-x86_64.tar.gz
tar -xzf kibana-5.0.1-darwin-x86_64.tar.gz

先启动 Elasticsearch,再启动 Kibana

1
2
cd kibana-5.0.1-darwin-x86_64.tar.gz
bin/kibana

默认的访问网址是localhost:5601,在浏览器访问即可。然后点击侧栏的 Dev Tools就行了。顺带提一句,在之前的版本中,这个窗口是一个叫做 Sense 的插件的功能,在 5.0 版本中默认和 Kibana 集成了,并改名为 Console

在左边输入 GET /,点绿色的播放按钮发送请求,就可以看到和刚才在终端里输入curl -XGET 'localhost:9200/?pretty'同样的的响应了。如图所示:

Kibana - Console界面
Kibana - Console界面

后面的Elasticsearch的文章演示部分都会基于 Console - Kibana ,请安装好。