Auto-sync: 2026-04-20 00:02
This commit is contained in:
47
wiki/concepts/Terraform.md
Normal file
47
wiki/concepts/Terraform.md
Normal file
@@ -0,0 +1,47 @@
|
||||
---
|
||||
id: Terraform
|
||||
title: "Terraform"
|
||||
type: concept
|
||||
tags:
|
||||
- DevOps
|
||||
- IaC
|
||||
- AWS
|
||||
- Infrastructure
|
||||
last_updated: 2026-04-19
|
||||
---
|
||||
|
||||
## Aliases
|
||||
- Terraform
|
||||
- IaC (Infrastructure as Code)
|
||||
|
||||
## Summary
|
||||
- **定义**:基础设施即代码工具,通过声明式配置定义云资源
|
||||
- **用途**:跨云平台(AWS、Azure、GCP)管理基础设施
|
||||
- **云迁移价值**:实现基础设施版本控制、可重复部署和环境一致性
|
||||
|
||||
## Key Details
|
||||
- **核心概念**:
|
||||
- Provider:云平台连接器(aws、azurerm 等)
|
||||
- Resource:基础设施资源定义
|
||||
- Data Source:只读数据查询
|
||||
- Variable:输入变量
|
||||
- Output:输出值
|
||||
- Module:可复用配置单元
|
||||
- **工作流程**:
|
||||
- init:初始化 provider 和 backend
|
||||
- plan:预览变更
|
||||
- apply:执行变更
|
||||
- destroy:销毁资源
|
||||
- **状态管理**:
|
||||
- 本地状态或远程状态(S3、DynamoDB)
|
||||
- 状态锁防止并发冲突
|
||||
|
||||
## Terraform vs Terragrunt
|
||||
- **Terraform**:底层 IaC 工具
|
||||
- **Terragrunt**:Terraform 包装器,提供模块变量共享、多环境管理、远程状态配置
|
||||
|
||||
## Connections
|
||||
- [[TerraGrunt]] ← wraps ← [[Terraform]]
|
||||
- [[Service-Catalog]] ← uses ← [[Terraform]]
|
||||
- [[AWS]] ← managed_by ← [[Terraform]]
|
||||
- [[Module]] ← implemented_by ← [[Terraform]]
|
||||
Reference in New Issue
Block a user