corrections from Jonathon: Unimus and NetBox were different jobs on different infrastructure, so NetBox comes out of the network project entirely; the Google migration was off GCP and Google Workspace onto Windows AD, Microsoft 365 and Azure; the ERP refresh included daily COBOL green-screen work; contact line kept in one place
build-and-deploy / build (push) Failing after 11m10s

This commit is contained in:
2026-08-18 01:54:49 +10:00
parent 7cbc3629a6
commit 36444c3424
3 changed files with 15 additions and 21 deletions
+2 -3
View File
@@ -38,11 +38,10 @@ const emailHref = socials.find((s) => s.label === "Email")?.href;
<span class="term__sep">·</span> reconciled by <span class="term__val">Argo CD</span> <span class="term__sep">·</span> reconciled by <span class="term__val">Argo CD</span>
</p> </p>
<p class="term__line"><span class="term__prompt">$</span> contact --priority low-ms</p> <p class="term__line"><span class="term__prompt">$</span> contact</p>
<p class="term__out"> <p class="term__out">
ping me on{" "}
<a href={linkedinHref} rel="noopener noreferrer" target="_blank">LinkedIn</a>{" "} <a href={linkedinHref} rel="noopener noreferrer" target="_blank">LinkedIn</a>{" "}
or <a href={emailHref}>email</a> - everything else is best-effort delivery. or <a href={emailHref}>email</a>
</p> </p>
<p class="term__line" aria-hidden="true"> <p class="term__line" aria-hidden="true">
@@ -1,10 +1,10 @@
--- ---
title: "Network Automation at Fleet Scale" title: "Network Automation at Fleet Scale"
outcome: "Took a multi-region switch fleet from hand-managed to single-pane - automated config backup, bulk change in minutes, and credentials secured and rotated." outcome: "Took a multi-region switch fleet from hand-managed to single-pane - automated config backup, bulk change in minutes, and credentials secured and rotated."
summary: "Productionised a vendor-agnostic network config-management platform (Unimus) with NetBox as the source-of-truth across an AU/NZ/PNG switch fleet: scheduled config backups, mass config push, and a centrally vaulted, rotated credential model - community tooling stood up ground-up under a corporate-supported licence." summary: "Productionised a vendor-agnostic network config-management platform (Unimus) across an AU/NZ/PNG switch fleet: scheduled config backups, change diffs, mass config push, and a centrally vaulted, rotated credential model - community tooling stood up ground-up under a corporate-supported licence."
role: "Global IT Infrastructure Engineer · Linde Asia Pacific" role: "Global IT Infrastructure Engineer · Linde Asia Pacific"
period: "2019 - 2022" period: "2019 - 2022"
stack: ["Unimus (NCM)", "NetBox (IPAM / SoT)", "Config backup & DR", "Bulk config push", "Credential vaulting + rotation", "Multi-vendor switching"] stack: ["Unimus (NCM)", "Config backup + restore", "Config diffs", "Bulk config push", "Credential vaulting + rotation", "Multi-vendor switching"]
featured: false featured: false
order: 45 order: 45
cover: "network-automation-fleet" cover: "network-automation-fleet"
@@ -12,8 +12,6 @@ diagram: "network-fleet"
links: links:
- label: "Unimus" - label: "Unimus"
href: "https://unimus.net" href: "https://unimus.net"
- label: "NetBox"
href: "https://netbox.dev"
--- ---
## Problem ## Problem
@@ -38,11 +36,9 @@ backup scheduling, and change workflows. It gave the fleet three things it never
place: **automated, scheduled config backups**, **change tracking with config diffs**, and place: **automated, scheduled config backups**, **change tracking with config diffs**, and
**mass / bulk config push** across many devices at once. **mass / bulk config push** across many devices at once.
Paired with it, **NetBox** served as the **IPAM and source-of-truth** for the device It is a lean, community-rooted tool, adopted under a **corporate-supported licence** so it had
inventory the automation runs against - so the fleet is driven from a single, accurate model a support path and could pass an enterprise change process - the deciding constraint, since an
of what exists rather than tribal knowledge. Both are lean, community-rooted tools adopted unsupported tool would not have been approved to hold the fleet's credentials.
under a **corporate-supported licence**, which made them viable inside an enterprise change
process, under a corporate-supported licence so the tool had a support path.
## Security & reliability decisions ## Security & reliability decisions
@@ -50,18 +46,17 @@ process, under a corporate-supported licence so the tool had a support path.
scoped, rotated place, never embedded in scripts or shared by hand. scoped, rotated place, never embedded in scripts or shared by hand.
- **Known-good config backups** - a recovery path for device configuration. Full network DR also depends on replacement hardware, firmware and console access, which sit outside this platform. - **Known-good config backups** - a recovery path for device configuration. Full network DR also depends on replacement hardware, firmware and console access, which sit outside this platform.
- **Diffs + auditing** - configuration changes are visible and attributable, and the stored known-good config is the material you roll back from. Changes that cut management access or touch firmware still need console/physical access. - **Diffs + auditing** - configuration changes are visible and attributable, and the stored known-good config is the material you roll back from. Changes that cut management access or touch firmware still need console/physical access.
- **Source-of-truth driven** - NetBox holds the authoritative device and address model the automation is run against. - **One inventory to act on** - the device list the automation runs against lives in one place rather than in per-engineer spreadsheets.
<!-- TODO(Jonathon): confirm whether NetBox programmatically drove Unimus device inventory, or whether the two were complementary but not coupled. Wording is deliberately non-committal until confirmed. -->
## Outcome ## Outcome
The switch fleet across AU/NZ/PNG was maintained from a single pane: configs backed up The switch fleet across AU/NZ/PNG was maintained from a single pane: configs backed up
automatically, bulk changes pushed in minutes instead of days, credentials secured and automatically, bulk changes pushed in minutes instead of days, credentials secured and
rotated, and - for the first time - a genuine recovery path for network configuration. A lean rotated, and a known-good configuration on file for every device - the material a restore
community toolset, productionised with enterprise rigour. starts from, where previously there was none.
## Future improvements ## Future improvements
Drive the automation deeper from the source-of-truth - intent in NetBox, pushed to the fleet Drive the fleet from an external source-of-truth (an IPAM/DCIM system feeding device intent
through Unimus - and template standard site configs so a new location onboards straight from into Unimus) and template standard site configs so a new location onboards from the inventory
the inventory. rather than by hand.
+2 -2
View File
@@ -44,8 +44,8 @@ export const experience: Role[] = [
"Maintained and modernised global infrastructure to enterprise standards across the region.", "Maintained and modernised global infrastructure to enterprise standards across the region.",
highlights: [ highlights: [
"Global VMware / Dell hosting; PowerShell automation of manual project tasks", "Global VMware / Dell hosting; PowerShell automation of manual project tasks",
"Migrated Google Business → Microsoft 365 across the region; AWS-hosted ERP access", "Migrated company infrastructure off Google Cloud and Google Workspace to Microsoft: Linux domain controllers replaced with Windows Active Directory, users onto Microsoft 365 and Azure; AWS-hosted ERP access",
"ERP hardware refresh with new mainframe and DR solution; PBX → VoIP across AU/NZ", "ERP hardware refresh onto new mainframe plus DR solution - including daily COBOL green-screen operations; PBX → VoIP across AU/NZ",
], ],
}, },
{ {