暂无商品咨询信息 [发表商品咨询]
在当今企业的IT版图中,云服务和SaaS软件无处不在,这要求我们从手动配置服务转向以代码化为核心的结构化方法。Terraform 提供了强大的工具,能够在数千个不同的云服务提供商和SaaS平台上统一管理整个IT生命周期。本书的主要内容有:如何结合Terraform与版本控制系统。Terraform管理的基础设施的验证与测试方法。导入既有资源的方法。将基础设施服务转化为可复用组件。Terraform与其他HashiCorp工具的集成。容器化工作负载的部署。
Kerim Satirli现任HashiCorp 高级开发者布道师,专注于可持续的基础设施与编排工作流。Taylor Dolezal现任云原生计算基金会(CNCF)生态系统负责人,致力于推动云原生技术的创新与协作。
目录
前言 1
第1 章 Terraform 快速上手 .9
1.1 何时使用Terraform .10
1.2 何时不宜使用Terraform 11
1.3 Terraform 的安装与配置 12
1.4 理解Terraform provider.16
1.5 理解Terraform 模块 19
1.6 使用terraform console 修改Terraform 状态 20
1.7 使用HashiCorp Cloud Platform Terraform 21
1.8 在Visual Studio Code 中使用Terraform 23
1.9 管理Terraform provider 的版本约束 25
1.10 部署受版本控制的Terraform 代码仓库的策略 27
1.11 使用Terraform 部署Docker 容器 29
1.12 从0.x 升级到1.x 及以上版本的Terraform 30
1.13 使用Terraform 变量 .32
1.14 一致代码带来的一致体验33
第2 章 Terraform 基础 37
2.1 格式化与验证Terraform 代码 37
2.2 使用terraform console 进行快速实验 38
2.3 使用TFLint 提升代码质量 39
2.4 使用TFSec 提升代码质量 41
2.5 使用前置条件与后置条件验证代码.42
2.6 使用开放策略代理验证代码 44
2.7 使用 terraform-docs 编写代码文档 46
2.8 使用 GitHub Actions 自动化代码校验 49
2.9 使用Dependabot 自动更新provider 版本 51
2.10 使用GitHub Codespaces 与DevContainers 53
2.11 使用Terraform 限制影响范围 .57
第3 章 Terraform 语法模式 61
3.1 使用trimspace() 清理用户输入 .61
3.2 删除前缀和后缀 62
3.3 使用正则表达式 64
3.4 高级字符串处理 66
3.5 使用title()、upper()、lower() 处理区分大小的字符串 .67
3.6 按字母顺序排序列表 69
3.7 根据CIDR 地址块创建子网 71
3.8 与本地文件系统交互 74
3.9 渲染模板76
3.10 验证输入字符串 .78
3.11 使用can 和try 优化数据检索 80
3.12 按序处理输入数据 .84
3.13 为错误输入设计良好的错误消息 87
3.14 跨Terraform 状态使用数据 89
第4 章 Terraform 模块与provider .93
4.1 使用公共模块创建EKS 集群 .94
4.2 使用GitHub Actions 检查Terraform 的代码规范 98
4.3 对Terraform provider 进行身份验证 102
4.4 私有模块的身份验证 104
4.5 创建一个 Terraform 模块 106
4.6 使用Terraform 管理GitHub 机密 .109
4.7 使用Terraform 管理GitHub 仓库 . 111
4.8 使用Consul KV 实现动态配置 114
4.9 基于服务健康状态的provider 配置 117
4.10 使用provider 读取Terraform 状态 .120
4.11 使用多个同类provider .123
第5 章 使用Terraform 管理容器 . 127
5.1 使用本地与远程Docker 镜像 127
5.2 区分集群部署与集群配置 .129
5.3 授权Terraform 执行集群操作 .132
5.4 使用YAML 在Kubernetes 中调度容器 133
5.5 使用HCL 在Kubernetes 中调度容器 135
5.6 使用k2tf 将Kubernetes YAML 转换为HCL 137
5.7 调整Kubernetes 部署的注解 139
5.8 调整Kubernetes Deployment 的配置 141
5.9 使用Terraform 应用Kubernetes NetworkPolicy 143
5.10 使用 Helm 部署容器 147
5.11 使用Helm 为Kubernetes 部署启用监控 149
5.12 在HashiCorp Nomad 中调度容器 153
第6 章 HCP Terraform 与Terraform Enterprise 157
6.1 设置HCP Terraform .158
6.2 集成HCP Terraform 和VCS.163
6.3 使用HCP Terraform 管理Terraform 状态 .165
6.4 结合使用HCP Terraform 与GitHub Actions 167
6.5 实现基于HCP Terraform 的协作式工作流 169
6.6 排查HCP Terraform 和Terraform Enterprise 的故障 .172
6.7 以代码形式实施策略 174
6.8 使用HCP Terraform 管理成本 .177
6.9 利用远程操作进行大规模部署 180
6.10 高级状态管理与恢复 .183
第7 章 在Terraform 中使用与管理机密 187
7.1 在Terraform 中处理敏感数据 .188
7.2 从HashiCorp Vault 中获取“键– 值”对 190
7.3 使用Kubernetes 原生功能管理Kubernetes Secret 对象 192
7.4 使用Vault 和Terraform 管理Kubernetes Secret 对象 195
7.5 将机密存储为环境变量 199
7.6 机密审计与轮换 .201
7.7 使用Terraform 与密码管理器管理机密 .203
7.8 Terraform 机密管理的合规性与治理 205
7.9 使用HashiCorp Vault 管理动态机密 207
7.10 在CI/CD 流水线中安全注入机密210
第8 章 使用Terraform 进行配置管理 . 215
8.1 使用Terraform 编写shell 脚本 216
8.2 使用Terraform 编写Ansible 配置 .217
8.3 使用Consul 键值存储实现动态配置 219
8.4 从HTTP 接口获取并使用数据 222
8.5 在Terraform 中应用条件逻辑 .223
8.6 将现有基础设施导入Terraform .226
8.7 使用Terraform 工作区 228
8.8 使用Terraform 模板 .230
8.9 管理Terraform 资源之间的依赖关系 232
8.10 使用Terraform 实现蓝绿部署 234
第9 章 高级Terraform 技术 237
9.1 使用Terraform 编写配置文件 .238
9.2 编写Cloud-Init 配置 .240
9.3 在CI/CD 流水线中集成Terraform 模块 .242
9.4 Terraform 高级状态管理 .245
9.5 Terraform 与多云策略 .248
9.6 适用于可伸缩架构的Terraform 实践 251
9.7 Terraform 自定义provider 开发 254
9.8 将Terraform 与监控工具集成 .258
9.9 使用Terraform 管理安全性与合规性 263
9.10 Terraform 的高级调试技术 .268
第10 章 真实用例 273
10.1 使用Terraform 工作区管理多个环境 273
10.2 跨区域部署高可用Web 应用 .276
10.3 在AWS EKS 上部署可伸缩的Kubernetes 集群.280
10.4 使用Terraform 实现蓝绿部署 284
10.5 使用Terraform 与AWS RDS 实现自动化数据库迁移 .289
10.6 在AWS Lambda 与API Gateway 上部署无服务器应用 293
10.7 使用IaC 实施GitOps 工作流 297
10.8 使用Terraform 与竞价实例优化成本 301
10.9 使用Terraform 部署多云监控解决方案 304
10.10 使用Terraform 与AWS 实现自动化灾难恢复 308
| 基本信息 | |
|---|---|
| 出版社 | 中国电力出版社 |
| ISBN | 9787523907368 |
| 条码 | 9787523907368 |
| 编者 | [荷兰]克里姆·萨蒂尔利(Kerim Satirli),[美]泰勒·多尔扎尔(Taylor Dolezal) 著 |
| 译者 | |
| 出版年月 | 2026-01-01 00:00:00.0 |
| 开本 | 16开 |
| 装帧 | 平装 |
| 页数 | 313 |
| 字数 | 323000 |
| 版次 | 1 |
| 印次 | 1 |
| 纸张 | |
暂无商品评论信息 [发表商品评论]
暂无商品咨询信息 [发表商品咨询]