作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

中间件,我给它的定义就是为了实现某系业务功能依赖的软件,包括如下部分:
Web服务器
代理服务器
ZooKeeper
Kafka
RabbitMQ
Hadoop HDFS
Elasticsearch ES (本章节)
Cerebro 是什么
Cerebro(原名 Kopf)是一个基于 Web 的开源(Apache 2.0 许可证)可视化管理和监控工具,专门为 Elasticsearch 和 Opensearch 集群设计。它可以被理解为一个 “Elasticsearch 集群的驾驶舱”,为运维人员和开发者提供了一个直观、强大的界面来执行日常的集群管理、监控和故障排查任务。
核心功能与特点
Cerebro 的核心价值在于它将许多需要通过 Elasticsearch REST API 执行的复杂命令,转化为了简单易用的图形化操作。以下是它的主要功能:
1. 集群概览与实时监控
-
可视化状态展示:以节点和分片的形式直观地展示整个集群的状态(绿色、黄色、红色)。
-
关键指标仪表盘:实时显示集群级别的关键指标,如文档数量、存储大小、节点数量、分片状态、未分配分片数等。
-
节点级别监控:点击单个节点,可以查看其详细的硬件资源使用情况,包括 CPU、内存、负载、磁盘使用率、JVM 堆内存和垃圾回收情况。这对于快速定位性能瓶颈至关重要。
2. 节点与分片管理
-
节点操作:可以方便地对节点执行排除(
Exclude)操作,这在集群滚动重启或下线节点时非常有用。 -
分片操作:
-
手动分片分配:这是 Cerebro 的王牌功能。当集群出现“未分配的分片”时,你可以直接在界面上尝试分配或强制分配这些分片,这对于恢复集群健康状态非常高效,(我们以前维护都是通过命令实现)。
-
分片移动/重新路由:可以将分片从一个节点移动到另一个节点,用于平衡集群负载。
-
3. 索引管理
-
索引概览:列出所有索引,并显示每个索引的健康状态、文档数、存储大小、主分片/副本分片数等信息。
-
索引操作:
-
创建/删除索引:提供图形化界面创建新索引(可指定映射和设置)和删除索引。
-
开/关索引:可以关闭索引以释放资源,需要时再打开,以前我也通过这个方法减低jvm内存占用。
-
管理索引别名:轻松地为索引添加或移除别名。
-
调整副本数:动态修改索引的副本数量。
-
清空索引:快速删除索引中的所有数据(
Clear cache、Refresh等)。 -
索引优化:执行
Force merge(强制段合并)以优化索引和减少内存占用。
-
4. 执行 REST API 操作
-
内置 API 客户端:Cerebro 内置了一个简单的 REST 客户端,允许你直接向集群发送任意 API 请求(GET、PUT、POST、DELETE),并格式化返回的 JSON 结果。这对于执行一些临时性的查询或配置更改非常方便。
5. 系统快照与恢复
-
快照仓库管理:可以查看已注册的快照仓库。
-
快照操作:创建、查看和恢复快照,用于数据的备份和恢复。
与 Kibana 的对比
|
特性 |
Cerebro |
Kibana |
|---|---|---|
| 主要定位 | 集群运维与管理 | 数据可视化与分析 |
| 核心功能 |
节点/分片操作、实时监控、API 客户端 |
仪表盘、数据探索、可视化图表、机器学习、告警 |
| 部署方式 |
独立进程,轻量 |
依赖 Elasticsearch,相对较重 |
| 管理操作 | 强
(可直接操作) | 弱
(主要通过 Dev Tools 执行 API 命令) |
| 数据可视化 | 弱
(只有基础监控图表) | 极强
(其核心价值) |
| 安全性 |
基础认证,需自行配置 |
与 Elasticsearch 安全功能深度集成(如 RBAC) |
简单来说:Kibana 主要用于查询和分析索引里面的数据,而 Cerebro 主要用于管理和维护存放数据的集群和索引本身。 它们通常是共存的,而不是替代关系。
运维小路
一个不会开发的运维!一个要学开发的运维!一个学不会开发的运维!欢迎大家骚扰的运维!
关注微信公众号《运维小路》获取更多内容。
354

被折叠的 条评论
为什么被折叠?



