
Explore Terraform, an open source tool for provisioning infrastructure across cloud providers like GCP and AWS. Learn to use a configuration file that, when applied, creates the intended infrastructure.
Discover the advantages of Terraform: a simple, easy-to-learn tool with global cloud providers, ideal for creating infrastructure, not for configuring software inside virtual machines.
Learn how Terraform uses a single language to create infrastructure across cloud vendors, just by changing the provider and resource configuration, and why it's simpler than native tools.
Explore why terraform beats api or cli usage by preserving state, preventing duplicate resources on repeated runs, demonstrated with a simple VPC example.
Explore the root module as the folder that holds configuration, variables, and outputs. See how main.tf defines the provider and a basic resource, with variable and output blocks explained.
Learn how to run a terraform configuration to create a VPC on AWS by using init, plan, and apply, including provider download and the .terraform directory.
static credentials :
access_key = "AKIATEST4URV"
secret_key = "ABCDkX1uZDAMzyk22BHINEXAMPLE+"
Env Variable :
$env:AWS_SECRET_ACCESS_KEY = "ABCDkX1uZDAMzyk22BHINEXAMPLE+"
$env:AWS_ACCESS_KEY_ID = "AKIATEST4URV"
Configure aws credentials with aws configure by entering the access key, secret key, region, and output format, then verify with aws sts get-caller-identity to confirm provider uses correct credentials.
Learn the heshy configuration language (fcl) with arguments and blocks, and see how provider, variable, resource, data, and output blocks compose a Terraform configuration.
Explore the terraform variable block, including default, type, description, validation, and sensitive attributes, and assign variables via command line or environment variables, with collection types like lists, maps, and sets.
Explore Terraform collection types by creating lists, sets, and maps, comparing list indexing, value searches, and outputs, and learn how quotes affect string values in Terraform.
Explore how to define and use maps in Terraform, starting with a string map, then expanding to any values and specific types like boolean and number, and handling unknown inputs.
Learn to create objects with a defined schema in Terraform and build maps of these objects to store non-primitive values like block and region, then output and verify results.
Learn how to declare and initialize local variables in the main method, assign a value of 100, and output it to verify that the scope remains within the main method.
Create a VPC and a subnet in AWS using Terraform by defining a VPC resource with a cidr block and linking a subnet to that VPC, then apply to provision.
Explain how data blocks and data sources pull existing configuration data, such as a VPC, to provision a virtual machine, and reveal outputs via data attributes.
https://registry.terraform.io/providers/hashicorp/aws/latest/docs
Create two ec2 instances in a default vpc subnet using a single terraform resource block and count, then configure the ami, instance type, and tags to identify the servers.
Create an EC2 instance in a specific subnet by provisioning an elastic network interface linked to that subnet, then launch the instance with an AMI inside the same VPC.
This course teaches you on how to user Terraform along with AWS. This course is for system architects espacially who want to use Terraform to create complex architecture but it can be enjoyed by beginners and folkd with basic understanding of AWS.
This course is for those who have a bit of knowledge of AWS and hence with no knowledge of AWS will find it a bit difficult to grasp the concepts
This course has been curated with a lot of care and deliberation and contains examples that are seen in real software applications .Also all the codebase are provided for in the resource section and please do not hesitate to use them.
Also this course has been shortened to only include information that is important and has been edited to remove all the fluff and unwanted portions .
Also for any doubts and suggestion please do contact me and i will be glad to hear from you .
Also please do not forget to include reviews for my course as it will motivate me to create more content like this to serve you guys better .
Once again i thank you for your patience and i hope you have a fabulous time with the course and i will see you soon
Thanks
Rohit Abraham