Musings on Devops, Systems, and Infrastructure

About this Site

Hi. I'm Erik.

On this blog I write about technical problems I've solved related to managing servers and systems. Most of the content here is related to DevOps and systems administration with some programming mixed in.

I post when I have time, which isn't often, but I do try to keep it somewhat regular. The platform is Astro running on AWS.

Article featured image

Proxying Multiple Endpoints with Apache

I have an AWS ec2 instance running multiple web apps for clients. I don't want to run a separate web server for each one, so I need to figure out a proxy solution where I'm just running a single web server that will forward requests to the individual apps. The diagram after the jump illustrates what I'd like to get to.

Mimicking Puppet's Design in Ansible

For many reasons, I've recently started a migration away from Puppet to Ansible (why could be another blog post by itself). But regardless of the platform, the purpose of a configuration management system remains the same: apply a set of instructions to a host to configure it to a desired state. How these two platforms accomplish this differs in some significant ways.

Save money by shutting down idle AWS ec2 instances (part 1)

The cloud provides a ton of flexibility for configuring dev and test environments, but it comes at a price. Providers make it easy to start services at the click of a button, but remembering to shut them down takes effort. Reducing cloud spend often tops the list of cost saving priorities for an IT organization because cloud resources aren't always used effectively.

Save money by shutting down idle AWS ec2 instances (part 2)

For simplicity, I'm going to show how to automatically shut down a single AWS instance named 'wollaston' (the name comes from a popular Boston city beach). But the method could easily be extended to any number of instances, such as those tagged as being dev or test.

Using git patch in Python

The git module in Python has the ability to show the difference between two commits in Linux patch format, similar to running a 'git diff'. This makes it possible to programmatically check for specific file content differences.

Building with Astro

When I started thinking about doing a blog, I initially thought about using WordPress. I dug around for awhile looking for various WordPress themes and even tried a few, but I found them all to be bloated for what I needed. I'm not trying to sell anyone anything, collect email addresses, display photo galleries, etc., so all this extra functionality would be lost on me.

Welcome

For a very long time, I've been keeping notes of how-to's for various things I've been working on as a form of documentation. Often these are cryptic in nature with just a few descriptive words mixed with lots of commands or code.

Find Me

 

Boston, MA

erik "at" erikpatton.com

About Me

 

I'm an old school sysadmin turned Cloud/DevOps/Platform/SRE/whatever still doing systems work since before the dot com crash. Back then I lived in Silicon Valley but am now in Boston.

I've written a lot of code, mostly in Python and Perl (old school remember), although I'm finding Javascript/Node on Astro.js a fun diversion. I'll never admit to knowing how to debug C pointers for fear of someone asking me to do it.

Currently I'm working on a hybrid AWS Kubernetes cluster using OpenShift. Fun with IAM policies, persistent storage, and the like. Underneath it all though is still a Linux OS that even non-gray beards like me can still tinker with.

I do a bit of consulting and contract work, so if you need help with a project please don't be shy about reaching out.