基础设施层
2026年1月31日大约 2 分钟
基础设施层
定位:
基础设施层是所有上层系统的物理与逻辑地基。
这一层决定了 系统能不能跑、能跑多快、出问题时能不能止血。对 CTO 而言,这是**资本开销(CapEx)与运营开销(OpEx)**的核心来源。
一、基础设施层的核心目标
1️⃣ 稳定
- 单点失效不可接受
- 任意节点可随时下线
2️⃣ 弹性
- 流量突增自动扩容
- 闲时自动缩容降低成本
3️⃣ 标准化
- 机器可替换
- 环境可复制
- 自动化优先
二、基础设施层的整体分解
┌──────────────────────────────┐
│ 计算资源层 │ ← VM / Container / Bare Metal
├──────────────────────────────┤
│ 容器与编排层 │ ← Kubernetes / Nomad
├──────────────────────────────┤
│ 网络基础设施 │ ← VPC / LB / DNS
├──────────────────────────────┤
│ 存储基础设施 │ ← Block / Object / File
├──────────────────────────────┤
│ 云平台 / IDC │ ← AWS / 阿里云 / 自建机房
└──────────────────────────────┘
三、计算资源层(Compute)
1️⃣ 形态选择
| 形态 | 特点 | 使用场景 |
|---|---|---|
| 物理机 | 性能极致 | 核心 DB / 高频交易 |
| 虚拟机 | 隔离性好 | 通用服务 |
| 容器 | 启停快 | 微服务 / 弹性 |
2️⃣ CTO 关键判断
- 是否允许 Overcommit
- CPU / 内存比例
- 是否需要 NUMA 优化
四、容器与编排层(Kubernetes 核心)
1️⃣ 为什么一定是编排系统?
没有编排 = 人肉运维 = 不可规模化
K8s 解决的问题:
- 调度
- 重启
- 扩缩容
- 滚动升级
- 服务发现
2️⃣ 核心组件映射
Pod → 最小运行单元
Deployment → 无状态服务
StatefulSet → 有状态服务
DaemonSet → 每节点服务
3️⃣ CTO 必须关注
- 控制面高可用
- etcd 备份
- 版本升级节奏
五、网络基础设施层
1️⃣ 网络分层模型
Internet
↓
Global DNS
↓
公网 LB
↓
VPC
↓
内网 LB
↓
Pod / VM
2️⃣ 关键组件
负载均衡
- L4:TCP / UDP(性能)
- L7:HTTP / HTTPS(智能)
网络隔离
- VPC / Subnet
- Security Group / NACL
- NetworkPolicy(K8s)
3️⃣ CTO 网络红线
- 生产 / 测试 强隔离
- 核心数据不暴露公网
- 默认拒绝原则
六、存储基础设施
1️⃣ 三种存储模型
| 类型 | 特点 | 示例 |
|---|---|---|
| 块存储 | 低延迟 | EBS |
| 对象存储 | 无限扩展 | S3 |
| 文件存储 | 共享 | NFS |
2️⃣ CTO 决策点
- IOPS vs 吞吐
- 成本曲线
- 数据冷热分层
七、云平台 vs 自建机房
1️⃣ 云平台优势
- 快速
- 弹性
- 全球化
2️⃣ 自建优势
- 成本可控(规模化后)
- 合规
- 性能极致
3️⃣ 大厂现实方案
混合云 / 多云
八、自动化与基础设施即代码(IaC)
1️⃣ 为什么必须 IaC?
点鼠标不是工程能力
2️⃣ 常见工具
- Terraform
- CloudFormation
- Ansible
3️⃣ 效果
- 可审计
- 可回滚
- 可复制
九、成本与容量管理(CTO 必修)
1️⃣ 成本拆解
- 计算
- 存储
- 流量
- 许可证
2️⃣ 常见浪费来源
- 过度预留
- 僵尸资源
- 未关测试环境

思 维 教程: