AutoMQ 生态集成 Redpanda Console

news2024/9/21 4:40:36

通过 Kafka Web UI 更加便利地管理 Kafka/AutoMQ 集群

随着大数据技术的飞速发展,Kafka 作为一种高吞吐量、低延迟的分布式消息系统,已经成为企业实时数据处理的核心组件。然而,Kafka 集群的管理和监控却并非易事。传统的命令行工具和脚本虽然功能强大,但对于开发者和运维人员来说,操作复杂且不直观。为了解决这些问题,Kafka Web UI 应运而生,为用户提供了一种更加便利和高效的 Kafka 集群管理方式。Apache Kafka 经过十多年的发展,在业内积累了非常丰富的生态。AutoMQ 作为 Apache Kafka 的继任者,由于其对 Kafka 的完全兼容,可以充分利用其生态中的产品。AutoMQ 企业版已经提供了非常强大的控制面能力。如果你使用的是 AutoMQ 也可以使用像 Kafdrop 、Redpanda Console [1] 等这样的产品来管理 AutoMQ 集群。今天分享的内容是如何通过 Redpanda Console [1] 对 AutoMQ 集群状态进行监控,以提高系统的可维护性和稳定性。

集成 AutoMQ 与 Redpanda Console

Redpanda Console 是由 Redpanda [2] 提供的 Kafka Web UI 界面,用于监控和管理 Redpanda 或 Kafka 集群。它提供了一个直观的用户界面,通过这个界面,用户可以轻松地查看集群状态、监控性能指标、以及管理主题和分区等。这个控制台旨在简化数据流系统的日常操作,让用户能够更有效地维护和监控他们的集群。得益于 AutoMQ 对 Kafka 的完全兼容,因此可以无缝与 Redpanda Console 进行集成。通过利用 Redpanda Console ,AutoMQ 用户也可以享受到直观的用户界面,实时监控 AutoMQ 集群状态,包括主题、分区、消费者组及其偏移量等关键元数据。这种监控能力不仅提高了问题诊断的效率,还有助于优化集群性能和资源利用率。这篇教程会教你如何启动 Redpanda Console 服务,并将其与 AutoMQ 集群搭配起来使用,实现集群状态的监控和管理。

Redpanda Console 官方示例

01

前置条件

  • 部署 AutoMQ 集群

  • 准备 Redpanda Console 环境 

部署 AutoMQ 集群

请参考 AutoMQ 官方文档:集群方式部署 | AutoMQ [3]。

部署 Redpanda Console

部署 Redpanda Console 有两种方式,包括 Docker 部署以及发行版部署,其中 Docker 部署较为简单,如果你想简单快速的体验 AutoMQ 与 Redpanda Console 的集成,建议选择 Docker 方式进行部署。如果你有特别的需要,如登录验证、SASL 认证、TLS 配置以及日志级别等设置,可以根据发行版方式自行部署。下面我将分别介绍两种配置方法。

Docker 部署

Redpanda Console 可通过 Docker 部署,参考 Quick Start [4]。上述过程中,搭建 AutoMQ 集群之后,我们已经知道了所有的 Broker 节点监听的地址和端口,因此我们可以通过指定 Docker 启动命令中的 KAFKA_BROKERS 参数,将 Redpanda Console 与 AutoMQ 集群建立起关联关系。Docker 启动容器命令如下:

docker run -p 8080:8080 -e KAFKA_BROKERS=192.168.0.4:9092,192.168.0.5:9092,192.168.0.6:9092 docker.redpanda.com/redpandadata/console:latest
  • -p 8080:8080:指定 Redpanda Console 的服务访问映射端口。

  • KAFKA_BROKERS:需要指定为你自己的 AutoMQ 集群的 Broker 地址。

发行版部署

你需要在 Redpanda Console 的 Github Releases 页:Release Redpanda Console [5],选择适合的版本进行下载并解压到指定文件夹,如 /opt。操作命令如下:

# ubuntu Linux
cd /opt
sudo curl -L -o redpanda_console.tar.gz https://github.com/redpanda-data/console/releases/download/v2.6.0/redpanda_console_2.6.0_linux_amd64.tar.gz
# unzip, get redpanda_console
sudo tar -xzf redpanda_console.tar.gz
# config set
sudo mkdir -p /etc/redpanda
# write config
sudo vim /etc/redpanda/redpanda-console-config.yaml

