Terraform 0.11.x --> 0.12.x

Anyone in the SRE/DevOps world is likely at least aware of Terraform, if not actively using it. While Pulumi’s ability to write IaC in Python seems lovely to me, my company uses Terraform, so HCL it is. If you aren’t familiar, I’ll give a brief overview. Terraform is an IaC (see link above) tool. You know how installing an OS from scratch requires human input? Everything from the partitioning scheme to what services to launch requires configuration. What if you only had to write that down once, and then it could be replicated? What I’m vaguely describing is actually more of a mix of (sticking with Hashicorp) Terraform and Vagrant, but the basic idea is the same: write - in some standardized language - what you want your end result to look like, and it can then be applied over and over achieve that result. This is called declarative programming, and it’s utterly different from what most people are used to writing. Anyway, back to the topic. ...

2020-08-04 · 9 min · Stephan Garland

But I thought Docker fixed dependency hell...

For a school project, I had to install mongoDB. OK, no big deal, docker pull mongo. Since I run a home server, and the purpose of this mongo installation was to create an app that uses it, I figured installing it there and making it available to the rest of my group would be beneficial/helpful. Hmm, might want to also install some kind of GUI management tool - nosqlclient looks like it’ll work. It’s also containerized, so even better. ...

2019-08-27 · 4 min · Stephan Garland

New Environment Setup

UPDATE: See the end of this post for a discussion on new revisions. Every Professional Computer Toucher has a just-so way they want their environment. When I was but a wee lad, that environment consisted of Windows XP with various arcane registry tweaks applied (I vaguely recall changing my TCP congestion control algorithm to Westwood solely because of Red Alert 2), and Notepad. Things improve with age. My current environment is a non-Retina Macbook Air, which suits me just fine. *nix OS, with homebrew filling in the gaps. I use Atom (once you get past the abysmal load time, it’s basically Sublime Text), and iTerm2 with zsh. You may note in a previous post that I extolled the virtues of fish. Well, I got tired of its lack of POSIX compatibility, and having to rewrite every script I downloaded. I toyed with the idea of writing a fish-to-zsh transpiler, but decided the better option was to make zsh like fish. ...

2019-08-03 · 6 min · Stephan Garland

Server Healthy Check

This will be quite short, but I wanted to put some new content out there. Healthy checks are a vital part of any organization, be it your homelab, a small office network, or a datacenter. Knowing the status (availability, load, temperature, etc.) of a server is critical in not only being aware of its health, but also of the potential need to scale. For my home server use, the only thing I’m really concerned with is availability, mainly because my toddler delights in pushing the power button. Sadly, my version of iDRAC doesn’t allow the button to be remapped. I could disconnect it, but that leads to annoyances when actually having to use the button, so… ...

2019-07-27 · 2 min · Stephan Garland

Adventures With 811

For those of you unfamiliar with 811, it’s a public service that attempts to prevent people from hitting buried utilities. Some utilities, like internet (at least on the to-the-home branches) are frequently trenched minimally at best, and with little to no protection. Electrical is usually adequately buried, but a. you never know b. a big project like adding a pool, a deck, etc. will easily surpass the required depth for any utility. If you, the hapless homeowner, penetrate one of these utilities, you’re probably on the hook for the cost of repairs, not to mention the ire of your neighbors, and of course, the threat of death (from the utility line, not your neighbors - hopefully). ...

2019-05-20 · 8 min · Stephan Garland