iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 13
0
Cloud Native

AWS高手同事離職後不止30天系列 第 13

IT基礎架構 建立 | 異動 | 版本控制 工具 > Terraform IV

四、Backends

"backend"就是Terraform決定狀態檔(state)如何載入及運作。這個抽象化機制。讓狀態檔可以存放在「遠端」(及遠端操作等)。
其實,Terraform預設本來就是"本地端"backend。示意圖如下:
Imgur
接下來我們就根據上面的圖,來「完成」backend的設定

  • AWS設定:

    • 建立S3 bucket
      Terraform可以支援多種Backend Types(Standard | Enhanced),小編當然是用S3(Standard )。
      登入你的AWS帳號後 >> 點上方的「Services」 >> 搜尋S3 >> 前往S3 Console >> Create Bucket

      輸入BucketName
      輸入Region

      剩下都選「下一步」即可。
      Imgur

    • 設定S3權限to IAM User
      Imgur
      Imgur

      請參考官網給的權限

      Imgur
      Imgur
      Imgur

  • 設定backend Config
    這邊S3 region就是上面在建S3 Bucket時下拉選單的「Asia Pacific (Tokyo)」 >> region = "ap-northeast-1"
    可參考AWS文件 > Available Regions

      provider "aws" {
        region     = "ap-northeast-1"
      }
    
      terraform {
        backend "s3" {
          bucket = "bright-terraform-backend"
          key    = "terraform.tfstate"
          region = "ap-northeast-1"
        }
      }
    
      resource "aws_instance" "example" {
        ami           = "ami-0689a2637ab83e607"
        instance_type = "t2.micro"
      }
    
  • 執行初始化:terraform init
    什麼時候需要執行Backend初始化
    Imgur
    PS:各位邦友可以看一下工作目錄下的terraform.tfstate內容會被清空,會移轉到S3 bucket中。
    這時候就大公告成了…


待續…


上一篇
IT基礎架構 建立 | 異動 | 版本控制 工具 > Terraform III
下一篇
Packer | Ansible | Terraform > 小結
系列文
AWS高手同事離職後不止30天30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言