ES 学习(四)Elasticsearch-Head 的安装和使用

目录

    • 一、概述
    • 二、安装前提
      • [2.1 系统要求](#2.1 系统要求)
      • [2.2 环境检查](#2.2 环境检查)
    • 三、安装步骤
      • [3.1 安装Node.js](#3.1 安装Node.js)
      • [3.2 下载Elasticsearch-Head](#3.2 下载Elasticsearch-Head)
      • [3.3 启动Elasticsearch-Head](#3.3 启动Elasticsearch-Head)
      • [3.4 配置Elasticsearch跨域](#3.4 配置Elasticsearch跨域)
      • [3.5 重启Elasticsearch服务](#3.5 重启Elasticsearch服务)
    • 四、连接与验证
      • [4.1 访问Elasticsearch-Head](#4.1 访问Elasticsearch-Head)
      • [4.2 连接集群](#4.2 连接集群)
      • [4.3 验证连接](#4.3 验证连接)
    • 五、Elasticsearch-Head的常用操作
      • [5.1 查看集群状态](#5.1 查看集群状态)
      • [5.2 浏览索引](#5.2 浏览索引)
      • [5.3 基本查询](#5.3 基本查询)
      • [5.4 复合查询(执行REST请求)](#5.4 复合查询(执行REST请求))
    • 六、安全建议
    • 七、总结

一、概述

Elasticsearch-Head 是一个用于管理和监控Elasticsearch集群的Web前端工具,它提供了直观的用户界面,使用户能够轻松地查看集群状态、索引信息、节点详情等。本文档将详细介绍在macOS系统上本地安装和配置Elasticsearch-Head的完整流程。

二、安装前提

2.1 系统要求

  • macOS 10.14 (Mojave) 或更高版本

  • 已安装Node.js(版本v10.x或更高)

  • 已安装npm(Node.js包管理器)

  • 已运行Elasticsearch服务(默认端口9200)

2.2 环境检查

bash 复制代码
# 检查Node.js版本
node -v

# 检查npm版本
npm -v

# 确认Elasticsearch正在运行
curl -X GET "localhost:9200"

三、安装步骤

3.1 安装Node.js

如果尚未安装Node.js,请通过以下任一方式安装:

使用Homebrew安装

bash 复制代码
brew install node

使用官方安装包 : 访问 https://nodejs.org 下载并安装LTS版本。

3.2 下载Elasticsearch-Head

使用git clone方式从GitHub仓库克隆Elasticsearch-Head源码:

bash 复制代码
# 克隆仓库
git clone https://github.com/mobz/elasticsearch-head.git

# 进入项目目录
cd elasticsearch-head

# 安装依赖
npm install

3.3 启动Elasticsearch-Head

在项目目录下启动服务:

bash 复制代码
# 使用npm启动
npm run start

默认情况下,服务将在端口9100上启动。

3.4 配置Elasticsearch跨域

为确保Elasticsearch-Head能够连接到Elasticsearch,需要修改Elasticsearch配置文件以启用跨域访问。

编辑elasticsearch.yml配置文件:

bash 复制代码
# 打开配置文件
vi /usr/local/etc/elasticsearch/elasticsearch.yml

在文件末尾添加跨域配置,完整内容如下:

yaml 复制代码
cluster.name: "docker-cluster"
network.host: 0.0.0.0

# minimum_master_nodes need to be explicitly set when bound on a public IP
# set to 1 to allow single node clusters
# Details: https://github.com/elastic/elasticsearch/pull/17288
discovery.zen.minimum_master_nodes: 1

# 跨域配置(新增内容)
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-methods: OPTIONS,HEAD,GET,POST,PUT,DELETE
http.cors.allow-headers: X-Requested-With,Content-Type,Content-Length,Authorization

3.5 重启Elasticsearch服务

应用配置更改后,重启Elasticsearch服务:

bash 复制代码
# 停止服务
brew services stop elasticsearch

# 启动服务
brew services start elasticsearch

四、连接与验证

4.1 访问Elasticsearch-Head

打开浏览器,访问:

PlainText 复制代码
http://localhost:9100

4.2 连接集群

在Elasticsearch-Head界面的连接框中输入:

PlainText 复制代码
http://localhost:9200

点击"连接"按钮,成功连接后将显示集群的健康状态、节点信息和索引列表。

4.3 验证连接

可通过以下方式验证连接是否成功:

  • 查看集群状态是否为绿色或黄色

  • 检查节点列表是否显示本地Elasticsearch实例

  • 浏览现有索引和文档

五、Elasticsearch-Head的常用操作

5.1 查看集群状态

连接成功后,主界面会显示集群的健康状态(绿色/黄色/红色)、集群名称、节点数量和索引数量。健康状态为绿色表示所有分片都正常,黄色表示主分片正常但副本分片未分配,红色表示有主分片丢失。

5.2 浏览索引

在"数据浏览"或"索引"标签页中,可以查看所有索引的详细信息,包括:

  • 索引名称
  • 存储大小
  • 文档数量

还可以新建索引:

5.3 基本查询

可以根据不同索引中的筛选条件对数据进行筛选,是使用最多的地方。

5.4 复合查询(执行REST请求)

Elasticsearch-Head提供了简单的REST客户端功能,可以在"复合查询"或"任何请求"标签页中:

  1. 选择HTTP方法(GET/POST/PUT/DELETE)

  2. 输入请求路径(如/_cat/indices)

  3. 添加请求体(如JSON数据)

  4. 点击"提交"查看响应结果

六、安全建议

  1. 生产环境:不建议在生产环境中使用Elasticsearch-Head,应使用官方的Kibana工具

  2. 访问控制:如果必须在生产环境使用,应配置防火墙限制访问IP

  3. 定期更新:保持工具版本最新,以获取安全补丁

  4. 最小权限:运行服务时使用最小权限账户

七、总结

  • Elasticsearch-Head 为 macOS 用户提供了一个简单直观的方式来监控和管理本地 Elasticsearch 实例。
  • 特别适合在开发和测试环境,为 Elasticsearch 提供了直观的Web界面,便于日常监控和管理。建议定期更新以获取最新功能和安全补丁。
相关推荐
数智化精益手记局7 小时前
什么是设备维护管理?设备维护管理包含哪些内容?
大数据·网络·人工智能·安全·信息可视化
AllData公司负责人7 小时前
通过Postgresql同步到Doris,全视角演示AllData数据中台核心功能效果,涵盖:数据入湖仓,数据同步,数据处理,数据服务,BI可视化驾驶舱
java·大数据·数据库·数据仓库·人工智能·python·postgresql
风兮雨露8 小时前
VMware虚拟机(安装/绿色版)
学习
桃花键神8 小时前
Bright Data Web Scraping指南 2026: 使用 MCP + Dify 自动采集海外社交媒体数据
大数据·前端·人工智能
zl_dfq9 小时前
python学习8 之 【集合、datetime模块、字典】
学习
kdxiaojie9 小时前
U-Boot分析【学习笔记】(3)
linux·笔记·学习
MediaTea10 小时前
Scikit-learn:从数据到结构——无监督学习的最小闭环
人工智能·学习·算法·机器学习·scikit-learn
@杰克成10 小时前
Java学习26
java·学习·idea
qeen8710 小时前
【数据结构】二叉树相关经典函数C语言实现
c语言·数据结构·c++·笔记·学习·算法·二叉树
dingxingdi10 小时前
如何学习一个新的 Coding CLI 工具
学习