文章目录

  • 前言
  • 一、Terraform是什么?
  • 二、使用步骤
    • 1.主配置文件main.tf
    • 2.定义变量文件variables.tf
    • 3.定义不同环境下的变量文件 .tfvars
    • 4.执行命令,指定环境
    • 5.目录层级
  • 总结

前言

主要针对terraform使用中如何使用通用模板,对于不同环境下进行变量传输替换,从而部署基础组件。


一、Terraform是什么?

示例:terraform是基础架构自动化的编排工具,以下示例用于在aws上不同环境上创建资源的情况。
官网地址:https://www.terraform.io/

二、使用步骤

提示:变量使用官网地址:https://www.terraform.io/language/values/variables

1.主配置文件main.tf

代码如下(示例):

#######jump subnet a
resource "aws_subnet" "private_subnet_jumpbox_a" {vpc_id                  = var.vpc_idcidr_block              = var.private_sub_cidr_block_jumpbox_aavailability_zone       = "ap-southeast-1a"tags                            = {"Name" = "${var.env}-jumpbox-private-apse1a"}tags_all                        = {"Name" = "${var.env}-jumpbox-private-apse1a"}
}

2.定义变量文件variables.tf

代码如下(示例):

variable "vpc_id" {default = ""
}variable "env" {default = ""
}variable "private_sub_cidr_block_jumpbox_a" {default = ""
}

3.定义不同环境下的变量文件 .tfvars

dev环境下变量如下(示例):

env = "dev"
vpc_id = "vpc-xxxxxxx"
private_sub_cidr_block_jumpbox_a = "10.14.27.0/24"

prd环境下变量如下(示例):

env = "prd"
vpc_id = "vpc-xxxxxxx"
private_sub_cidr_block_jumpbox_a = "10.24.27.0/24"

4.执行命令,指定环境

提示:以下执行的是创建dev环境资源

terraform apply -var-file=dev/test.tfvars

5.目录层级

.
├── dev
│   └── test.tfvars
├── main.tf
├── prd
│   └── test.tfvars
└── variables.tf

总结

例如:适用于多套环境使用同一个模板,传递不同的环境变量参数。

Terraform变量使用相关推荐

  1. 网易云terraform实践

    此文已由作者王慎为授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 一.terraform介绍 随着应用上云的常态化,资源栈动态管理的需求对用户也变得更加急切.资源编排(Res ...

  2. terraform_有关使用terraform优化云成本的权威指南

    terraform This article was cross-published on the HashiCorp Blog. 本文是在HashiCorp博客上交叉发布的. The Problem ...

  3. terraform 腾讯云_使用Terraform优化云成本的权威指南

    terraform 腾讯云 The Problem - An Engineers New Role Cloud "Financial Controller" 问题-工程师的新角色云 ...

  4. 如何在DigitalOcean中使用Terraform

    介绍 (Introduction) Terraform is a tool for building and managing infrastructure in an organized way. ...

  5. 使用Domain-Protect保护你的网站抵御子域名接管攻击

    关于Domain-Protect Domain-Protect是一款功能强大的子域名安全保护工具,可以帮助广大研究人员更好地保护自己的网站抵御子域名接管攻击.该工具支持实现以下两个目标: 扫描一个AW ...

  6. aws eks_在生产中配置和使用AWS EKS

    aws eks 到现在,我们已经完成了向Amazon EKS ( 工作地点)的迁移,并且集群已经投入生产. 过去,我已经写了一些要点的简短摘要,您可以在这里找到. 当系统正在处理实际流量时,我有了一些 ...

  7. 在生产中配置和使用AWS EKS

    到现在,我们已经完成了向Amazon EKS ( 工作地点)的迁移,并且集群已经投入生产. 过去,我已经写了一些要点的简短摘要,您可以在这里找到. 当系统正在为实际流量提供服务时,我有了一些额外的信心 ...

  8. aws 短信验证_在AWS Kubernetes上进行抛光的rshiny身份验证

    aws 短信验证 If you're looking for a hassle free way to add authentication to your RShiny Apps you shoul ...

  9. 民用飞机着陆阶段着陆方法_着陆区第二部分的解剖

    民用飞机着陆阶段着陆方法 In the first part of this series, we explored the concept of a cloud landing zone and d ...

最新文章

  1. GreenDao存储自定义类型对象解决方案(转)
  2. Python代码规范之简明概述
  3. 甜蜜暴击情人节海报PSD分层模板|让人眼前一亮
  4. 使用.NET Core创建服务监视器应用程序
  5. 面试必备之为什么重写equals必须重写hashcode
  6. java多线程 线程安全_Java中的线程安全
  7. Web调取摄像头拍照
  8. java 并发 处理机制 和 cas 理解
  9. 《CMOS集成电路后端设计与实战》——第2章 集成电路后端设计方法
  10. 2. mirth connect探索------------ cs模式客户端登录
  11. ActionForm工作原理
  12. 输入一个二阶矩阵并计算主对角线元素的和 C语言
  13. SIM800C实现GPRS上网的AT指令
  14. Spark jars依赖问题
  15. 滴滴夜莺发布v3.3.0版本
  16. JVM 重点知识点总结
  17. 第三届全国中医药院校大学生程序设计竞赛(部分题解)更新中~
  18. python+selenium打印当前页面的titl和url
  19. 【软件设计师】知识点与试题
  20. 解决夜神模拟器连接eclipse的问题

热门文章

  1. 顺序表实现图书管理系统增删改查
  2. 【 python手势识别项目 】百度云计算实现手势识别
  3. 【故障诊断】用于轴承故障诊断的性能增强时变形态滤波方法及用于轴承断层特征提取的增强数学形态算子研究(Matlab代码实现)
  4. rest template
  5. 计算机一级photoshop知识,2017年9月计算机一级Photoshop知识巩固题
  6. [翻译]How To Make the Right Choice -- 如何做个正确的决定
  7. 怎样设置网页纵向滚动 css,CSS 怎么设置网页下拉条 (滚动条) 样式?
  8. 2016年年终CSDN博客总结
  9. 基于Spring Cloud的全自动化微信公众号消息采集系统
  10. 鸿蒙天钟壁纸,抖音最火的罗盘时钟壁纸,赶紧来学!