【Terraform学习】Terraform-AWS部署快速入门(快速入门)_aws云,terraform部署(3)

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • vim main.tf
  • 粘贴下面的配置,然后保存文件
terraform {
  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = "~> 3.0"
    }
  }
}

provider "aws" {
  region  = "us-east-1"
}

resource "aws_instance" "ec2test" {
  ami           = "ami-0022f774911c1d690"
  instance_type = "t2.micro"

  tags = {
    Name = "ec2test"
  }
}
  • 注意:此配置中使用的 AMI ID 特定于us-east-1区域
  • 这里提一下terraform连接aws的认证问题:
    • 第一种方式就是在provider下加aws的key id和secret,字段为client_id/client_secret,一般都会避免这种硬编码的方式,采取变量形式。
    • 第二种方式:就是在terraform机器上声明全局变量
  • export ARM_SUBSCRIPTION_ID=“00000000-0000-0000-0000-000000000000”
    export ARM_TENANT_ID=“00000000-0000-0000-0000-000000000000”
    export ARM_CLIENT_ID=“00000000-0000-0000-0000-000000000000”
    export ARM_CLIENT_SECRET=“00000000-0000-0000-0000-000000000000”

export AWS_ACCESS_KEY_ID=“0000000000000”
export AWS_SECRET_ACCESS_KEY=“0000000000000000000000000000000”
export AWS_DEFAULT_REGION=“us-east-1”

初始化目录
  • 创建新配置或从版本控制中出现有新配置时,需要初始化目录

  • 初始化配置目录下载并安装配置中定义的程序

  • 初始化目录

    • terraform init
  • Terraform 会下载程序并将其安装在当前工作目录的隐藏子目录中

格式化和验证配置
  • 建议在所有配置文件中使用一致的格式。下方命令会自动更新当前目录中的配置,以提高可读性和一致性

    • terraform fmt
  • 格式化您的配置。Terraform将打印出它修改的文件的名称(如果有)。在这种情况下,您的配置文件已正确格式化,因此 Terraform 不会返回任何文件名

  • 您还可以使用下方命令确保您的配置在语法上有效且内部一致

    • terraform validate
  • 验证您的配置。上面提供的示例配置有效,因此 Terraform 将返回一条成功消息

创建基础结构
  • 使用命令应用配置。Terraform将打印类似于下面显示的输出

    • terraform apply

显示的输出

  • Terraform现在将暂停并等待您的批准,然后再继续如果任何内容看起来不正确或危险,则可以安全地在此处中止,而无需对基础结构进行任何更改
  • 在这种情况下,该内容是正确的,因此请在确认提示符下键入**yes以继续。执行将需要几分钟时间**,因为 Terraform 会等待 EC2 实例变为可用
  • 您现在已经使用Terraform创建了基础设施!请访问 EC2 控制台并找到您的新 EC2 实例

实例变为可用

检查状态
  • 使用**terraform show**检查当前状态。

检查当前状态

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

//bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 13
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用go-zero和Terraform实现自动化平台部署的项目,可以分为以下几个步骤: 1. 安装go-zero和Terraform 在开始之前,您需要确保已经安装了go-zero和Terraform。您可以从官方网站下载和安装它们。 2. 创建go-zero项目 使用goctl命令创建一个新的go-zero项目: ``` goctl api new your_project ``` 这将在当前目录中创建一个新的go-zero项目。 3. 编写go-zero服务代码 在项目目录中,您可以使用goctl命令来创建一个新的服务: ``` goctl api add -plugin tf your_service ``` 这将在services目录中创建一个新的服务,该服务将使用Terraform插件。 现在,您可以在该服务中编写自己的业务逻辑代码。 4. 编写Terraform代码 在该服务的tf目录中,您可以编写Terraform代码来定义您的基础设施。 例如,您可以使用Terraform代码来定义一个新的服务器实例: ``` resource "aws_instance" "example" { ami = "ami-0c55b159cbfafe1f0" instance_type = "t2.micro" tags = { Name = "example-instance" } } ``` 5. 编写自动化脚本 最后,您可以编写一个自动化脚本来自动化部署您的服务和基础设施。 例如,您可以使用bash脚本来自动化部署: ``` #!/bin/bash # 编译服务 go build -o your_service # 初始化Terraform terraform init # 应用Terraform配置 terraform apply -auto-approve ``` 这将自动编译您的服务并应用您的Terraform配置来创建您的基础设施。 总之,使用go-zero和Terraform实现自动化平台部署的项目可以简化部署流程并提高效率。但是,在使用自动化工具之前,您需要了解基础设施和自动化工具的工作原理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值