Slide 1

Slide 1 text

APC #41 2024.02.02 Taichi Nonoshita @nnstt1 Terraform Cloud 101 Azure

Slide 2

Slide 2 text

SIer → → APC 👦(4y) 👦👦(1y) Azure 9/19 Terraform Associate #apc8a1 #apc8a1

Slide 3

Slide 3 text

Terraform Cloud #apc8a1

Slide 4

Slide 4 text

38% 20% 18% IaC Terraform Terraform IaC Terraform Terraform

Slide 5

Slide 5 text

Terraform Cloud 101 Azure Terraform

Slide 6

Slide 6 text

HashiCorp IaC 2023 BSL Terraform plan/apply

Slide 7

Slide 7 text

Terraform Terraform Terraform O’Reilly Japan, Inc

Slide 8

Slide 8 text

Terraform Terraform plan/apply Azure Blob Storage plan/apply GitHub Actions commit Amazon S3 Amazon DynamoDB

Slide 9

Slide 9 text

Terraform Cloud 101 Azure Terraform Cloud

Slide 10

Slide 10 text

HashiCorp PoC Terraform Terraform AI Terraform Cloud

Slide 11

Slide 11 text

Free 500 Free/Standard Plus Terraform Cloud 2023/5 Terraform Cloud updates plans with an enhanced Free tier and more flexibility

Slide 12

Slide 12 text

mode=”managed” random_id time_sleep Data Source null_resource terraform_data Terraform Cloud

Slide 13

Slide 13 text

Terraform Cloud 101 Azure Terraform Cloud

Slide 14

Slide 14 text

GitHub Azure Terraform Cloud Terraform Cloud main .tf Plan Apply

Slide 15

Slide 15 text

HCP HCP HCP GitHub SSO Organization Terraform Cloud https://app.terraform.io/public/signup/account

Slide 16

Slide 16 text

Workspace Workspace CLI

Slide 17

Slide 17 text

Organization Project Workspace Project Workspace VCS Workspace Workspace Organization / Project / Workspace Organization Project Workspace Project Workspace Workspace

Slide 18

Slide 18 text

Workspace Workflow …

Slide 19

Slide 19 text

Version Control Workflow GitHub Azure DevOps CLI-Driven Workflow terraform API-Driven Workflow Terraform Cloud API Terraform Cloud Workflow Version Control Workflow

Slide 20

Slide 20 text

Plan

Slide 21

Slide 21 text

1. Microsoft Entra ID Terraform Cloud Azure 2. Terraform Cloud ID, ID, ID, etc. ID

Slide 22

Slide 22 text

2 Terraform Cloud Key Value ARM_TENANT_ID Microsoft Entra ID ARM_SUBSCRIPTION_ID ID ARM_CLIENT_ID ID ARM_CLIENT_SECRET

Slide 23

Slide 23 text

Terraform Cloud Dynamic Provider Credentials OIDC Terraform Cloud Terraform Cloud ID Key Value ARM_TENANT_ID Microsoft Entra ID ARM_SUBSCRIPTION_ID ID TFC_AZURE_RUN_CLIENT_ID ID TFC_AZURE_PROVIDER_AUTH true

Slide 24

Slide 24 text

Workspace 10 ID 20 Workspace 2 ID organization::project::workspace::run_phase:plan organization::project::workspace::run_phase:apply Dynamic Provider Credentials

Slide 25

Slide 25 text

Plan

Slide 26

Slide 26 text

Terraform Cloud Workspace main .tf Plan Apply 3 Free/Standard/Plus / ID VCS Workspace Workspace

Slide 27

Slide 27 text

Terraform Cloud 101 Azure Terraform Cloud Free

Slide 28

Slide 28 text

Local Terraform Cloud main .tf Plan Apply dev .tf PR Plan .tf Plan

Slide 29

Slide 29 text

Version Control Workflow CLI-Driven Workflow cloud Plan • terraform plan Terraform Cloud • • terraform apply

Slide 30

Slide 30 text

Workspace Plan Apply Plan & Apply PR Plan

Slide 31

Slide 31 text

Terraform Sentinel Open Policy Agent (OPA) Terraform Registry Sentinel Policy as Code Free https://registry.terraform.io/browse/policies

Slide 32

Slide 32 text

Terraform Sentinel Azure VM, VMSS, App Service Plan, SQL Database, Cosmos DB, Managed Disk, Firewall, etc. Cost Estimation Free

Slide 33

Slide 33 text

Private Registry Free

Slide 34

Slide 34 text

Terraform Cloud 101 Azure Terraform Cloud Plus

Slide 35

Slide 35 text

Local Terraform Cloud main .tf Plan Apply dev .tf .tf Cost Estimation Policy check Terraform Terraform Private Registry

Slide 36

Slide 36 text

IaC IaC Terraform Drift Detection Plus

Slide 37

Slide 37 text

check check Terraform v1.5.0 Plan/Apply Terraform Registry AzureRM check App Service 30 Continuous Validation Plus check precondition postcondition Apply Apply

Slide 38

Slide 38 text

Terraform Cloud Terraform v1.6.0 Free(beta) Free

Slide 39

Slide 39 text

AI (Beta) Plus(beta)

Slide 40

Slide 40 text

HCL Terraform module Workspace No-Code Provisioning Plus .tf Private Registry Workspace .tf Plan/Apply Terraform Terraform

Slide 41

Slide 41 text

Dynamic Provider Credentials No-Code Provisioning Workspace ID Workspace Azure No-Code Provisioning Plus

Slide 42

Slide 42 text

Workspace Apply No-Code Provisioning …… Ephemeral workspace Plus

Slide 43

Slide 43 text

Terraform Cloud 101 Azure

Slide 44

Slide 44 text

Terraform Cloud PoC Terraform Cloud #apc8a1 Terraform Cloud Terraform No More Terraform Cloud Plus

Slide 45

Slide 45 text

Terraform Cloud 101 Azure

Slide 46

Slide 46 text

2024/2/21( ) 15:00-16:00 APC https://www.ap-com.co.jp/seminar/post-10679

Slide 47

Slide 47 text

We are hiring

Slide 48

Slide 48 text

Terraform Cloud 101 Azure