<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>moehrig.dev</title>
    <link>/</link>
    <description>Recent content on moehrig.dev</description>
    <generator>Hugo</generator>
    <language>en</language>
    <copyright>&amp;copy; 2024 Congo contributors</copyright>
    <lastBuildDate>Wed, 20 May 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Building a 2-Node Proxmox VE Cluster</title>
      <link>/posts/pve-cluster/</link>
      <pubDate>Wed, 20 May 2026 00:00:00 +0000</pubDate>
      <guid>/posts/pve-cluster/</guid>
      <description>&lt;h2 id=&#34;from-vmware-to-proxmox&#34; class=&#34;relative group&#34;&gt;From VMware to Proxmox &lt;span class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100&#34;&gt;&lt;a class=&#34;group-hover:text-primary-300 dark:group-hover:text-neutral-700&#34; style=&#34;text-decoration-line: none !important;&#34; href=&#34;#from-vmware-to-proxmox&#34; aria-label=&#34;Anchor&#34;&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;&lt;p&gt;Initially I had started out with a single vSphere node running vSphere 6.7.I had a few Ubuntu server VMs running docker containers and samba shares for additional storage. After the Broadcom acquisition I discovered Proxmox which eventually led me to me migrating over.&lt;/p&gt;&#xA;&lt;p&gt;I built out a virtual environment comprised of two PVE nodes running a raspberry pi acting as the QDevice to keep the cluster in quorum and to act as the Tang server. I&amp;rsquo;ll cover Tang in more detail in a different post, but essentially my encrypted Linux VMs leverage Clevis to phone into the Tang server which unlocks them, this provides a secure convenience. I also have an LXC container running Twingate on one of the PVE nodes that allows for seamless zero trust access into my environment remotely.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Local Virtual Environment</title>
      <link>/projects/pve/</link>
      <pubDate>Fri, 10 Jan 2025 00:00:00 +0000</pubDate>
      <guid>/projects/pve/</guid>
      <description>&lt;h2 id=&#34;overview&#34; class=&#34;relative group&#34;&gt;Overview &lt;span class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100&#34;&gt;&lt;a class=&#34;group-hover:text-primary-300 dark:group-hover:text-neutral-700&#34; style=&#34;text-decoration-line: none !important;&#34; href=&#34;#overview&#34; aria-label=&#34;Anchor&#34;&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;&lt;p&gt;Multi-node Proxmox VE lab environment including a node migrated from VMware ESXi, used to test configurations and validate automation before production use.&lt;/p&gt;&#xA;&lt;h2 id=&#34;infrastructure&#34; class=&#34;relative group&#34;&gt;Infrastructure &lt;span class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100&#34;&gt;&lt;a class=&#34;group-hover:text-primary-300 dark:group-hover:text-neutral-700&#34; style=&#34;text-decoration-line: none !important;&#34; href=&#34;#infrastructure&#34; aria-label=&#34;Anchor&#34;&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;&lt;p&gt;VMs are provisioned via Terraform and managed through Ansible playbooks for automated deployment and hardening. OPNsense handles firewall, VLAN, DNS, and DHCP across the environment.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Infrastructure for CS Dept | Our Lady of the Lake University</title>
      <link>/projects/netlab/</link>
      <pubDate>Thu, 12 Oct 2023 00:00:00 +0000</pubDate>
      <guid>/projects/netlab/</guid>
      <description>&lt;h2 id=&#34;infrastructure&#34; class=&#34;relative group&#34;&gt;Infrastructure &lt;span class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100&#34;&gt;&lt;a class=&#34;group-hover:text-primary-300 dark:group-hover:text-neutral-700&#34; style=&#34;text-decoration-line: none !important;&#34; href=&#34;#infrastructure&#34; aria-label=&#34;Anchor&#34;&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;&lt;ul&gt;&#xA;&lt;li&gt;Deployed and maintained a 4-node VMware vCenter cluster on Dell PowerEdge servers that hosted the NETLAB+ modules.&lt;/li&gt;&#xA;&lt;li&gt;Designed high-availability network topology using dual Dell switches with LACP link aggregation for redundant connectivity and failover.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;project-management&#34; class=&#34;relative group&#34;&gt;Project Management &lt;span class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100&#34;&gt;&lt;a class=&#34;group-hover:text-primary-300 dark:group-hover:text-neutral-700&#34; style=&#34;text-decoration-line: none !important;&#34; href=&#34;#project-management&#34; aria-label=&#34;Anchor&#34;&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;&lt;ul&gt;&#xA;&lt;li&gt;Managed stakeholder expectations across IT leadership, CS faculty, and department chair during a third-party ISP installation dependency that delayed the original launch timeline.&lt;/li&gt;&#xA;&lt;li&gt;Proposed and led a partial rollout as a structured user experience testing phase, enabling targeted improvements before the full Spring 2024 launch.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure&gt;&#xA;    &#xA;    &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;  &#xA;    &lt;picture&#xA;      class=&#34;mx-auto my-0 rounded-md&#34;&#xA;      &#xA;    &gt;&#xA;      &#xA;      &#xA;      &#xA;      &#xA;        &lt;source&#xA;          &#xA;            srcset=&#34;/projects/netlab/netlab_hu_d5120d027d8544a8.webp 330w,/projects/netlab/netlab_hu_26a13c429bd7180d.webp 660w&#xA; &#xA; ,/projects/netlab/netlab_hu_62080647208d8ffc.webp 1024w&#xA; &#xA; &#xA; ,/projects/netlab/netlab_hu_5a3ebf0bb4ec820d.webp 1320w&#xA; &#34;&#xA;          &#xA;          sizes=&#34;100vw&#34;&#xA;          type=&#34;image/webp&#34;&#xA;        /&gt;&#xA;      &#xA;      &lt;img&#xA;        width=&#34;1408&#34;&#xA;        height=&#34;1056&#34;&#xA;        class=&#34;mx-auto my-0 rounded-md&#34;&#xA;        alt=&#34;Environment Topology&#34;&#xA;        loading=&#34;lazy&#34; decoding=&#34;async&#34;&#xA;        &#xA;          src=&#34;/projects/netlab/netlab_hu_cddf73e668703eea.jpg&#34; srcset=&#34;/projects/netlab/netlab_hu_a71a1f2bd11d30c3.jpg 330w,/projects/netlab/netlab_hu_cddf73e668703eea.jpg 660w&#xA; &#xA; ,/projects/netlab/netlab_hu_c0d80bdf984597a8.jpg 1024w&#xA; &#xA; &#xA; ,/projects/netlab/netlab_hu_a2acff1569d6abe6.jpg 1320w&#xA; &#34;&#xA;          sizes=&#34;100vw&#34;&#xA;        &#xA;      /&gt;&#xA;    &lt;/picture&gt;&#xA;  &#xA;&#xA;&#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
