AWS VPN Solutions with StrongSWAN


In this article, I’ll discuss how to connect two or more VPCs which are in different AWS regions. Using static routing, routes cannot be re-advertised and as such it’s not possible to write routing tables that allow a packet to traverse from one VPC to another via an intermediary VPC, where all VPCs are connected by IPSec tunnels. Because of this limitation, if you want complete connectivity between all peered regions, there must exist an IPSec tunnel between each and every region. Of course, if you want to join VPCs within the same region, you can use the recently released VPC Peering feature. Pay particular attention to the documentation about unsupported configurations.

Continue reading »

Restoring a MySQL Dump to RDS

I’ve spent some of today migrating a MySQL database instance into RDS from another RDS instance in a separate AWS account as part of a larger piece of work. However, there were a few gotchas that caught me out, so it’s worth keeping the following in mind if you’re having issues.

Continue reading »

2013 A Year In Review

Happy New Year everyone! It’s that time of the year again where I look back and reflect on the year gone by. The first thing that occurs to me is how empty my blog has been this year! Definitely something I plan to address in 2014.

Continue reading »

Using New And Old AWS CLI Tools Together

I’ve been using the newer AWS CLI tools for quite a while now, and while they are for the most part a vast improvement over the older Java tools, there are times where the legacy versions come in handy. I’d therefore like to be able to use both the new and old tools without too much effort. Both new and old tools depend upon certain environment variables being present, and these environment variables will take priority over any profiles defined for the newer tools.

Continue reading »

Using Test Kitchen

I’ve been keenly watching the evolution of the test-kitchen project and I’ve recently spent some time using it with the minitest busser to validate that my cookbooks do what I intended them to do. Remember, Chef is already well covered by tests to ensure that e.g. its various resources do what they say they’ll do. With that in mind, the key to using test-kitchen is to write tests that validate your intentions, rather than testing that Chef is doing what it’s been asked. This post will offer a brief introduction to test-kitchen, with a focus on writing tests using the Minitest Busser. I’d also like to extend a big thank you to Fletcher Nichol and the rest of the Opscode team and contributors who are making test-kitchen and related tools such exciting projects to follow.

Continue reading »


If you want to get in touch, you can send an email to my-first-name [at] this site.

AWS Certified Solutions Architect AWS Certified SysOps Administrator
FreeAgent Small Business Online Accounting