redpanda-console-config.yaml配置文件的内容示例如下:

kafka:
  #Brokers is a list of bootstrap servers with
  #port (for example "localhost:9092").
  brokers:
    - broker-0.mycompany.com:19092
    - broker-1.mycompany.com:19092
    - broker-2.mycompany.com:19092

注意:请确保您当前安装 Redpanda Console 所在的服务器能够访问到配置文件中 Broker 节点所在的服务器。

关于更多详细的设置,可以参考官方文档:Redpanda Console Configuration [6]。配置完成后,需要设置环境变量,使得 Redpanda Console 执行文件能获取配置文件信息,并启动 Redpanda Console:

# set env
export CONFIG_FILEPATH="/etc/redpanda/redpanda-console-config.yaml"
# /opt/ run console
./redpanda-console

你将会得到如下结果:

./redpanda-console
{"level":"info","ts":"2024-07-10T09:52:52.958+0800","msg":"started Redpanda Console","version":"2.6.0","built_at":"1717083695"}
{"level":"info","ts":"2024-07-10T09:52:52.963+0800","msg":"connecting to Kafka seed brokers, trying to fetch cluster metadata"}
{"level":"info","ts":"2024-07-10T09:52:54.780+0800","msg":"successfully connected to kafka cluster","advertised_broker_count":1,"topic_count":2,"controller_id":0,"kafka_version":"at least v3.6"}
{"level":"info","ts":"2024-07-10T09:53:05.620+0800","msg":"Server listening on address","address":"[::]:8080","port":8080}

02

访问控制台页面

