Red Hat Enable Sysadmin

I previously wrote extensively for the Red Hat Enable Sysadmin blog. This page provides links to all of the articles that I wrote for Red Hat.

Base64 encoding: What sysadmins need to know

Aug 10 2022

This article covers the basics of the Base64 encoding format, including both theoretical knowledge and practical examples.

Kubernetes network stack fundamentals: How pods on different nodes communicate

Aug 9 2022

This is the second in a two part series about Kubernetes networking. This article covers how pods communicate across different nodes, specifically when using the Flannel network plugin and a VXLAN overlay.

Kubernetes network stack fundamentals: How containers inside a pod communicate

Aug 8 2022

This is the first in a two part series about Kubernetes networking. This article covers how containers within a pod communicate using the same network namespace.

Test API interactions with Mockoon

Jun 10 2022

This article discusses using Mockoon to test API interactions. Mockoon is a wonderful tool that allows you to quickly build API mocks for testing.

Capture packets in Kubernetes with this open source tool

May 2 2022

This article introduces the ksniff utility for capturing packets within Kubernetes pods.

How to customize your Ansible logs

Apr 13 2022

Customizing Ansible output using callbacks is a very useful skill if you use Ansible regularly. This article discusses the basics of using callbacks.

Rucksack: A Python tool that stores your favorite Linux one-liners

Feb 3 2022

Rucksack is a tool that I developed to store and use shell one-liners. This article is a basic introduction to the tool.

4 skills every sysadmin needs to know in 2022

Jan 31 2022

This is a discussion about skills that I feel will differentiate sysadmins in 2022 and beyond.

Use Ansible tags to save time on playbook runs

Nov 15 2021

This article covers some practical tips for using tags in Ansible playbook runs.

Set up self-healing services with systemd

Oct 4 2021

This article covers automatically handling failure of systemd units.

Set the order of task execution in Ansible with these two keywords

Sep 8 2021

This article covers Ansible’s pre_tasks and post_tasks capabilities.

How to back up your Linux desktop without rsync

Sep 2 2021

This article covers my personal backup strategy, which uses Restic and remote storage to ensure my files are safe. I’ve been a huge fan of Restic, and it’s given me a “set it and forget it” approach to my backups.

5 tips for deciding which Linux tasks and workloads to automate

May 3 2021

The first step in any automation journey is figuring out what you should actually automate. This article offers five tips for finding good automation use cases.

6 OpenSSL command options that every sysadmin should know

Mar 29 2021

OpenSSL is tricky, but I think every SysAdmin should be comfortable with its basic usage. This article covers OpenSSL commands that every sysadmin should be aware of.

3 solid self-review tips for sysadmins

Feb 25 2021

Many engineers hate writing their annual self-review. This article covers some tips that I have found useful during review season each year.

Handling secrets in your Ansible playbooks

Feb 16 2021

This article covers some tips and tricks for handling secrets in Ansible playbooks.

Using Ansible to interact with web endpoints

Oct 7 2020

I love finding unique ways to leverage Ansible, and interacting with web endpoints directly from playbooks is probably one of my favorite tricks.

5 ways to harden a new system with Ansible

Sep 22 2020

Continuing on the Ansible theme, this is a quick article with some simple suggestions for building an initial hardening playbook for your systems.

Choosing between Ansible's copy and template modules

Aug 6 2020

Choosing between copying static files and using templates can be a bit confusing to someone who is brand new to Ansible. This is an article that I wrote for for the Red Hat Enable SysAdmin blog to help clarify this choice for the beginner.

Sysadmin careers: How sysadmins can pay it forward

Jul 15 2020

Taking a break from technical topics, this article is all about paying it forward to the SysAdmin who will inevitably replace you someday. I normally don’t write a lot of non-technical content, but this was a fairly satisfying article to put together.

Building, saving, and loading container images with Ansible

Jul 7 2020

Continuing on the Ansible theme, this article covers basic container image management using Ansible.

Deploying a static website with Ansible

Jun 30 2020

This article provides an introduction with a focus on deploying a basic website. I’ve found that deploying a simple, static website is one of the easiest and most useful end-to-end exercises that someone new to Ansible can pick up.

Five best practices for administering remote systems

Apr 21 2020

This is an article outlines some basic tips for managing remote systems. While most of these can be considered “common sense” suggestions, it’s always good to ensure that you have a grasp on the fundamentals of remote system management.

Keepalived and high availability: Advanced topics

Apr 1 2020

This is the final article in a three part series about using Keepalived to build HA systems. This article includes a discussion of advanced Keepalived features, such as process and script tracking.

Setting up a Linux cluster with Keepalived: Basic configuration

Mar 25 2020

This is the second article in a three part series about using Keepalived to build HA systems. I introduce the reader to Keepalived configuration basics and demonstrate how to set up a simple failover cluster.

Using Keepalived for managing simple failover in clusters

Mar 18 2020

This is the first article in a three part series that I wrote about using Keepalived to build HA systems. This introduction covers VRRP and Keepalived fundamentals.

Connect an Asterisk system to the public switched telephone network

Jan 23 2020

This is the final article in a six part series about Asterisk and VoIP. This article covers the Asterisk configuration necessary to connect to the public phone network.

How to configure an Asterisk dialplan for intra-office calling

Jan 21 2020

This is the fifth article in a six part series about Asterisk and VoIP. This article describes how to configure the Asterisk dialplan to support calling within an office environment.

How to configure a SIP endpoint for intra-office calling

Jan 16 2020

This is the fourth article in a six part series about Asterisk and VoIP. This article walks through configuring Asterisk and registering softphones.

How to install Asterisk on Linux

Jan 14 2020

This is the third article in a six part series about Asterisk and VoIP. This article covers the installation of Asterisk on RHEL-based distributions.

An introduction to Asterisk

Jan 9 2020

This is the second article in a six part series about Asterisk and VoIP. This article covers the basics of Asterisk architecture and configuration.

An introduction to VoIP for sysadmins

Jan 7 2020

This is the first article in a six part series that about Asterisk and VoIP. This article discusses VoIP protocols and fundamentals.

A sysadmin's guide to troubleshooting VLANs

Nov 28 2019

This is the final article in a three part series that I wrote about VLANs in Linux.

How to configure a VLAN in Linux

Nov 21 2019

This is the second in a three part series that I wrote about VLANs in Linux.

Packet sniffer basics for network troubleshooting

Nov 19 2019

This article covers the fundamentals of using tcpdump for capturing packets in Linux.

VLANs for sysadmins: The basics

Nov 14 2019

This is the first in a three part series that I wrote about VLANs in Linux.

A beginner's guide to network troubleshooting in Linux

Sep 24 2019

This article discusses basic network troubleshooting in Linux.