StarRocks Admin 一个专业的、企业级的 StarRocks 数据库集群管理工具

StarRocks Admin

**一个现代化、美观、智能的 StarRocks 集群管理平台**

功能特性快速开始部署指南API 文档贡献

:open_book: 简介

StarRocks Admin 是一个专业的、企业级的 StarRocks 数据库集群管理工具,提供直观的 Web 界面来管理和监控多个 StarRocks 集群。相比 StarRocks 原生的管理界面,本平台提供了更丰富的功能和更好的用户体验。

:sparkles: 核心特性

  • :rocket: 一键部署 - 支持传统部署、Docker 和 Kubernetes
  • :bar_chart: 实时监控 - 查看集群的实时状态和性能指标
  • :wrench: 集群管理 - 统一管理多个 StarRocks 集群
  • :art: 现代 UI - 基于 Angular + Nebular 的现代化界面
  • :chart_with_upwards_trend: 性能分析 - 查询性能分析和优化建议

:rocket: 快速开始

方式一:一键部署(推荐)


# 1. 克隆项目
git clone https://github.com/jlon/starrocks-admin.git
cd starrocks-admin

# 2. 构建和打包
make build

# 3. 启动服务
cd build/dist
./bin/starrocks-admin.sh start

# 4. 访问应用
http://localhost:8080

方式二:Docker 部署

# 1. 克隆项目
git clone https://github.com/jlon/starrocks-admin.git
cd starrocks-admin

# 2. 启动服务

make docker-build  # 构建 Docker 镜像
make docker-up     # 启动 Docker 容器

# 3. 访问应用
http://localhost:8080

:art: 界面预览

StarRocks Admin 提供了直观、美观的 Web 管理界面,涵盖集群管理的各个方面。

集群概览


实时展示集群整体状态、性能指标和资源使用情况,一目了然掌握集群健康状态。

集群管理

统一管理多个 StarRocks 集群,支持添加、编辑、删除集群配置。

节点管理

查看和管理集群中的所有节点,监控各节点的运行状态和资源使用。

查询管理

实时查看正在执行的查询,支持查询终止和性能分析。

监控管理

监控管理

会话管理

管理数据库连接会话,查看活跃会话和历史连接信息。

变量管理

配置和管理系统变量,支持查看和修改运行时参数。

系统管理

系统级别的配置管理,包括用户权限、系统函数等功能。

1赞

有更详细一点的部署教程吗,我用了docker方式部署,启动的时候报
2025-10-27T05:53:00.064814Z INFO starrocks_admin: StarRocks Admin starting up
2025-10-27T05:53:00.064827Z INFO starrocks_admin: Configuration loaded successfully
2025-10-27T05:53:00.064834Z INFO starrocks_admin::db: Initializing database connection: sqlite://data/starrocks-admin.db
2025-10-27T05:53:00.065307Z WARN starrocks_admin::db: No migrations directory found, using default: ./migrations
2025-10-27T05:53:00.065315Z INFO starrocks_admin::db: Using migrations from: ./migrations
2025-10-27T05:53:00.065334Z ERROR starrocks_admin::db: Migration setup failed: while resolving migrations: No such file or directory (os error 2)
Error: Migrate(Source(Os { code: 2, kind: NotFound, message: “No such file or directory” }))

看着是缺失migrations文件导致的,这个文件应该放在那个目录下

默认账密是啥?日志里也查不到

:cow:啊!

admin admin

这个对starrokcs版本有要求吗?我查看backends是会报500.


2025-10-29T00:52:57.622138Z ERROR request{method=GET uri=/api/clusters/1/backends version=HTTP/1.1}: tower_http::trace::on_failure: response failed classification=Status code: 500 Internal Server Error latency=39 ms

报错:Login failed. Please check your credentials. 前几天编译的版本,我需要重新下载编译吗

家人们,可以入群交流!

我编译后后试用了一下,是个不错的东东,能减轻社区版starrocks的运维压力:

我随便作了一下代码质量检查,发现了不少的安全问题,建议尽快收复!


StarRocks Admin 代码质量检查报告

检查时间: 2024年12月19日

项目版本: 当前main分支

检查范围: Rust后端 + Angular前端


:clipboard: 检查概览

| 检查项目 | 状态 | 问题数量 | 严重程度 |

|---------|------|----------|----------|

| Rust Clippy | :white_check_mark: 通过 | 0 | - |

| Rust 代码格式 | :white_check_mark: 已修复 | 0 | - |

| Rust 安全审计 | :warning: 需修复 | 3 | 严重 |

| Angular Lint | :warning: 需修复 | 1 | 警告 |

| 前端代码格式 | :warning: 需修复 | 57 | 格式问题 |

| 前端安全审计 | :x: 需修复 | 67 | 2严重+30高危 |


