Adventures in Network Automation
  • About
  • Posts

Posts

August 12, 2021

1password on linux - ansible role

I’ve been using 1password as my password manager for many years. They’ve recently released 1password for Linux. I created a quick ansible role to deploy it. It’s not pretty since I couldn’t figure out the cleanest way to deal with gpg, so improvements would be appreciated!

ansible_role_1password_linux

Requirements

  • Tested on Ubuntu 20.04

Role Variables

None

read more
July 26, 2021

Setting up mysql server via ansible for MailSteward Pro

I’ve been keeping an email archive in an SQL database for years, and using MailSteward Pro to make easy work of adding to the archive. I recently had to re-setup my servers, and created an ansible role to make setup of mysql easier. MailSteward wants some non-standard sql password settings, and by default SQL connections are allowed only from localhost, so that needs to be changed.

ansible_role_mailsteward_mysql

Requirements

  • Tested on Ubuntu 20.04

Role Variables

Available variables are listed below:

read more
May 4, 2021

Raspberry Pi to NVIDIA DGX

Great things are done by a series of small things brought together – Vincent van Gogh

I recently finished the networking deployment for a £35m greenfield DC in the UK. One of the enjoyable parts of this DC build was starting the entire deployment and automation stack from a Raspberry Pi:

rasp_pi

Nice example of going from one extreme in ARM CPU computing to the other.

read more
October 27, 2020

Creating a Fortinet VM for Libvirt/vagrant

I needed to replicate a production Fortinet firewall environment to do some testing. I could have done this in GNS3/EVE-NG or some other virtual enviornment, but I find that Vagrant/Libvirt gives me the most usability when trying to reuse a setup over time, such as for automated testing.

So with that goal in mind, I needed to create a vagrant box of Fortinet’s FortiVM firewall, but specifically for use with libvirt. Multiple times I’ve drawn from Brad’s blog which has great Arista vEOS and Juniper vMX examples. So I’ll take a similar approach.

read more
August 29, 2020

Prometheus node_exporter on Ubiquiti EdgeOS Router configured via ansible

My home router is a Ubiquiti EdgeMAX router running EdgeOS 2.0.6. I chose it because wanted a router that could run sflow for testing purposes. I recently came across someone successfully installing Prometheus node_exporter on EdgeOS, so I gave it a try. Since I’d already ansible-automated the install of node_exporter on a switch running Cumulus Linux, I wrote a new playbook with only minor modifications for EdgeOS and it worked perfectly.

Example code used here can be found on Gitlab

read more
August 28, 2020

Hugo, Gitlab and Pipelines

I’ve decided to try and document the useful workflows and code I’ll generate during my upcoming new job. Here’s how I went about automating the creation of these blog pages and publishing of this blog to a directory on my web server. I’ll first focus on the process and code, then at the bottom of this page will be descriptions about why I’ve chosen these tools and specific workflow.

Tools

  • Hugo: A open-source static site generator
  • Ananke: The Hugo theme used for the blog
  • GitLab: SCM (Source Code Management) tool/site including CI pipelines
  • VS Code: My preferred code editing platform
  • GitKraken: A GUI for git because I’m lazy sometimes

Workflow

  1. Init a repo It’s easiest to setup a git repository first, then proceed with all the remaining steps by creating the files in the repo directory. To do this manually:
git-init blog

I’m lazy, so I use GitKraken to both create and init my repo on Gitlab:

read more
  • ««
  • «
  • 1
  • 2
  • »
  • »»
© Adventures in Network Automation 2025