Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Building Repeatable Infrastructure using Terraform

31 views

Published on

This presentation gives a brief introduction on Terraform

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Building Repeatable Infrastructure using Terraform

  1. 1. Build Repeatable Infrastructure usingTerraform Jeeva S. Chelladhurai Founder, Comorin Consulting Services https://www.linkedin.com/in/jeevachelladhurai/
  2. 2. IT.then ■ Manual ■ Downtime ■ People Dependent ■ Misconfiguration ■ Not Repeatable
  3. 3. IT.now ■ Automated ■ Version Controlled ■ CI/CD ■ Infrastructure as Code ■ Repeatable
  4. 4. ■ Why – Declarative – Provider-agnostic – Codify the Infrastructure (IaC) – Plan before execute – Resource Graph – Change Automation ■ What – Open Source – Started in 2014 – Written in Go – Pluggable
  5. 5. ARCHITECTURE
  6. 6. ARCHITECTURE • Read configuration • Build dependency graph • https://github.com/hashicorp/terraform
  7. 7. ARCHITECTURE • External Static binaries • RPC -> Between Core and Plugin • Provider comes as plugins • Implements Provider’s CRUD
  8. 8. Install ■ Download appropriate zip from https://www.terraform.io/downloads.html ■ Unzip the downloaded file, move the file terraform to any path of your choice ■ Verify installation by launching terraform from a terminal
  9. 9. TerraformConfiguration ■ Terraform Format or JSON – HCL – Hashicorp Configuration Language (recommended) – Extension .tf – .tf.json for JSON (only if produced by machines) ■ Text file, can be version controlled ■ Human readable format ■ Describes the Infrastructure ■ Declarative
  10. 10. Resource Configuration
  11. 11. Provider Configuration ■ Manage the life-cycle of resources (CRUD) ■ Provider configuration – Keys / Password – Endpoint address ■ Resources are prefixed with providers – aws_instance, vsphere_virtual_machine ■ Initialize to download provider plugging provider "aws" { access_key = “xxxx" secret_key = “zzzzz" region = "us-east-1" }
  12. 12. Output Configuration ■ Response values to be highlighted to the user
  13. 13. Configuration resource
  14. 14. HANDS-ON
  15. 15. Thanks Jeeva S. Chelladhurai jeeva@comorin.co Comorin Consulting Service BlockChain, MicroService Architecture, Machine Learning, DevOps, Automation https://www.linkedin.com/in/jeevachelladhurai/

×