ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

RackPeek如何绘制Home Lab拓扑图?端口连线与Mermaid图形可视化完全指南

RackPeek如何绘制Home Lab拓扑图?端口连线与Mermaid图形可视化完全指南 【免费下载链接】RackPeekCLI tool to discover, manage, and document your IT infrastructure and home lab.项目地址https://gitcode.com/gh_mirrors/ra/RackPeek点击查看免费下载RackPeek 是一款用于发现、管理和记录 Home Lab家庭实验室与小型 IT 基础设施的开源 CLI Web UI 工具。这篇文章将完整讲解 RackPeek 拓扑图绘制流程如何记录端口连线、如何用一条命令生成 Mermaid 物理拓扑图与逻辑视图、以及如何把图形导出成 PNG 或源码。全程以新手视角操作零基础也能画出专业的网络拓扑图。为什么 Home Lab 需要一张拓扑图设备一多这根网线到底接哪儿了就成了难题。RackPeek 的思路是用 YAML 记录硬件与连线用 Mermaid 一键渲染成图图始终与数据保持一致不会像手绘图那样过期。RackPeek 提供两种拓扑图视图回答的问题数据来源物理拓扑Physical哪台设备的哪个端口接到哪台设备硬件 端口连线connections逻辑视图Logical哪个服务跑在哪台主机、属于哪个子网服务 系统 runsOn 关系第 1 步把端口连线记下来拓扑图的边来自connections端口连线记录。每条连线精确到资源 端口组 端口号三个坐标有三种录入方式。方式一CLI 命令推荐脚本化rpk connections add A资源 A组 A号 B资源 B组 B号 [--label 标签]例如把防火墙 WAN 口接到核心路由rpk connections add pfsense-fw 1 0 core-router 1 0 --label WAN uplink命令参数定义见 ConnectionAddCommand.cs校验逻辑资源必须存在、端口组/端口号不能越界、不能自连、一个端口只能有一条连线、重复添加会覆盖旧连线实现在 AddConnectionUseCase.cs。删除连线用rpk connections remove实现见 ConnectionRemoveCommand.cs。方式二Web UI 可视化连线打开 RackPeek Web 界面后进入Connections页面路由/connections页面以端口组可视化的形式展示每台设备的端口点击端口即可选择对端完成连线页面组件在 ConnectionsPage.razor。适合不想记命令、习惯点着连的用户。方式三直接编辑 YAMLRackPeek 的全部状态存放在 YAML 中config/config.yaml连线就是顶层connections:列表每条包含a、b两个端口引用和可选的label、notes。示例项目里的真实片段connections: - a: resource: pfsense-fw portGroup: 1 portIndex: 0 b: resource: core-router portGroup: 1 portIndex: 0 label: WAN uplink - a: resource: core-router portGroup: 1 portIndex: 0 b: resource: core-switch portGroup: 2 portIndex: 0 label: core trunk完整示例可参考 vhs/sample_config/config.yaml连线数据结构定义见 Connection.cs。第 2 步一条命令生成 Mermaid 物理拓扑图连线记好后运行rpk graph topology命令会输出完整的 Mermaid flowchart 源码直接重定向到文件即可归档rpk graph topology topology.mmd输出示例节选%%{init: {layout: elk, flowchart: {curve: step, ...}}}%% flowchart TD n_pfsense_fw{{pfsense-fwbr/firewall}}:::rpknode n_core_router([core-routerbr/router]):::rpknode n_core_switch[[core-switchbr/switch]]:::rpknode n_pfsense_fw ---|eth0 ↔ wan1| n_core_router n_core_router ---|eth1 ↔ p1| n_core_switch这条命令的实现链路非常清晰值得了解GraphTopologyCommand.csCLI 入口把结果直接写到标准输出避免终端软换行破坏 Mermaid 语法方便管道重定向BuildPhysicalTopologyUseCase.cs把硬件变成节点、把 connections 变成边MermaidSerialiser.cs把图序列化为 Mermaid 文本。节点形状自带语义RackPeek 借鉴 NetBox / draw.io 的网络图惯例用形状区分设备类型只看轮廓就知道角色形状映射表见 MermaidSerialiser.cs设备类型形状含义Firewall六边形安全边界Router体育场形网关Switch双边框汇聚/分发Server圆柱计算/存储AccessPoint圆形无线射频UPS菱形辅助设施Desktop / Laptop圆角矩形终端边标签优先显示你写的--label没写时自动用端口类型编号生成如eth0 ↔ wan1标签生成逻辑见 BuildPhysicalTopologyUseCase.cs。此外序列化结果确定性强——同一份库存永远产出同一张图方便把渲染图提交进文档或做回归测试。第 3 步生成逻辑视图服务 × 子网物理图看线逻辑图看服务。运行rpk graph logical它会回答哪个服务跑在哪台主机上这台主机在哪个子网规则BuildLogicalGraphUseCase.cs每个系统Hypervisor / VM / Container生成一张主机卡片卡片内部列出它承载的全部服务及端口按 IP 自动归入/24 子网分组同一台物理硬件内的系统再嵌套一组形成子网 → 硬件 → 主机的层级不画连线runsOn的运行于关系由子图包含关系直接表达图更紧凑。实现入口见 GraphLogicalCommand.cs。第 4 步在 Web UI 里看大图并导出打开 RackPeek Web 界面进入Visualise页面路由/visualise顶部可在Physical / Logical两个标签间切换右上角两个按钮即导出Save PNG2 倍分辨率导出 PNG 图片深色背景可直接贴进 wiki 或博客Save Mermaid下载.mmd源码可用任意 Mermaid 渲染器再加工。页面实现见 VisualisePage.razor前端渲染与导出脚本在 Shared.Rcl/wwwroot/js/graph/index.js内置 ELK 布局引擎边线路由为直角风格更像专业网络图。常见问题与技巧图里为什么少了某些设备物理图只渲染硬件 两端资源都存在的连线指向不存在资源的连线会被安全跳过BuildPhysicalTopologyUseCase.cs先检查资源名拼写。连线连不上CLI 会明确报错资源不存在、端口组越界、端口号越界、端口自连均被拦截且同一端口只能属于一条连线重复添加会覆盖旧连线。想要更醒目的边标签添加--label选项它会优先显示在连线上。CI 里怎么用序列化输出是确定性的可以把rpk graph topology的产物做 golden-file 对比连线一变就能发现。更多命令细节可查阅 docs/Commands.md 与 docs/CommandIndex.md图形相关源码集中在 RackPeek.Domain/Graph/。总结RackPeek 绘制 Home Lab 拓扑图的完整路径只有四步用rpk connections add、Web Connections 页面或 YAML 记录端口连线rpk graph topology一条命令输出Mermaid 物理拓扑图节点形状自带设备语义rpk graph logical输出按子网/主机分组的逻辑视图在 Web UI 的 Visualise 页面查看大图一键导出 PNG 或 Mermaid 源码。数据是纯 YAML 的图是随时可再生的——这就是作为代码的 Home Lab 文档最省心的形态。赞分享【免费下载链接】RackPeekCLI tool to discover, manage, and document your IT infrastructure and home lab.项目地址https://gitcode.com/gh_mirrors/ra/RackPeek点击查看免费下载相关推荐如何用可视化工具轻松绘制专业网络拓扑图完整指南如何用可视化工具轻松绘制专业网络拓扑图完整指南 在网络管理和系统设计中 网络拓扑图 是理解复杂架构的关键工具。传统的绘制方法往往需要繁琐的手工操作但现在有前端数据可视化拓扑图绘制新选择easy-topo让网络可视化如此简单拓扑图绘制新选择easy topo让网络可视化如此简单 还在为复杂的网络架构设计而烦恼吗easy topo这款免费拓扑绘制工具让网络可视化变得前所未有的简前端数据可视化终极网络拓扑图绘制工具Topology完全指南终极网络拓扑图绘制工具Topology完全指南 还在为复杂的网络架构可视化而头疼吗 传统的绘图工具难以满足现代数据中心和企业网络的动态需求运维团队常常创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进