3步用官方Kubernetes图标库画出规范架构图
【免费下载链接】communityKubernetes Community Documentation项目地址: https://gitcode.com/GitHub_Trending/com/community
给Kubernetes架构文档配图时,各画各的图标,图会越来越乱。Kubernetes Community 图标库提供统一风格的控制平面、基础设施与Kubernetes资源图标,PNG、SVG双格式任选。本文带你3步取用图标、按场景组合成图。
✅ 快速上手
直接拿现成PNG即可出图,无需安装任何工具。
- 克隆仓库:
git clone https://gitcode.com/GitHub_Trending/com/community - 进入 icons/png/ 按组件类型取图:控制平面组件(API Server、Scheduler等)在 control_plane_components/,基础设施(控制平面、节点、etcd)在 infrastructure_components/,资源图标(Pod、Service、Deployment等)在 resources/
- 每个图标都有128px和256px两个尺寸,按文档分辨率挑选;需要无损缩放或改色时,改用 icons/svg/ 下的同名矢量文件
- 把选好的图标拖入作图工具或文档,开始连线组合
项目里都有什么
图标分三大类,配两种格式和一套转换脚本,覆盖文档、演示、Visio三类需求。
| 资产类型 | 特点 | 适用场景 |
|---|---|---|
| Labeled PNG | 带文字标签,128/256px 预生成 | 直接插入文档、演示文稿 |
| Unlabeled PNG | 纯图形无文字 | 图中空间有限、想自行加标注 |
| SVG 矢量源文件 | 无损缩放、可编辑 | 印刷物料、需自定义尺寸或配色 |
| Visio 模板 | 现成的 stencil 文件 | Windows 下在 Visio 里直接画图 |
| 工具脚本 | 基于 Docker 批量转换 | SVG转PNG、全套更新 |
关键目录:
- icons/png/ — 成品图标,最常用的目录
- icons/svg/ — 矢量源文件,用于二次编辑
- icons/examples/ 与 icons/docs/ — 完整架构图示例,不知道怎么组合时先看它们
- icons/tools/ — 批量转换脚本
- icons/visio/ — Visio stencil 文件
按场景取用
先判断你画的是应用链路还是集群结构,再进对应目录取图;labeled/unlabeled 与尺寸后缀的命名规则各类通用。
如果你画的是集群控制面拓扑,控制平面取 icons/png/control_plane_components/labeled/ 下的 api、c-m、sched 等图标,节点侧取 icons/png/infrastructure_components/labeled/ 的 control-plane、node、etcd,三者连线即成一张标准集群结构图;不想要图内文字时,换用对应 unlabeled/ 目录的同名文件。
画应用接入与部署链路
从域名到Pod的流量链路,全部在 icons/png/resources/labeled/ 里取:ing(Ingress)→ svc(Service)→ pod(Pod);要表达伸缩能力时补上 rs(ReplicaSet)和 deploy(Deployment),治理策略加 hpa、netpol 收尾。官方示例图的组合方式可直接参考:
画带副本与治理策略的应用图
要在一页里表达"暴露3副本Pod"时,取 ing、svc、3个pod、rs、deploy、hpa,外加 netpol、quota、limits,整体包进 ns(Namespace)外框,代表单个集群。官方示例长这样:
🔧 进阶与工具
脚本面向维护者,普通用户拿现成文件即可,需要时再运行。
- rasterize.sh — 批量把SVG转成PNG,Docker实现保证跨平台一致
- update-visio.sh — 用PNG图标重新生成Visio stencil
- update-everything.sh — 一键跑完上述全套更新
- Dockerfile — 上述脚本依赖的容器环境定义
总结
Kubernetes图标库用统一风格、统一命名解决了架构图"各画各的"问题,取用零门槛。完整图标清单与许可说明见 icons/README.md,贡献规范见 CONTRIBUTING.md。下次画架构图前,先打开 icons/png/ 把图标选齐再动手,风格第一次就能统一。
【免费下载链接】communityKubernetes Community Documentation项目地址: https://gitcode.com/GitHub_Trending/com/community
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考