Setup cross-account Amazon Elastic Container Registry (ECR) access using Terraform and GitHub Actions

Amazon Elastic Container Registry (ECR) is a fully managed Docker container registry that allows developers to store container images securely. It does so by storing them in an ECR repository, a logical separation for storing, organizing, and versioning the Docker images inside an ECR repository. In a typical containerized application CI/CD pipeline, the Continuous Integration … Continue reading Setup cross-account Amazon Elastic Container Registry (ECR) access using Terraform and GitHub Actions

Securely Connect an AWS Lambda to an Amazon VPC Using Terraform

Amazon Virtual Private Cloud (VPC) is a service that allows cloud engineering teams to create a private network within the Amazon Web Services (AWS) cloud. It enables them to define a virtual network environment, including IP address ranges, subnets, and route tables while providing control over network configuration and security. AWS Lambda is a serverless … Continue reading Securely Connect an AWS Lambda to an Amazon VPC Using Terraform

Create VPC Flow logs to publish to Amazon CloudWatch Logs using Terraform

VPC Flow Logs is a feature in Amazon Web Services (AWS) that enables capturing information about IP traffic going to and from network interfaces in the Virtual Private Cloud (VPC). These logs provide detailed visibility into network traffic, helping to monitor, troubleshoot, and analyze traffic patterns, security issues, and performance within the VPC. The logs … Continue reading Create VPC Flow logs to publish to Amazon CloudWatch Logs using Terraform

Blue-Green Deployments for Amazon ECS Fargate with CodeDeploy, Terraform, and GitHub Actions

Blue-green deployment is a software release strategy that minimizes downtime and risk by running two identical environments, "blue" and "green." At any given time, one environment (e.g., blue) is live and serving traffic, while the other (green) is idle and used for staging new updates. Once the updates are tested and validated in the green … Continue reading Blue-Green Deployments for Amazon ECS Fargate with CodeDeploy, Terraform, and GitHub Actions

Install and configure CloudWatch Logs agent on Amazon EC2 instance for Linux using user data

Amazon CloudWatch Logs Agent is a software component installed on servers that allows Cloud Engineering teams to monitor and collect log files from the servers and applications in real time. It sends log data to Amazon CloudWatch Logs, where they can be analyzed, searched, and visualized, thus making it easier to troubleshoot issues and monitor … Continue reading Install and configure CloudWatch Logs agent on Amazon EC2 instance for Linux using user data

Create AWS Lambda Layer using Docker, Terraform and GitHub Actions

A Lambda layer is a distribution mechanism for libraries, custom runtimes, or other dependencies required in the AWS Lambda functions. Cloud engineers can manage and reuse these libraries and dependencies across multiple functions by packaging them into a layer. By the end of this note, you will learn how to create a Lambda layer for … Continue reading Create AWS Lambda Layer using Docker, Terraform and GitHub Actions

Create Amazon RDS for PostgreSQL DB using Terraform and GitHub Actions

In this note, I discuss creating an Amazon RDS for PostgreSQL DB using Terraform and securely automating the provisioning process using GitHub Actions. By the end of this note, you will learn about the underlying architectural dependencies and specific properties needed to create a secure RDS for PostgreSQL DB using Terraform. Per AWS-Docs, Amazon Relational … Continue reading Create Amazon RDS for PostgreSQL DB using Terraform and GitHub Actions

Access Amazon ElastiCache for Memcached from an Amazon EC2 instance using Python

This note is the second part of my notes on Amazon ElastiCache for Memcached. In the first note, I demonstrated how to create an Amazon ElastiCache for Memcached using Terraform. In this note, I list the steps to create the additional infrastructure and access the Memcached cluster using Python. To accomplish the use-case, I'll use … Continue reading Access Amazon ElastiCache for Memcached from an Amazon EC2 instance using Python

Create Amazon ElastiCache for Memcached using Terraform and GitHub Actions

Caches store frequently accessed data in memory, which is accessible much faster than disk-based storage or even a database. This capability reduces data retrieval latency and improves the application response times. Amazon ElastiCache for Memcached is a fully managed caching service, which means AWS handles maintenance, patching, backups, and monitoring. In this note, I demonstrate … Continue reading Create Amazon ElastiCache for Memcached using Terraform and GitHub Actions

Secure RDP Access to Amazon EC2 for Windows: Leveraging Fleet Manager and Session Manager

Fleet Manager is a service AWS Systems Manager provides to securely manage Amazon EC2 instances at scale. Cloud engineers can log in via remote desktop (RDP) to Amazon EC2 instances for Windows using Fleet Manager to perform troubleshooting or management tasks. Previously, a set of configurations were required to access an Amazon EC2 instance for … Continue reading Secure RDP Access to Amazon EC2 for Windows: Leveraging Fleet Manager and Session Manager