<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Home on Ifesinachi&#39;s HomeLab</title>
    <link>https://mikeosude.com/</link>
    <description>Recent content in Home on Ifesinachi&#39;s HomeLab</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <copyright>© 2026 Ifesinachi Osude</copyright>
    <lastBuildDate>Fri, 24 Jul 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://mikeosude.com/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
      <title>Ripping out Ceph: an overnight ODF to Longhorn migration</title>
      <link>https://mikeosude.com/posts/blog-odf-to-longhorn-migration/</link>
      <pubDate>Fri, 24 Jul 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-odf-to-longhorn-migration/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Turning Six Raspberry Pi CM4s Into an OpenStack Cloud</title>
      <link>https://mikeosude.com/posts/blog-openstack-on-cm4/</link>
      <pubDate>Sat, 18 Jul 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-openstack-on-cm4/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Upgrading OpenShift Data Foundation to 4.22</title>
      <link>https://mikeosude.com/posts/blog-okd-odf-4-22-upgrade/</link>
      <pubDate>Tue, 14 Jul 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-okd-odf-4-22-upgrade/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Secondhand parts, real lessons: diagnosing a dead control-plane node</title>
      <link>https://mikeosude.com/posts/blog-cp02-hardware-investigation/</link>
      <pubDate>Mon, 06 Jul 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-cp02-hardware-investigation/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>The database that came back wrong: a CNPG failover post-mortem</title>
      <link>https://mikeosude.com/posts/blog-cnpg-wrong-primary-timeline-recovery/</link>
      <pubDate>Mon, 06 Jul 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-cnpg-wrong-primary-timeline-recovery/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Blood, Sweat &amp; Solder: A Year Rebuilding My Homelab Into a Private Cloud</title>
      <link>https://mikeosude.com/posts/blog-homelab-rebuild-private-cloud/</link>
      <pubDate>Fri, 03 Jul 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-homelab-rebuild-private-cloud/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Ceph OSD recovery: BlueStore ghosts, losetup D-state, and why PNY SSDs don&#39;t zero on TRIM</title>
      <link>https://mikeosude.com/posts/blog-ceph-osd-recovery/</link>
      <pubDate>Wed, 24 Jun 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-ceph-osd-recovery/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Deploying ERPNext on OpenShift: Three Gotchas That Cost Me an Afternoon</title>
      <link>https://mikeosude.com/posts/blog-erpnext-openshift/</link>
      <pubDate>Mon, 22 Jun 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-erpnext-openshift/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Running a Local LLM on Homelab OpenShift, Part 1: The GPU Driver Struggle</title>
      <link>https://mikeosude.com/posts/blog-local-llm-part1-driver-struggle/</link>
      <pubDate>Sat, 20 Jun 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-local-llm-part1-driver-struggle/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Running a Local LLM on Homelab OpenShift, Part 2: Finding the Right Model</title>
      <link>https://mikeosude.com/posts/blog-local-llm-part2-model-selection/</link>
      <pubDate>Sat, 20 Jun 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-local-llm-part2-model-selection/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Running a Local LLM on Homelab OpenShift, Part 3: The AI Agent Platform</title>
      <link>https://mikeosude.com/posts/blog-local-llm-part3-agent-platform/</link>
      <pubDate>Sat, 20 Jun 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-local-llm-part3-agent-platform/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Building a Stateful Human-in-the-Loop Slack Approval Gateway for Homelab AI Agents</title>
      <link>https://mikeosude.com/posts/blog-slack-approval-gateway/</link>
      <pubDate>Mon, 15 Jun 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-slack-approval-gateway/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Trading the Grafana stack for VictoriaMetrics on OpenShift</title>
      <link>https://mikeosude.com/posts/blog-victoriametrics-migration/</link>
      <pubDate>Mon, 15 Jun 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-victoriametrics-migration/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>When your object store eats its own metadata: moving Loki/Mimir/Tempo to plain NFS</title>
      <link>https://mikeosude.com/posts/blog-observability-nfs-filesystem/</link>
      <pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-observability-nfs-filesystem/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>The Good, the Bad, and the Ugly: Lessons from an AI-Assisted Infrastructure Failure</title>
      <link>https://mikeosude.com/posts/blog-okd_good_bad_ugly/</link>
      <pubDate>Thu, 04 Jun 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-okd_good_bad_ugly/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>The Hidden Cost of AI GPUs: Why I Settled on an NVIDIA A2</title>
      <link>https://mikeosude.com/posts/blog-ai-hidden-cost/</link>
      <pubDate>Sat, 30 May 2026 20:00:00 -0400</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-ai-hidden-cost/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Beyond Monitoring: Building an Open Observability Platform with LGTMA</title>
      <link>https://mikeosude.com/posts/beyond_monitoring/</link>
      <pubDate>Sat, 30 May 2026 18:00:00 -0400</pubDate>
      
      <guid>https://mikeosude.com/posts/beyond_monitoring/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Building a Secure NGINX Reverse Proxy with Automated Internal TLS Certificate Renewal</title>
      <link>https://mikeosude.com/posts/proxy-lgtm/</link>
      <pubDate>Wed, 27 May 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/proxy-lgtm/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Installing OKD 4.22 Single-Node on Bare Metal: A Homelab Guide That Actually Works</title>
      <link>https://mikeosude.com/posts/blog-okd-sno-install/</link>
      <pubDate>Wed, 20 May 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-okd-sno-install/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Adding a Worker Node to Single-Node OpenShift (SNO)</title>
      <link>https://mikeosude.com/posts/blog-okd-add-worker/</link>
      <pubDate>Sun, 17 May 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/blog-okd-add-worker/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>How to Integrate Grafana Alerts with ServiceNow Incidents</title>
      <link>https://mikeosude.com/posts/create_sn_incidents_from_grafana/</link>
      <pubDate>Thu, 30 Apr 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/create_sn_incidents_from_grafana/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>From Rack Heat to Full Observability Building My Own Smart Cooling System</title>
      <link>https://mikeosude.com/posts/smart_rack_cooling/</link>
      <pubDate>Wed, 29 Apr 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/smart_rack_cooling/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Building SNMP Monitoring for UniFi UDM-SE and UNAS Pro 4 with Grafana Alloy</title>
      <link>https://mikeosude.com/posts/unifi-snmp-monitoring/</link>
      <pubDate>Sun, 26 Apr 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/unifi-snmp-monitoring/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>From WordPress to Hugo: Removing the Bloat and Embracing Simplicity</title>
      <link>https://mikeosude.com/posts/wordpress_hugo/</link>
      <pubDate>Sun, 26 Apr 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/wordpress_hugo/</guid>
      <description></description>
      
    </item>
    
    <item>
      <title>Welcome to My HomeLab Blog</title>
      <link>https://mikeosude.com/posts/welcome/</link>
      <pubDate>Sun, 26 Apr 2026 00:00:00 +0000</pubDate>
      
      <guid>https://mikeosude.com/posts/welcome/</guid>
      <description></description>
      
    </item>
    
  </channel>
</rss>
