Terraform – AWS Assign Pre-existing Elastic IP Address to an EC2 Instance

Elastic IP Addresses (EIP) are great as they provide you with a static IP address which you can use for an endpoint to your application, but when you are automating things with Terraform, you don’t want it to be continually re-created or that IP address will change, and if you have DNS records pointing at […]

More...

AWS Transit Gateway with VPN to On-Premise Palo Alto Firewall

The AWS Transit Gateway can be used to join the networking of many VPCs (in the same or different AWS Accounts) within the same region together to facilitate communication, it may also be used in conjunction with DX (Direct Connect) or Site-to-Site VPNs to provide connectivity to other Cloud Platforms but additionally to on-premise networks […]

More...

DNSSEC Explained (with AWS Route53 Hosted Zone Example)

DNS name resolution is essential to modern connectivity. The ability for hosts to be able to quickly and reliably resolve DNS domain names (e.g. www.google.com) to their IP address equivalents (e.g. 216.58.204.68 or 2a00:1450:4009:827::2004) to connect and consume services ensures consistent and performant network flows. Due to the essential nature of DNS, DNSSEC is an addition […]

More...

AWS Route53 – Creating and Using a Hosted Zone

AWS Route53 provides DNS Resolution (and DNS Registrar) services. You can use Route53 to register a domain, host the zone file and provide DNS resolution, alternatively, you can have the domain registered elsewhere, but then use Route53 to host the zone file and provide DNS resolution. There are some different options here, Route53 ties nicely […]

More...

Storing Terraform State on AWS S3 Bucket (including AWS DynamoDB for State Locking)

Building upon the example Simple Terraform Docker Example (Ubuntu Linux), we’ll store our Terraform State in AWS S3 Bucket, rather than just locally on the machine running Docker. Yes, I know its not a very useful example, but it simply illustrates the mechanism and how it can be used for more useful and complex deployments. Storing […]

More...