联系我们

课程大纲

基础设施即代码的主权

  • 了解云控制台和 SaaS IaC 的风险,包括供应商锁定和审计缺口。
  • 深入探讨 Terraform 架构:核心组件、提供程序、状态管理以及 plan/apply 工作流。
  • 对比分析 Terraform 与 Pulumi、Ansible 和 CloudFormation 等替代方案。

配置语言和提供程序

  • 掌握 HCL 语法:定义资源、数据源、变量和输出。
  • 配置本地提供程序:Proxmox、libvirt、vSphere 和 PowerDNS。
  • 探索社区提供程序以及自定义提供程序开发的基础知识。
  • 理解资源依赖及其背后的图论。

状态管理

  • 评估本地与远程状态存储的安全影响。
  • 使用 PostgreSQL、S3 兼容存储(MinIO)、Gitea 和 etcd 设置自托管后端。
  • 实施状态锁定、静态加密和稳健的备份策略。
  • 处理状态迁移和检测配置漂移。

模块和工作区

  • 使用输入、输出和版本控制最佳实践来构建模块。
  • 使用 Git 标签构建私有模块注册表。
  • 通过工作区确保开发、预发布和生产环境的隔离。
  • 利用自托管的 Terraform Cloud 替代方案,如 Atlantis 或 Spacelift。

配置和生命周期

  • 集成 cloud-init 和 PXE 用于裸机配置。
  • 使用配置器:local-exec、remote-exec 和文件传输。
  • 利用 null 资源和触发器实现自定义自动化工作流。
  • 管理资源销毁、规划和污染,确保安全回滚。

安全与合规

  • 强制执行变量验证并适当标记敏感数据。
  • 使用 Sentinel 和 OPA 替代方案,为本地环境实施策略即代码。
  • 建立稳健的审计日志和计划文件审查流程。

CI/CD 集成

  • 在 GitHub Actions 或 Woodpecker CI 中自动化 plan 和 apply 工作流。
  • 在预提交钩子中集成 terraform fmtvalidate 和代码检查工具。
  • 设置成本估算和预算护栏。
  • 制定全面的回滚策略和状态恢复程序。

要求

  • 具备基础设施即代码和云计算基础的中级理解。
  • 具备 JSON、HCL(HashiCorp 配置语言)和版本控制系统的实际经验。
  • 熟悉 Proxmox 和 VMware 等本地虚拟化平台。

目标学员

  • 负责配置裸机服务器和私有云资源的基础设施工程师。
  • 通过声明式配置管理本地资源的 DevOps 团队。
  • 希望避免依赖云控制平面管理基础设施状态的组织。
 14 小时

客户评论 (1)

即将举行的公开课程

课程分类