跳转至

OCI × Terraform 学习笔记

只用 Always Free 额度,从一个 VCN 开始,一步步做到 3 层架构和 Kubernetes(OKE)的实践记录。

  • 每个阶段都用 Terraform 建、验证、再删掉,全程费用 0 日元
  • 除了"怎么做",重点记录了"为什么这样设计"和实际踩过的坑
  • 代码都在仓库里,页面中的完整代码是直接从仓库嵌入的

环境

项目 内容
账号 PAYG(按量付费)账号,只使用 Always Free 资源
Region 大阪 ap-osaka-1(Home Region)
Compartment 所有资源放在 tf-lab 里
本机 Windows 11 + PowerShell 5.1 + Terraform 1.16 + VS Code
其他 Cloud Shell(kubectl / Ansible / SSH 都在这里执行,原因见各阶段)

学习路线

Phase 主题 学到的东西
0 环境准备 API Key、Compartment、Budget 告警
1 网络 VCN / IGW / Route Table / Security List / Subnet,state 的作用,drift 检测和修复
2 Compute + Ansible A1 VM、cloud-init 和 Ansible 的分工、Cloud Shell private network
3 Module / Remote State / import module + for_each、Object Storage 存 state、把手动建的资源纳入管理
4 3 层架构 LB → Private VM ×2 → Autonomous DB,NAT GW / Service GW / Bastion
5a 静态检查 tflint / checkov,"检查通过 ≠ 安全"
5b Resource Manager OCI 托管的 Terraform、drift 检测
6 OKE(Kubernetes) Basic cluster、私有 API endpoint、Service LB、自愈 / drain 实验
7 网站发布 + CI/CD Object Storage 静态网站、OCI DevOps(push → 检查 → build → 发布)、Resource Principal
8 网站自动停止 Monitoring Alarm / Budget → Notifications / Events → Functions,防止恶意访问导致扣费
9 安全・运维 Vault(主密钥 / Secret / CMK)、Instance Principal、访问日志 / Flow Logs / Audit、Connector Hub、只有 Service Gateway 的私有 VM

怎么读

前提知识

假设读者懂基本的网络(CIDR、路由、防火墙)和 Linux。对 AWS 熟悉的话,页面里有对应关系(VCN ≒ VPC 等)。