序章:总体目标与核心问题
这一篇不是安装任何组件,而是先回答一个更关键的问题:这个系列到底想完成什么,以及后面每一章分别在解决哪一类核心问题。。
文章目录17 个章节
这一篇要解决什么问题
这一篇不是安装任何组件,而是先回答一个更关键的问题:这个系列到底想完成什么,以及后面每一章分别在解决哪一类核心问题。
这套专栏写给谁
这套专栏写给喜欢折腾、愿意自己动手搭环境的极客。
默认读者已经知道这些技术栈大致是什么,也知道它们在公司环境里通常扮演什么角色。专栏不负责做大段概念科普,而是聚焦在一个更实际的问题上:如果把这些常见基础设施能力放到一台服务器上,应该怎么组织、怎么落地、怎么验证。
所以,这个系列提供的是一套真实的落地方案,而不是唯一正确答案。读者可以直接参考,也可以按自己的机器条件和偏好做取舍。
总体目标
用一台物理服务器,尽可能完整地复刻一套公司里常见的基础设施能力,并把整个过程沉淀成可复现、可验证、可恢复的工程资产。
这里的重点不是“我装了多少服务”,而是:
- 能不能把资源规划清楚。
- 能不能把系统边界拆清楚。
- 能不能把访问、发布、观测、恢复这些能力补完整。
- 能不能把整个过程沉淀成别人也能照着复现的方案。
这个系列要回答的核心问题
- 一台物理机,怎样规划资源,才撑得起后续整套基础设施。
- 借助 AI 搭这种基础设施时,怎样让它真的帮上忙,而不是把项目带偏。
- 怎样通过虚拟化,把单机资源拆成清晰、可管理、可演进的基础设施单元。
- 怎样先打通远程访问和控制面,保证系统“能进、能管、能统一访问”。
- 怎样用 IaC + AI,从手工运维升级到可控自动构建。
- 怎样搭起统一的网络与入口设施,让域名、网关、证书、跳板成为一套稳定底座。
- 怎样把单机服务逐步推进到容器化和平台化。
- 怎样把数据库、缓存、消息、对象存储、制品仓库这些常见基础能力自己搭一遍。
- 怎样把发布链路从手工推进到 CI/CD 和 GitOps。
- 怎样验证整套系统在压力和故障面前不是纸上谈兵。
- 怎样通过监控、日志、告警,真正获得系统运行状态的可见性。
- 怎样让这套环境在断电、迁移和故障后仍然能够按文档恢复。
第 1 章:服务器硬件规划
解决的问题:
- 单机资源怎么规划。
- CPU、内存、磁盘、网口怎样为后续平台能力预留空间。
第 2 章:我是怎么借助 AI 把这套 homelab 搭起来的
解决的问题:
- AI 在这种项目里到底适合干什么。
- 哪些环节可以让 AI 大幅提速,哪些环节最后还是得回到真实环境自己拍板。
第 3 章:PVE 虚拟化平台搭建
解决的问题:
- 为什么一台物理机不能把所有服务混装在一起。
- 怎样把资源拆成多个清晰的 VM 角色。
第 4 章:异地组网与远程访问
解决的问题:
- 怎样从公司或外部网络稳定访问家里的环境。
- 怎样先把运维入口打通,而不是只在家里本地可用。
第 5 章:IaC + AI(从手工运维到自动构建)
解决的问题:
- 为什么第 5 章要从“工具协作”升级到“数字运维能力建设”。
- Story 驱动下,怎样让 IaC + AI 渐进式构建而不是一次性大改。
- 在 AI 参与执行时,怎样通过 review、授权和验收保持工程可控。
第 6 章:基础网络与入口设施
解决的问题:
- 怎样建立统一的 DNS、网关、证书、跳板和代理能力。
- 怎样让整套基础设施有一个稳定的控制面。
第 7 章:Docker 与基础容器化环境
解决的问题:
- 怎样把基础服务从传统单机进程推进到容器化运行。
- 怎样为后续制品管理和平台化运行打基础。
第 8 章:Kubernetes 集群搭建
解决的问题:
- 怎样把应用运行环境升级成平台层。
- 怎样让服务部署、扩展和统一入口具备更强的一致性。
第 9 章:Web 基础设施
解决的问题:
- 怎样把数据库、缓存、消息、对象存储、制品仓库这类常见依赖补齐。
- 怎样让应用有一套真实可用的底座。
第 10 章:CI/CD、制品仓库与 GitOps
解决的问题:
- 怎样把代码提交、镜像构建、制品存储和部署发布串成闭环。
- 怎样从手工发布过渡到自动化交付。
第 11 章:压测环境与性能验证
解决的问题:
- 怎样知道系统不是“看起来能跑”,而是真的能承受负载。
- 怎样找到网络、入口和观测链路的性能边界。
第 12 章:监控、日志与告警体系
解决的问题:
- 怎样获得系统运行状态的可见性。
- 怎样在问题发生时有抓手,而不是靠猜。
第 13 章:恢复演练与可重复交付
解决的问题:
- 怎样证明这套系统不是一次性搭建。
- 怎样在断电、故障、迁移后还能按文档恢复。