Elasticsearch学习笔记(三):ES的安装和集群健康状态监测

283 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第19天,点击查看活动详情

导语

Elasticsearch 是一个分布式的开源搜索和分析引擎,目前被广泛使用,本文记录Elasticsearch和其可视化工具Kibana的安装与集群监测的基本命令。

Elasticsearch和Kibana的安装

Elasticsearch的安装

Elasticsearch的安装分为以下几步:

  1. 下载Elasticsearch的相应安装包并解压
  2. 找到解压目录的/bin目录下,使用管理员权限运行elasticsearch.bat
  3. 待es启动完成后,打开浏览器访问localhost:9200,若看到类似以下信息即安装成功。

注意:在安装和运行Elasticsearch之前要先配置Java环境,详见:juejin.cn/post/715499…

image.png

Kibana的安装

Kibana的安装分为以下几步:

  1. 首先需要正确配置与安装Elasticsearch环境并运行
  2. 下载Kibana的相应安装包并解压
  3. 找到解压目录的/bin目录下,使用管理员权限运行kibana.bat
  4. 待Kibana启动完成后,打开浏览器访问localhost:5601,若看到类似以下界面即安装成功。

image.png

安装可能遇到的问题

主要可能的问题就是闪退,一般是由于java环境没有配置正确而导致的,重装一下java就可以了。

Elasticsearch基本命令

Elasticsearch的API都是Restful风格的,这里首席那介绍一下什么是Restful风格的API。

Restful风格API简介

RESTFUL其实是一种网络应用程序的设计风格和开发方式,它与基本的HTTP请求很像。都是通过对资源的定位,请求来完成相应的新增、变更、删除等的操作。

最常见的一个例子:使用浏览器打开一个网页,就是一个GET请求。表明客户端要从服务器中读取文档。

Elasticsearch 示支持restful api的。也就是说ES中是使用getputpostdelete几种http的请求来完成操作的。

  • GET用来获取资源,PUT和POST用来新建资源(也可以用于更新资源),DELETE用来删除资源;
  • PUT请求:如果两个请求相同,后一个请求会把第一个请求覆盖掉。(所以PUT用来改资源)
  • Post请求:后一个请求不会把第一个请求覆盖掉。(所以Post用来增资源)

Elasticsearch集群健康监测

我们可以使用GET /_cat/health?v 命令来进行监测。首先,我们需要启动ES和Kibana,然后到浏览器中输入localhost:5601进入Kibana的操作界面。

image.png

点击左侧的扳手工具,打开Dev tools可以进行命令的调试。我们只要输入该命令点击右侧的三角符号就可以执行当前行。

右侧展示了该命令的执行输出,其中,集群的状态有以下几种:

  • green:每个索引的primary shard和replica shard都是active状态的
  • yellow:每个索引的primary shard都是active状态的,但是部分replica shard不是active状态,处于不可用的状态
  • red:不是所有索引的primary shard都是active状态的,部分索引有数据丢失