:mag: 详细检查结果

1. Rust 后端代码质量

:white_check_mark: Clippy 代码质量检查

  • 状态: 通过

  • 问题数量: 0

  • 说明: 代码质量良好,没有发现潜在问题

:white_check_mark: 代码格式检查

  • 状态: 已自动修复

  • 修复文件: 所有Rust源文件

  • 说明: 使用 cargo fmt 自动格式化了代码

:warning: 安全审计 (Cargo Audit)

发现 3个严重安全漏洞:

| 漏洞 | 严重程度 | 影响 | 建议 |

|------|----------|------|------|

| idna 0.5.0 | 严重 | 接受不产生非ASCII字符的Punycode标签 | 升级到0.5.1+ |

| rsa 0.9.8 | 严重 | Marvin攻击 - 时序侧信道攻击 | 升级到0.9.9+ |

| sqlx 0.7.4 | 严重 | 二进制协议误解导致截断或溢出 | 升级到0.8.1+ |

:warning: 依赖警告

发现 2个过时依赖:

  • paste 1.0.15: 不再维护

  • proc-macro-error 1.0.4: 不再维护

2. Angular 前端代码质量

:warning: Angular Lint 检查

  • 状态: 1个警告

  • 问题: metric-card-group.component.ts:39 - 需要实现OnInit接口

  • 修复建议: 添加 implements OnInit 到组件类

:x: 代码格式检查 (Prettier)

  • 状态: 需要修复

  • 问题文件: 57个文件

  • 说明: 代码格式不统一,需要运行Prettier格式化

:x: 安全审计 (NPM Audit)

发现 67个安全漏洞:

| 严重程度 | 数量 | 主要问题 |

|----------|------|----------|

| 严重 | 2 | form-data, lodash.template |

| 高危 | 30 | tinymce XSS, chart.js原型污染, moment ReDoS |

| 中等 | 29 | Angular XSS, postcss ReDoS, esbuild |

| 低危 | 6 | 其他依赖问题 |

主要漏洞详情:

  • form-data: 使用不安全的随机函数选择边界

  • lodash.template: 命令注入漏洞

  • tinymce: 多个跨站脚本(XSS)漏洞

  • chart.js: 原型污染漏洞

  • moment: 正则表达式拒绝服务攻击


:hammer_and_wrench: 修复建议

立即修复 (高优先级)

1. 修复Rust安全漏洞


# 更新Cargo.toml中的依赖版本

sqlx = "0.8.1"

validator = "0.18.0"  # 修复idna问题

rsa = "0.9.9"         # 修复Marvin攻击

# 运行更新

cargo update

cargo audit

2. 修复前端安全漏洞


cd frontend

npm audit fix --force

3. 修复代码格式


# 前端代码格式化

cd frontend

npx prettier --write src/**/*.{ts,html,scss}

# 后端代码已自动格式化

4. 修复Angular Lint警告

metric-card-group.component.ts 中添加:


export class MetricCardGroupComponent implements OnInit {

  // 现有代码...

}

中期优化 (中优先级)

1. 依赖升级

  • 考虑替换过时的Rust依赖

  • 升级Angular到最新LTS版本

  • 升级其他前端依赖到安全版本

2. 建立代码质量流程

  • 配置pre-commit钩子

  • 集成自动格式化

  • 设置更严格的linting规则

长期维护 (低优先级)

1. 持续安全监控

  • 定期运行安全审计

  • 集成到CI/CD流程

  • 设置安全漏洞告警

2. 代码质量改进

  • 增加单元测试覆盖率

  • 建立代码审查流程

  • 定期重构优化


:bar_chart: 总体评估

代码质量评分

| 维度 | 评分 | 说明 |

|------|------|------|

| 代码质量 | 8/10 | Rust代码质量优秀,前端有少量问题 |

| 安全性 | 4/10 | 存在多个严重安全漏洞 |

| 维护性 | 6/10 | 部分依赖过时,需要更新 |

| 格式一致性 | 5/10 | 前端格式不统一 |

综合评分: 6/10

主要优势:

  • Rust代码质量优秀

  • 项目结构清晰

  • 功能实现完整

主要问题:

  • 安全漏洞较多

  • 依赖版本过时

  • 代码格式不统一


:dart: 下一步行动计划

第1周

  1. 修复所有严重安全漏洞

  2. 统一代码格式

  3. 修复Lint警告

第2周

  1. 升级过时依赖

  2. 建立代码质量检查流程

  3. 配置自动格式化

第3周

  1. 增加安全监控

  2. 完善测试覆盖

  3. 优化代码结构


报告生成时间: 2024年12月19日

检查工具: cargo clippy, cargo fmt, cargo audit, ng lint, prettier, npm audit

建议复查周期: 每月一次