用IaC入门笔记:尝试使用Terraform(导出Lambda函数配置)

首先

由于在座学过程中没有实际经验来进行CloudFormation的模板化,所以我只做到了将现有资源模板化这一步,这只是一篇类似于“试试看!”的笔记。

为了学习与各种知名软件相关的Terraform,我将开始接触相关的软件。

部署:Terraform和Terraformer

地球改造者的官方网站

 

image.png

1. 安装terraform。
2. 获取terraformer的Exe文件。
3. 在环境变量中添加路径。

然而,这是官方网站上列出的步骤。

设置:下载Terraform

 

image.png

可以根据不同的平台,在“Windows”选项卡中进行下载。

只需解压缩Zip文件,没有安装程序等工具,便会出现Exe文件,然后将其添加到环境变量的路径中。

安装:下载Terraformer

 

image.png

他们为每个云平台都提供了不同的Exe。

请确认环境变量中的路径是否设定正确。

terraform -v
terraformer --version
image.png

在执行terraform init之前进行预备工作

提供商版本确认

由于Terraform是通过下载和使用额外的Provider插件来实现的,因此会检查当前版本。(检查AWS插件的版本)

参考了这篇文章以后,我从中得到了非常宝贵的参考。

 

image.png

创建用于初始化的JSON文件(main.tf)。

terraform {
  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = "~> 5.4.0"
    }
  }

  required_version = "1.5.1"
}

provider "aws" {
  region  = "ap-northeast-1"
}

我们在之前的部分确认了

    • Teraformのバージョン

 

    • Providerのバージョン

 

    は、セットアップ時のバージョンを確認して変更する。

执行初始化

将main.tf文件放在当前执行目录中(在执行环境的Work目录下保存main.tf文件),然后执行命令。

terraform init
image.png

公式文件

 

image.png

我想要的资源是这附近的。

为政策做好准备

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "lambda:List*",
                "lambda:Get*"
            ],
            "Resource": "*"
        }
    ]
}

我将尝试将只读策略分配给 Lambda 的访问密钥并执行。

出口

terraformer import aws --resources=lambda --regions=ap-northeast-1
image.png

在工作目录下生成了一个名为generated-aws-lambda的文件夹,并在其下创建了一系列的tf文件。

请提供更多的上下文,以便我可以准确地回答您的问题。

 

如果您有AWS相关的咨询或疑问,请随时联系我们。

我们提供AWS的应用方法、解决问题的咨询,并随时接受工作委托。

 

广告
将在 10 秒后关闭
bannerAds