这门课不是给"想了解一下运维平台长什么样"的人准备的。它更适合你已经写过一些 Go 服务、用过 K8s、听说过服务树但没自己搭过,现在要把这些零件拼成一个能跑起来的运维平台。139G 的体量摆在那里,说明内容是往深处走的,不是概念扫盲。
先自查:这几个缺口你有没有
- 能写 Go 的 CRUD,但没处理过平台级的鉴权、RBAC、审计日志和长任务编排。
- 会敲 kubectl,但说不出 Deployment、Service、Ingress 在平台层怎么被封装成一次"发布"。
- 知道 CI/CD 该有流水线,但流水线怎么和 K8s 集群、镜像仓库、审批节点串起来,脑子里是散的。
- 监控只到"装个 Prometheus 看仪表盘",告警规则、分组收敛、值班通知没碰过。
- Vue 停留在写页面,没做过后台系统里常见的权限路由、动态菜单、批量表格操作。
- 服务树听过,但为什么运维平台非要有它、它和 CMDB 的边界在哪,说不清楚。
上面任意三条中招,这门课的密度才对你有意义。全中的话,别急着跳着看,按模块顺序走更稳。
七个模块分别在解决什么
平台开发最怕的是模块各写各的。这门课把七个模块放在一个工程里推进,价值不在单点技术,而在接口怎么定。
接入层要做用户、角色、权限,这是后面所有操作的底座——谁能发布、谁能改配置、谁只能看,都得从这里出。资源层要对接 K8s 集群,把集群、命名空间、工作负载抽象成平台自己的模型,而不是把 kubectl 输出直接透给前端。服务树是把这些资源按业务线、应用、实例挂到一棵树上,让"这个应用归谁管、跑在哪、依赖谁"有唯一答案。CI/CD 模块则把构建、镜像、发布、回滚做成可重复的流程,接在服务树上,发布对象直接来自树节点。监控与告警负责把指标、日志、事件回流到同一个视图,出问题能顺着服务树定位到具体应用。前端用 Vue 把这些串成一套后台界面,难点在权限路由和状态管理,不在组件本身。
你会发现,课程真正反复要你做的判断是:这个能力放在哪个模块、暴露成什么接口、前端怎么调用。这比背 API 重要得多。
动手时会卡住的地方
- K8s 客户端用 client-go 还是直接调 API,Informer 缓存怎么和平台数据同步。
- 发布过程中的状态怎么存:是等 K8s 回报,还是平台自己维护一套状态机。
- 服务树节点变更后,权限、监控、流水线怎么跟着变,避免留下孤儿资源。
- 告警去重和抑制规则怎么设计,否则值班群会被刷屏。
- 前端动态路由与后端权限模型如何对齐,刷新页面菜单不能丢。
这些坑在文档里通常一笔带过,但在真实平台里天天遇到,建议边看边在自己的环境里复现一遍。
看完应该能回答的问题
- 服务树和 CMDB 的区别是什么,为什么运维平台通常选择服务树作为主视图?
- 一次发布从点击按钮到 Pod 就绪,中间经过哪些组件,状态存在哪里?
- 平台的权限模型怎么同时约束 K8s 资源和平台自身的数据?
- 监控数据如何按服务树维度聚合,告警怎么知道该通知谁?
- 如果要把这套平台裁剪到只保留发布和监控两个模块,你会先砍掉什么?
能顺畅答出这五个问题,说明你不是跟着敲了一遍,而是理解了模块之间的咬合关系。答不上来的那几个,回去补对应的部分就行。
139G 大容量分析:大规模运维平台 Go+Vue+K8s+CICD+服务树+监控 7模块运维平台开发全解析
深度解析大规模运维平台开发
编辑点评
系统学习Go+Vue+K8s+CICD,掌握运维平台开发全流程。
⭐ 编辑推荐
全面解析大规模运维平台开发,涵盖Go、Vue、K8s、CICD等技术。
课程亮点
课程目录
📁 PART2
1111-21_8标签选择器组_62897_7236.mp4 [71.5 MB]
999-11_1详情的菜单和跳转_62897_7877.mp4 [69.4 MB]
998-10_8收尾和TODO_62897_3947.mp4 [35.3 MB]
997-10_7单个操作和batch操作_62897_4990.mp4 [90.8 MB]
996-10_6驱逐节点的后端接口_62897_6073.mp4 [77.4 MB]
995-10_5展示污点_62897_5837.mp4 [39.1 MB]
993-10_3污点配置后端去重_62897_2846.mp4 [77.3 MB]
992-10_2污点配置缩进问题_62897_6200.mp4 [91.2 MB]
994-10_4去掉污点的前后端操作_62897_3102.mp4 [72.7 MB]
990-9_10如何在index中导入多个drawer_62897_3466.mp4 [64.0 MB]
987-9_7标签tooltip展示_62897_6449.mp4 [84.0 MB]
991-10_1污点drawer配置并测试校验_62897_9030.mp4 [59.2 MB]
989-9_9污点配置的后端接口_62897_5966.mp4 [49.7 MB]
986-9_6修复label-nil-map问题_62897_6915.mp4 [94.8 MB]
988-9_8污点配置的yaml解析_62897_2156.mp4 [57.7 MB]
985-9_5前端将labels进行预处理_62897_5436.mp4 [88.6 MB]
984-9_4打标签操作的batch后端接口_62897_5138.mp4 [63.2 MB]
983-9_3按pod数量排序_62897_5731.mp4 [104.7 MB]
981-9_1调度状态切换的公共方法_62897_1297.mp4 [83.4 MB]
982-9_2测试单个按钮和批量操作_62897_8445.mp4 [71.1 MB]
PART2必看.png [493.5 KB]
979-8_9表格字段展示_62897_5905.mp4 [46.4 MB]
980-8_10调度状态Switch展示和开关调度_62897_9249.mp4 [52.6 MB]
978-8_8测试并优化速度_62897_8994.mp4 [81.2 MB]
976-8_6下载dashboard源码学习分页_62897_1198.mp4 [97.4 MB]
977-8_7手动分页后端代码_62897_8631.mp4 [40.6 MB]
975-8_5下拉列表进行美化失败-3of3_62897_7258.mp4 [26.0 MB]
973-8_3遇到问题table的beforeFetch获取数据为_62897_9930.mp4 [146.1 MB]
974-8_4切换下拉集群重载表格_62897_6377.mp4 [43.7 MB]
972-8_2后端获取集群列表的接口_62897_7800.mp4 [121.0 MB]
969-7_9获取机器的使用率_62897_6149.mp4 [110.8 MB]
971-8_1前端集群下拉列表选择器_62897_6674.mp4 [87.2 MB]
970-7_10format使用率_62897_1331.mp4 [55.9 MB]
967-7_7安装metrics-server_62897_3598.mp4 [137.4 MB]
968-7_8使用metrics-client-set_62897_8038.mp4 [127.9 MB]
966-7_6format的时候使用string替换value_62897_9319.mp4 [154.3 MB]
965-7_5再次计算百分比_62897_6329.mp4 [116.8 MB]
964-7_4搜索k8s源码describenode中的资源计算_62897_4471.mp4 [85.2 MB]
963-7_3计算百分比时request很大问题_62897_9580.mp4 [125.0 MB]
962-7_2request值如何获取_62897_7531.mp4 [117.5 MB]
961-7_1allocatable和capacity_62897_7238.mp4 [89.9 MB]
960-6_6node-role的获取_62897_4357.mp4 [34.6 MB]
959-6_3mock-data的时候模拟创建node_62897_1295.mp4 [85.2 MB]
958-6_2status状态取值_62897_2705.mp4 [89.0 MB]
957-6_1测试version超时控制_62897_8181.mp4 [67.5 MB]
955-6_8获取节点上的pod方法_62897_8487.mp4 [122.0 MB]
954-6_7Age处理并测试_62897_2042.mp4 [53.6 MB]
956-6_9标签和污点_62897_2662.mp4 [43.0 MB]
953-6_5仿照k8s源码进行node状态编写_62897_4657.mp4 [95.8 MB]
950-5_9解决临时文件删除错误的问题_62897_2718.mp4 [185.3 MB]
952-6_4终于在k8s源码中找到了get-node源码_62897_2351.mp4 [62.0 MB]
951-5_10手动给version接口添加超时控制_62897_4850.mp4 [53.7 MB]
949-5_8构造节点封装公共kc方法_62897_1584.mp4 [66.6 MB]
948-5_7下载k8s源码_62897_6042.mp4 [45.0 MB]
947-5_6设计one-node结构体_62897_2775.mp4 [54.4 MB]
945-5_4获取指定集群节点原始列表的接口_62897_9546.mp4 [88.7 MB]
946-5_5节点列表菜单和测试_62897_1876.mp4 [62.3 MB]
944-5_3关于node都需要做什么功能_62897_6756.mp4 [49.2 MB]
943-5_2查看之前的平台代码中node部分_62897_2841.mp4 [62.3 MB]
942-5_1展示集群探活失败原因_62897_9153.mp4 [53.2 MB]
941-4_10展示集群最近一次探活结果_62897_5469.mp4 [86.4 MB]
940-4_9进行测试_62897_2596.mp4 [38.3 MB]
939-4_8给集群添加一些信息字段_62897_8416.mp4 [73.5 MB]
938-4_7设计探活方式_62897_1639.mp4 [66.3 MB]
937-4_6创建和更新接口_62897_1638.mp4 [55.9 MB]
936-4_5设计表单_62897_6124.mp4 [65.9 MB]
933-4_2解决子菜单问题_62897_5906.mp4 [121.5 MB]
935-4_4运行环境特殊展示_62897_9871.mp4 [36.7 MB]
934-4_3k8s集群列表和接口_62897_2418.mp4 [54.2 MB]
932-4_1k8s管理平台存储方式2种流派_62897_8994.mp4 [37.0 MB]
931-3_10定义k8s集群管理role_62897_3487.mp4 [114.8 MB]
930-3_9k8s集群管理限定集群管理员角色访问_62897_8549.mp4 [40.2 MB]
929-3_8按角色拆分api_62897_8551.mp4 [135.4 MB]
928-3_7解决id乱序问题_62897_6772.mp4 [66.3 MB]
926-3_5按角色分类menu_62897_6109.mp4 [77.1 MB]
927-3_6测试效果_62897_2284.mp4 [72.7 MB]
925-3_4menu按模块进行分类的思路_62897_3381.mp4 [57.8 MB]
924-3_3抽象公共超时ctx方法_62897_6343.mp4 [74.4 MB]
923-3_2遍历读取kc目录_62897_9750.mp4 [139.4 MB]
921-3_1连接不同的集群获取node_62897_2539.mp4 [118.8 MB]
922-3_1准备多个集群的kubeconfigs_62897_6397.mp4 [49.7 MB]
919-2_9用快速搭建脚本搭建1_27新集群-1_62897_1359.mp4 [137.6 MB]
920-2_10用快速搭建脚本搭建1_27新集群-2_62897_2078.mp4 [62.8 MB]
918-2_8测试list-node_62897_4172.mp4 [109.8 MB]
917-2_7如何通过kconfig内容生产client_62897_7771.mp4 [45.5 MB]
916-2_6构造k8s多集群的cache_62897_8161.mp4 [10.5 MB]
915-2_5mock-cluster数据_62897_8462.mp4 [44.2 MB]
913-2_3多集群操作菜单_62897_8434.mp4 [61.8 MB]
914-2_4k8s-icon_62897_4762.mp4 [28.1 MB]
912-2_2设计连接集群的表_62897_6341.mp4 [41.5 MB]
911-2_1incluster连接集群源码解读_62897_6511.mp4 [33.3 MB]
910-1_6使用client-go操作集群_62897_3697.mp4 [80.3 MB]
908-1_4官方的dashboard控制台使用并总结特点_62897_8662.mp4 [79.4 MB]
909-1_5k8s平台都要做哪些模块_62897_2753.mp4 [39.9 MB]
907-1_3解决登陆问题_62897_2625.mp4 [36.6 MB]
906-1_2官方的dashboard控制台安装_62897_3638.mp4 [135.8 MB]
905-1_1准备工作_62897_1930.mp4 [30.5 MB]
904-35_4总结告警规则模块_62897_6427.mp4 [37.1 MB]
902-35_2总结值班组和ALertmanager模块_62897_9117.mp4 [49.1 MB]
903-35_3总结webhook和im卡片消息模块_62897_6905.mp4 [27.4 MB]
📁 PART1
664-12_6_进行测试_62897_9443.mp4 [96.0 MB]
663-12_5_生成Prometheus主配置时需要添加alert_62897_3889.mp4 [100.0 MB]
647-10_6_告警抑制实例_62897_8213.mp4 [36.6 MB]
648-10_7_告警静默_62897_7669.mp4 [75.3 MB]
99-10_2_必备软件_62897_2932.mp4 [13.6 MB]
97-9_10_最后的验_62897_4737.mp4 [45.3 MB]
96-9_9_解决用户多_62897_9233.mp4 [78.6 MB]
98-10_1_后端技术选型_62897_6621.mp4 [27.7 MB]
92-9_5_在mock中使_62897_5475.mp4 [270.0 MB]
94-9_7_发现部分_62897_7338.mp4 [137.4 MB]
95-9_8_解决子菜_62897_4765.mp4 [34.9 MB]
91-9_4_新增角色登_62897_8761.mp4 [151.4 MB]
93-9_6_验证低权限的用_62897_9577.mp4 [53.8 MB]
89-9_2_根据用_62897_7754.mp4 [99.1 MB]
90-9_3_给角色分配菜_62897_7302.mp4 [17.9 MB]
88-9_1_划分菜单角_62897_3752.mp4 [78.8 MB]
85-8_3_修改当前用_62897_4026.mp4 [218.4 MB]
86-8_4_退出登录_62897_2218.mp4 [157.0 MB]
87-8_5_跳转登出_62897_4809.mp4 [92.8 MB]
842-29_2_fullfill方法和routeLink跳转_62897_9173.mp4 [70.9 MB]
843-29_3_告警级别颜色展示和开启switch_-_3of3_62897_5908.mp4 [31.8 MB]
841-29_2_fullfill方法和routeLink跳转_62897_8466.mp4 [95.0 MB]
840-29_1_菜单和规则表格字段_62897_3891.mp4 [72.4 MB]
PART1文档.zip [1.8 MB]
84-8_2_删除用_62897_5205.mp4 [53.4 MB]
839-28_12_发送组变更后alertmanager配置测试_62897_4993.mp4 [31.9 MB]
837-28_10_测试gorm事务型更新方法_62897_4239.mp4 [88.0 MB]
838-28_11_删除后reload表格_62897_3803.mp4 [66.4 MB]
836-28_9_之前配置的升级人不配置了需要增量删除_62897_1572.mp4 [87.9 MB]
835-28_8_发送组的新增和更新接口_62897_8896.mp4 [98.3 MB]
833-28_6_封装view中公共的获取用户方法_62897_8018.mp4 [75.6 MB]
834-28_7_告警升级人编辑展示_62897_9328.mp4 [55.2 MB]
83-8_1_新增和修_62897_1599.mp4 [229.1 MB]
831-28_4_发送组的基础form字段_62897_9556.mp4 [71.1 MB]
832-28_5_告警升级开关_62897_4085.mp4 [67.0 MB]
830-28_3_展示第一升级人列表_62897_2093.mp4 [48.0 MB]
829-28_2_发送组列表接口_62897_2782.mp4 [106.2 MB]
827-27_6_更新删除接口_62897_8874.mp4 [149.4 MB]
828-28_1_发送组表格字段_62897_3696.mp4 [77.1 MB]
826-27_5_新增接口和ip重复检验_62897_5770.mp4 [91.0 MB]
825-27_4_新增alertmanager集群的drawer_62897_6955.mp4 [82.8 MB]
824-27_3_alert集群yaml查看页面_62897_1304.mp4 [83.4 MB]
823-27_2_alertmanager集群列表_62897_6604.mp4 [92.1 MB]
822-27_1_发送组菜单_62897_3874.mp4 [58.7 MB]
821-26_7_测试历史换班记录_62897_7145.mp4 [94.7 MB]
820-26_6_历史日期不能换班_62897_1578.mp4 [77.3 MB]
819-26_5_换班的记录显示在日历上_62897_5972.mp4 [150.8 MB]
82-7_10_用户密码和用_62897_9391.mp4 [98.8 MB]
818-26_4_后端接口测试并添加换班记录_62897_5065.mp4 [113.2 MB]
816-26_2_需要把日期原值班人传入_62897_6646.mp4 [104.7 MB]
817-26_3_完成换班请求拼接_62897_3945.mp4 [75.1 MB]
815-26_1_点击日期打开模态框_62897_5822.mp4 [72.8 MB]
813-25_9_测试第一轮超过_62897_9243.mp4 [180.5 MB]
814-25_10_前段获取周期默认为2个月_62897_5716.mp4 [127.6 MB]
812-25_6_第一轮剩余轮班逻辑_62897_3303.mp4 [207.1 MB]
811-25_5_如果昨天的人是换班的-那么就得用它之前的人_62897_9974.mp4 [80.2 MB]
81-7_9_角色列表_62897_8827.mp4 [142.0 MB]
809-25_4_进行测试_62897_4387.mp4 [58.4 MB]
810-25_7_第一轮超过的逻辑_62897_8847.mp4 [44.1 MB]
808-25_3_轮班周期的填充历史记录的逻辑_62897_8648.mp4 [83.7 MB]
807-25_2_排班组详情页增加信息_62897_4687.mp4 [125.3 MB]
806-25_8_测试第一轮剩余_62897_9014.mp4 [102.3 MB]
803-24_9_和后端值班表对应上_62897_4621.mp4 [165.2 MB]
805-25_1_排班计划时间范围分3种情况_62897_9050.mp4 [58.9 MB]
804-24_10_panelChange查看其他月份_62897_2895.mp4 [88.7 MB]
802-24_8_调试排班页面之moment获取日期_62897_8129.mp4 [103.9 MB]
801-24_7_准备排班表页面_62897_2090.mp4 [106.0 MB]
800-24_6_route-link实现表格跳转_62897_8060.mp4 [123.1 MB]
80-7_8_用户_62897_6977.mp4 [94.4 MB]
799-24_5_值班组删除保护和级联删除_62897_8417.mp4 [83.0 MB]
798-24_4_值班组新增和更新_62897_6018.mp4 [112.5 MB]
797-24_3_值班组Form字段_62897_2563.mp4 [82.4 MB]
796-24_2_值班组列表数据_62897_7230.mp4 [103.7 MB]
795-24_1_增加菜单_62897_2722.mp4 [74.3 MB]
793-23_2_私聊token刷新管理器_62897_3505.mp4 [78.1 MB]
794-23_3_测试私聊token_62897_2505.mp4 [46.8 MB]
792-23_1_完成群聊发送token设置_62897_8062.mp4 [49.0 MB]
791-22_9_按alertName屏蔽接口_-_3of3_62897_9435.mp4 [26.7 MB]
790-22_9_按alertName屏蔽接口_-_2of3_62897_7847.mp4 [31.0 MB]
79-7_7_使用登陆用_62897_8795.mp4 [29.3 MB]
788-22_8_按alertName屏蔽按钮_-_3of3_62897_4020.mp4 [23.4 MB]
789-22_9_按alertName屏蔽接口_-_1of3_62897_1952.mp4 [23.4 MB]
787-22_8_按alertName屏蔽按钮_-_2of3_62897_3256.mp4 [40.6 MB]
786-22_8_按alertName屏蔽按钮_-_1of3_62897_7381.mp4 [25.4 MB]
785-22_7_完成unsilence接口_-_3of3_62897_5350.mp4 [17.0 MB]
784-22_7_完成unsilence接口_-_2of3_62897_9682.mp4 [38.5 MB]
782-22_6_取消屏蔽接口event增加silenceId_62897_7385.mp4 [84.4 MB]
781-22_5_测试告警屏蔽_62897_5822.mp4 [146.3 MB]
783-22_7_完成unsilence接口_-_1of3_62897_9689.mp4 [19.2 MB]
78-7_6_用户信息表_62897_8732.mp4 [123.7 MB]
780-22_4_告警屏蔽接口_-_5of5_62897_3231.mp4 [16.0 MB]
779-22_4_告警屏蔽接口_-_4of5_62897_9873.mp4 [20.9 MB]
778-22_4_告警屏蔽接口_-_3of5_62897_4898.mp4 [26.6 MB]
777-22_4_告警屏蔽接口_-_2of5_62897_1289.mp4 [31.3 MB]
775-22_3_私聊发给值班人+发送告警群at值班人_62897_1134.mp4 [32.4 MB]
776-22_4_告警屏蔽接口_-_1of5_62897_3816.mp4 [27.7 MB]
774-22_2_补全告警标签和annotation_-_5of5_62897_2944.mp4 [31.5 MB]
773-22_2_补全告警标签和annotation_-_4of5_62897_8938.mp4 [39.3 MB]
772-22_2_补全告警标签和annotation_-_3of5_62897_4669.mp4 [38.6 MB]
771-22_2_补全告警标签和annotation_-_2of5_62897_3130.mp4 [40.6 MB]适合人群
- 运维工程师
- 软件开发者
- 技术爱好者
学习收获
祝您学习愉快!
学有所成,前程似锦!