在完成上述的部署操作后,即可通过在浏览器中输入地址(例如:http://{console_ip}:8080)访问控制台服务。展示效果如下所示:

集群总览

集群总览页面为用户提供了一个宏观的视角,展示了 AutoMQ 集群的核心信息。包括但不限于:

  • 集群运行状态:显示当前集群的健康状况,帮助用户快速识别问题。

  • 存储占用:展示了集群中的数据存储使用情况,便于用户进行存储管理和规划。

  • 版本信息:显示当前 AutoMQ 集群运行的版本,方便跟踪和升级。

  • 在线 Broker 数量:实时显示在线的 Broker 数量,关键指标之一。

  • Topics 和 Replicas 数量:提供 Topics 和 Replicas 的数量信息,帮助用户了解集群的规模和数据复制情况。

监控集群状态对于确保消息队列系统的稳定性和性能至关重要。通过实时监控集群的运行状态、存储占用、版本信息、在线 Broker 数量以及 Topics 和 Replicas 的数量,运维人员可以快速识别并解决潜在问题,防止系统故障影响业务运行。同时,这些指标有助于进行容量规划和资源管理,确保系统能够应对未来的数据增长。此外,了解集群的版本信息还可以帮助用户及时进行软件升级,利用最新的功能和安全修复,整体提升系统的可靠性和效率。

Topic 总览

在 Topic 列表页面,用户可以看到当前 AutoMQ 集群中所有 Topic 的列表,包括每个 Topic 的关键信息,如分区数、副本策略等。用户可以通过这个页面快速浏览和管理 Topic。

Topic 详情

点击特定的 Topic 后,用户将进入到该 Topic 的详细页面,在这里可以深入了解和操作:

  • 消息列表:浏览和搜索 Topic 中的消息,对于消息的追踪和调试非常有用。

  • 消费者信息:显示当前订阅该 Topic 的消费者和消费者组信息,便于监控消费情况。

  • 分区状态:展示每个分区的详细信息,包括 Leader、ISR 等关键指标。

  • 配置信息:列出 Topic 的配置信息,支持修改以优化性能或行为。

  • ACL(访问控制列表):管理对 Topic 的访问权限,确保数据安全。

此外,Redpanda Console 还支持用户手动创建和发布消息,这对于测试或特定场景下的消息注入非常有价值。

监控 Topic 详情信息可以让我们深入了解消息队列的运行状况,通过浏览消息列表进行追踪和调试,查看消费者信息监控消费情况,了解分区状态确保数据分布和高可用性,管理配置信息优化性能,以及设置访问控制保障数据安全。这些功能有助于及时识别和解决问题,提高系统的整体效率和可靠性。

03

总结

本文介绍了 Redpanda Console 与 AutoMQ 集成的过程,展示了如何通过这一强大工具简化和增强 AutoMQ 集群的管理。希望这篇文章能够为追求提高消息队列管理效率和功能的用户提供实用的参考。

引用

[1] Redpanda Console: https://redpanda.com/redpanda-console-kafka-ui
[2] Redpanda: https://redpanda.com/
[3] 集群方式部署 AutoMQ: https://docs.automq.com/zh/docs/automq-opensource/IyXrw3lHriVPdQkQLDvcPGQdnNh [4] Quick Start: https://github.com/redpanda-data/console?tab=readme-ov-file#quick-start [5] Release Redpanda Console: https://github.com/redpanda-data/console/releases/tag/v2.6.0 [6] Redpanda Console Configuration: https://docs.redpanda.com/current/reference/console/config/#example-redpanda-console-configuration-file
[7] Kafdrop Github:  https://github.com/obsidiandynamics/kafdrop

END

关于我们

我们是来自 Apache RocketMQ 和 Linux LVS 项目的核心团队,曾经见证并应对过消息队列基础设施在大型互联网公司和云计算公司的挑战。现在我们基于对象存储优先、存算分离、多云原生等技术理念,重新设计并实现了 Apache Kafka 和 Apache RocketMQ,带来高达 10 倍的成本优势和百倍的弹性效率提升。

🌟 GitHub 地址:https://github.com/AutoMQ/automq
💻 官网:https://www.automq.com?utm_source=openwrite

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1935875.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java流的概念及API

流的概念 流(Stream)的概念代表的是程序中数据的流通,数据流是一串连续不断的数据的集合。在Java程序中,对于数据的输入/输出操作是以流(Stream)的方式进行的。可以把流分为输入流和输出流两种。程序从输入流读取数据,向输出流写入…

Python项目打包与依赖管理指南

在Python开发中,python文件需要在安装有python解释器的计算机的电脑上才能运行,但是在工作时,我们需要给客户介绍演示项目功能时并不一定可以条件安装解释器,而且这样做非常不方便。这时候我们可以打包项目,用于给客户…

《驾驭AI浪潮:伦理挑战与应对策略》

AI发展下的伦理挑战,应当如何应对? 人工智能飞速发展的同时,也逐渐暴露出侵犯数据隐私、制造“信息茧房”等种种伦理风险。随着AI技术在社会各个领域的广泛应用,关于AI伦理和隐私保护问题日趋凸显。尽管国外已出台系列法规来规范…

达梦数据库DM8-索引篇

目录 一、前景二、名词三、语法1、命令方式创建索引1.1 创建索引空间1.2.1 创建普通索引并指定索引数据空间1.2.2 另一种没验证,官方写法1.3 复合索引1.4 唯一索引1.5 位图索引1.6 函数索引 2、创建表时候创建索引3、可视化方式创建索引3.1 打开DM管理工具3.2 找到要…

nginx负载均衡实例

实现效果 浏览器输入地址http://nginx服务器ip(:80)/edu/a.html,实现负债均衡效果,平均分配到 服务器ip:8080和 服务器ip:8081进程中。 准备工作 准备两个tomcat,一个监听在8080端口,一个监听在8081端口。也可以准备多个tomcat。…

如何在电脑上演示手机上APP,远程排查移动端app问题

0序: 对接客户,给领导演示移动端产品,或者远程帮用户排查移动端产品的问题。都需要让别人能够看到自己在操作手机。 会议室可以使用投屏,但需要切换电脑和手机。 排查问题经常都是截图、或者手机上录制视频,十分繁琐…

node-red学习

Node-RED : 起步 1、安装nodejs Node.js — 在任何地方运行 JavaScript 验证 2、更换下载源 // 查看当前下载地址 npm config get registry // 设置淘宝镜像的地址 npm config set registry https://registry.npmmirror.com/ // 查看当前的下载地址 npm config get registry…

抖音矩阵系统源码开发部署流程分享

#短视频矩阵源码 #短视频矩阵 #源码交付 抖音矩阵系统源码开发部署流程如下: 环境配置:首先,需要安装并配置开发环境,包括安装Java JDK、MySQL数据库、Eclipse开发工具等。 数据库设计:根据抖音矩阵系统的需求&…

安全入门day01

一、常用名词 1、前后端 (1)前端 前端主要负责用户界面的展示和交互。它通常包括HTML、CSS和JavaScript等技术的使用,也可能使用各种前端框架和库,如React、Vue.js、Angular等,来构建更加复杂和动态的用户界面。前端…

Flowable的学习一

今日项目用到了Flowable。简单记录下。 学习中 参考了网上资料: 工作流-Activiti7-基础讲解_activity工作流-CSDN博客 https://juejin.cn/post/7158342433615380517 flowable实战(九)flowable数据库表中流程实例、活动实例、任务实例三者…

Windows系统如何本地部署Ollama并运行千文qwen大模型详细教程

文章目录 前言1. 运行Ollama2. 安装Open WebUI2.1 在Windows系统安装Docker2.2 使用Docker部署Open WebUI 3. 安装内网穿透工具4. 创建固定公网地址 前言 本文主要介绍如何在Windows系统快速部署Ollama开源大语言模型运行工具,并安装Open WebUI结合cpolar内网穿透软…

Unity动画系统(4)

6.3 动画系统高级1-1_哔哩哔哩_bilibili p333- 声音组件添加 using System.Collections; using System.Collections.Generic; using UnityEngine; public class RobotAnimationController : MonoBehaviour { [Header("平滑过渡时间")] [Range(0,3)] publ…

java文本比较解决方案

参考资料 VBA计算页码和行号https://learn.microsoft.com/zh-cn/office/vba/api/word.wdinformation 概述: 最近在做word文档对比的,总结了几种解决方案,记录一下 在java中,常用的文本对比方案有如下几种: 差异比较…

Git分支合并以及分支部分合并 提交记录合并

Git分支合并,以及分支部分合并,提交记录合并 最近工作中用到git分支合并的场景,记录一下. 分支整体合并,合并所有记录 仅合并分支部分代码

【Django】网上蛋糕商城后台-类目管理

1.类目管理列表实现 当管理员进入后台管理后,点击类目管理,向服务器发出请求 path(admin/type_list/,viewsAdmin.type_list), # 处理商品分类管理列表请求 def type_list(request):# 读取分页页码try:ym request.GET["ym"]except:ym 1# 查…

Leetcode算法题(链表的中间节点+返回倒数第k个节点+合并两个有序链表)

题目1: 本题力扣链接:https://leetcode.cn/problems/middle-of-the-linked-list/solutions/164351/lian-biao-de-zhong-jian-jie-dian-by-leetcode-solut/ 思路1:单指针法 首先我们对链表进行遍历,记录链表的总长度N,…

Postgresql导入几何数据的几种方式

postgis方式导入 1.直接使用postgis客户端方式导入 首先,电脑要安装postgresql和对应版本的postgis。然后通过postgis客户端软件连接到postgresql数据库。然后导入。具体详细操作如下所示: 第一步:首先要再postgis中创建数据库 Create da…

【Linux取经之路】Linux常见指令

目录 基本指令 常见指令 1)ls —— 对于目录,列出该目录下的所有子目录和文件;对于文件,将列出文件名及其他信息 2)pwd —— 显示当前所在的目录 ​编辑 3)cd —— 切换到指定路径下 4)t…

阿里云DSW实例中安装并运行Neo4J

想尝试使用大模型对接Neo4J,在阿里云DSW实例中安装了Neo4J,却无法通过本地浏览器访问在DSW实例中运行的Neo4J。尝试了改neo4j.conf文件,以及添加专用网络的公共IP地址等方法,均没有成功。最后决定直接在服务器的命令行进行各种Cyp…

如何在 Puppeteer 中运行无头浏览器?

什么是无头浏览器? 我们都知道,用户界面(UI)是任何软件中最重要的部分。因此,“无头浏览器”的“无头”部分意味着它们确实缺少一个关键元素,即图形用户界面(GUI)。 这意味着浏览器…