A highly available application has a higher chance of attracting customers because they are assured of consistency in service. Load balancing is a cost-effective way to increase an application's availability. In this note, I describe the steps to add an application load balancer to three Amazon EC2 instances hosted in three public subnets in different … Continue reading Add an application load balancer to Amazon EC2 using Terraform
Tag: Terraform
Create a web-server on Amazon EC2 instance using Terraform and user data
In this note, I detail all the steps required to create a bare-bone web server on Amazon EC2. I discuss creating the Amazon Virtual Private Cloud, subnets, internet gateway, security group, and Amazon EC2 instances to finally automate the process via Terraform and user data. Note: I did not include the concepts of load balancing, … Continue reading Create a web-server on Amazon EC2 instance using Terraform and user data
Download Amazon S3 bucket into an Amazon EC2 instance in 5 steps using user data and Terraform
I required a few files and folders on an Amazon EC2 instance as part of the provisioning process. So, the objective was to upload these files and folders into an Amazon S3 bucket and download them from the Amazon EC2 instance with the assistance of the user data script and Terraform. Note: As a reader … Continue reading Download Amazon S3 bucket into an Amazon EC2 instance in 5 steps using user data and Terraform
Install AWS CLI on a Windows Amazon EC2 instance using Terraform and user data
In the last post, I discussed the steps involved in installing AWS.Tools module for PowerShell on Amazon EC2 using user data and Terraform. This post lists the steps to install the AWS CLI on an Windows Amazon EC2 instance. I used Amazon EC2 user data and Terraform to automate AWS CLI installation as part of … Continue reading Install AWS CLI on a Windows Amazon EC2 instance using Terraform and user data
Install AWS.Tools module for PowerShell on Amazon EC2 using user data and Terraform
I was under the impression that all Amazon EC2 instances have the latest version of AWS CLI installed. So, I was in for a shock when I discovered that is not always the case. However, I was required to use the AWS CLI, and since this was an Amazon EC2 with Windows OS, I proceeded … Continue reading Install AWS.Tools module for PowerShell on Amazon EC2 using user data and Terraform
Manage sensitive variables in Amazon EC2 user data with Terraform and PowerShell
If you have worked with Amazon EC2 user data, you'd have noticed a shortcoming in the approach -the inability to pass command-line arguments to the user data script at run time. Let me explain why I believe that to be a problem. User data is a capability associated with an Amazon EC2 instance as part … Continue reading Manage sensitive variables in Amazon EC2 user data with Terraform and PowerShell
Attach IAM role to Amazon EC2 instance using Terraform
I have a reasonable level of understanding of the relationship between AWS Identity and Access Management (IAM) policy, role, user, and group. I have also implemented the concept of assumed-role and the trusted and trusting account association. You can read more about that at -Creating IAM assume-role relationship between two AWS accounts. So, when I … Continue reading Attach IAM role to Amazon EC2 instance using Terraform
Working with Amazon EC2 user data and Terraform
User data is a feature that allows customization of Amazon Elastic Compute Cloud (virtual machine) when it is created and (if desired) with each restart after being provisioned.As we all know, Amazon EC2 instance (virtual machine) is the legacy approach to hosting applications. Last year, I attended a webinar sponsored by AWS where the presenter, … Continue reading Working with Amazon EC2 user data and Terraform
Create Amazon EC2 using Terraform
One of the first components I created on the AWS cloud was an Amazon Elastic Compute Cloud (Amazon EC2) instance by watching hands-on tutorials. Little did I know about the infrastructure bits that went behind that. In this note, I list the AWS infrastructure and the configurations I created to host an Amazon EC2 instance … Continue reading Create Amazon EC2 using Terraform
Strengthen security posture with Terraform and AWS IAM to manage AWS cloud resources
Terraform uses AWS IAM user credentials to manage resources in the AWS cloud. It does so by utilizing the secret key and access key of the IAM user. Hence, Terraform's ability to manage (create/update/delete) resources depend on the permission associated with the AWS IAM user. When I started working with Terraform to manage resources in … Continue reading Strengthen security posture with Terraform and AWS IAM to manage AWS cloud resources









