<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Proxmox on Damien Dye&#39;s Blog</title>
    <link>https://blogs.damiendye.uk/en/tags/proxmox/</link>
    <description>Recent content in Proxmox on Damien Dye&#39;s Blog</description>
    <generator>Hugo</generator>
    <language>en-GB</language>
    <lastBuildDate>Sun, 04 Oct 2026 10:30:00 +0100</lastBuildDate>
    <atom:link href="https://blogs.damiendye.uk/en/tags/proxmox/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Moving an OEM Licence Into a Proxmox VM, and What Moves With It</title>
      <link>https://blogs.damiendye.uk/en/proxmox/moving-an-oem-licence-into-a-proxmox-vm/</link>
      <pubDate>Sun, 04 Oct 2026 10:30:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/moving-an-oem-licence-into-a-proxmox-vm/</guid>
      <description>How the OEM licence in a PC&amp;#39;s firmware, the ACPI MSDM table, gets into a Proxmox VM: reading it, validating it before QEMU fixes up a broken one, storing it root-only in pmxcfs, and Microsoft&amp;#39;s own terms on moving it, including one VM on the licensed machine and why volume licences never use it.</description>
    </item>
    <item>
      <title>Branding a Proxmox VM, and Keeping It Branded Through the Next Upgrade</title>
      <link>https://blogs.damiendye.uk/en/proxmox/branding-a-proxmox-vm/</link>
      <pubDate>Sun, 04 Oct 2026 10:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/branding-a-proxmox-vm/</guid>
      <description>Five places a stock Proxmox VM shows somebody else&amp;#39;s name, and how to replace each so apt cannot undo it: SMBIOS strings filled from the VM&amp;#39;s own config, the SeaBIOS splash, a rebuilt OVMF logo or an option ROM that leaves the firmware alone, and the web UI logo, all read from source.</description>
    </item>
    <item>
      <title>Zero Trust VDI Without the Cloud Bill — Proxmox, Intel Arc Pro and Cloudflare Access</title>
      <link>https://blogs.damiendye.uk/en/networking/zero-trust-vdi-cloudflare-access/</link>
      <pubDate>Wed, 02 Sep 2026 14:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/networking/zero-trust-vdi-cloudflare-access/</guid>
      <description>Part one: the architecture and the cost argument for replacing Azure Virtual Desktop with Proxmox, Intel Arc Pro SR-IOV and Cloudflare Access. On-prem OAuth for identity, browser-rendered RDP, a firewalled LXC tunnel on its own VLAN, KSM for memory density, and profiles on Ceph. The next post builds it.</description>
    </item>
    <item>
      <title>Who Actually Writes &amp; Uses Ceph</title>
      <link>https://blogs.damiendye.uk/en/ceph/who-actually-writes-and-uses-ceph/</link>
      <pubDate>Thu, 27 Aug 2026 13:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/ceph/who-actually-writes-and-uses-ceph/</guid>
      <description>I counted every commit to Ceph&amp;#39;s main branch for the last ten years, traced every maintainer to the company that employs them, and gathered the public deployments. 69,613 commits, 1,718 people, 478 organisations, and a project that has outlived most of the companies that built it.</description>
    </item>
    <item>
      <title>VMware to Proxmox with Ansible — Build the Shells Before You Move a Byte</title>
      <link>https://blogs.damiendye.uk/en/ansible/vmware-to-proxmox-ansible/</link>
      <pubDate>Wed, 26 Aug 2026 10:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/ansible/vmware-to-proxmox-ansible/</guid>
      <description>Reading a vSphere estate with the dynamic inventory, mirroring its VLANs into Proxmox SDN, and rebuilding every VM as a diskless shell before a single disk moves. Why every VMware info module hides the one field the migration needs, why vlan_id is three different types, and why one NFS export mounted twice turns the cutover into a local read.</description>
    </item>
    <item>
      <title>Creating Proxmox VMs with Ansible — The Host You Are Building Does Not Exist Yet</title>
      <link>https://blogs.damiendye.uk/en/ansible/proxmox-create-vms-community-proxmox/</link>
      <pubDate>Wed, 12 Aug 2026 11:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/ansible/proxmox-create-vms-community-proxmox/</guid>
      <description>The community.proxmox collection is an API client, not a configuration agent, and that changes the shape of every playbook. Where the tasks actually run, why proxmox_kvm declines to converge rather than update, why proxmox_disk and proxmox_nic own disk and NIC changes, and the undocumented return value you will end up needing.</description>
    </item>
    <item>
      <title>Proxmox VE Is Not a Hypervisor — KVM Is, and You Are Already Running It</title>
      <link>https://blogs.damiendye.uk/en/proxmox/kvm-the-hypervisor-inside-proxmox-ve/</link>
      <pubDate>Wed, 12 Aug 2026 09:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/kvm-the-hypervisor-inside-proxmox-ve/</guid>
      <description>&amp;#34;Is Proxmox enterprise grade?&amp;#34; is a question about the hypervisor, and Proxmox VE does not contain one. The hypervisor is KVM, the same kernel module under EC2, Google Cloud, Nutanix AHV and OpenShift Virtualisation. What Proxmox actually maintains, why the type 1 argument aims at the wrong line, and what the shared foundation does not buy you.</description>
    </item>
    <item>
      <title>Making HDD-Backed Proxmox Ceph Clusters Fast — NVMe Metadata, One Optane Per Spindle, and What It Costs You</title>
      <link>https://blogs.damiendye.uk/en/proxmox/hdd-backed-ceph-bcache-optane/</link>
      <pubDate>Fri, 07 Aug 2026 20:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/hdd-backed-ceph-bcache-optane/</guid>
      <description>Flash pricing has made all-NVMe hard to justify, and enterprise HDDs are worth another look. Acceptable latency out of them on hyper-converged Proxmox Ceph: move RocksDB off the spindle, pair each disk with its own Optane through bcache (Optane, because NAND endurance is wrong for the job), and be honest about the failure modes it buys.</description>
    </item>
    <item>
      <title>Licence-Free Windows VDI on Proxmox with an Intel Arc Pro B50 — and the Firmware Limit That Stopped It</title>
      <link>https://blogs.damiendye.uk/en/proxmox/licence-free-vdi-intel-arc-pro-sriov/</link>
      <pubDate>Fri, 07 Aug 2026 17:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/licence-free-vdi-intel-arc-pro-sriov/</guid>
      <description>Intel&amp;#39;s Arc Pro cards do SR-IOV natively, with no vGPU licence to buy — which makes a licence-free Windows VDI on Proxmox genuinely possible. The whole build on a B50, the Windows-first bootstrap problem, why the firmware caps it at two virtual functions, and how many each card in the B-series gives you.</description>
    </item>
    <item>
      <title>A Switchless Proxmox Mesh with SDN OpenFabric — Ceph and Client Networks Without a 100G Switch</title>
      <link>https://blogs.damiendye.uk/en/proxmox/proxmox-routed-mesh-sdn-openfabric/</link>
      <pubDate>Fri, 07 Aug 2026 16:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/proxmox-routed-mesh-sdn-openfabric/</guid>
      <description>Three Proxmox nodes wired directly to each other in a triangle, with OpenFabric routing over the mesh and Ceph plus VXLAN client networks riding on top. Built entirely in the web interface, and honest about where the design stops scaling.</description>
    </item>
    <item>
      <title>Two Boot Lines — Which Kernel Flags Belong on a Proxmox Host, and Which Belong in the Guest</title>
      <link>https://blogs.damiendye.uk/en/proxmox/kernel-boot-flags-host-guest/</link>
      <pubDate>Fri, 07 Aug 2026 15:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/kernel-boot-flags-host-guest/</guid>
      <description>Most Proxmox tuning lines you find online are one blob of kernel flags. Half of them belong on the hypervisor, half belong inside the guest, two of the popular ones do nothing at all, and a few change meaning depending on which side of the boundary they land.</description>
    </item>
    <item>
      <title>A Virtual NVMe Device in Proxmox — and the Three Things You Give Up</title>
      <link>https://blogs.damiendye.uk/en/proxmox/virtual-nvme-proxmox/</link>
      <pubDate>Fri, 07 Aug 2026 14:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/virtual-nvme-proxmox/</guid>
      <description>QEMU can emulate a real NVMe controller, so the guest uses its own in-box NVMe driver with no VirtIO media required. It is also unmigratable by design, invisible to Proxmox backups, and no faster than VirtIO SCSI. Here is how to add one and when it is worth it.</description>
    </item>
    <item>
      <title>A VM&#39;s Clock Cannot Be Trusted — and the ptp_kvm Fix for QEMU/KVM</title>
      <link>https://blogs.damiendye.uk/en/proxmox/vm-time-ptp-kvm/</link>
      <pubDate>Fri, 07 Aug 2026 13:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/vm-time-ptp-kvm/</guid>
      <description>A virtual machine&amp;#39;s clock is built on an assumption virtualisation breaks: that the CPU keeps counting. Why guest time drifts on every hypervisor, what the skew actually breaks — Kerberos, TLS, Ceph, Windows — and how ptp_kvm fixes it properly on QEMU/KVM.</description>
    </item>
    <item>
      <title>PCIe Passthrough Performance on Proxmox VE — The IOMMU Tax and How to Minimise It</title>
      <link>https://blogs.damiendye.uk/en/proxmox/pcie-passthrough-performance-the-iommu-tax/</link>
      <pubDate>Fri, 07 Aug 2026 10:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/pcie-passthrough-performance-the-iommu-tax/</guid>
      <description>Why PCIe devices lose throughput when passed through to a VM via VFIO, and the practical tuning steps that claw most of it back.</description>
    </item>
    <item>
      <title>NUMA Alignment on Proxmox VE — Why It Matters and How to Get It Right</title>
      <link>https://blogs.damiendye.uk/en/proxmox/numa-alignment-proxmox/</link>
      <pubDate>Fri, 07 Aug 2026 09:40:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/numa-alignment-proxmox/</guid>
      <description>On multi-socket systems, a VM with its vCPUs on one NUMA node and its passed-through device on another loses 20–30% throughput before you&amp;#39;ve even looked at anything else.</description>
    </item>
    <item>
      <title>PCIe ASPM and Why You Should Disable It for Passthrough</title>
      <link>https://blogs.damiendye.uk/en/proxmox/pcie-aspm-passthrough/</link>
      <pubDate>Fri, 07 Aug 2026 09:20:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/pcie-aspm-passthrough/</guid>
      <description>Active State Power Management saves a few watts on idle PCIe links. Under VFIO passthrough, it adds latency jitter that&amp;#39;s hard to diagnose and easy to fix.</description>
    </item>
    <item>
      <title>PCIe MaxPayloadSize — A Free Performance Win for Passthrough</title>
      <link>https://blogs.damiendye.uk/en/proxmox/pcie-maxpayloadsize/</link>
      <pubDate>Fri, 07 Aug 2026 09:00:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/pcie-maxpayloadsize/</guid>
      <description>QEMU&amp;#39;s virtual root complex defaults to 128-byte TLP payloads. Most devices support 256 or 512. One kernel parameter fixes it.</description>
    </item>
    <item>
      <title>Always Use Q35, Not i440fx — Why It Matters on Proxmox VE</title>
      <link>https://blogs.damiendye.uk/en/proxmox/q35-not-i440fx/</link>
      <pubDate>Fri, 07 Aug 2026 08:45:00 +0100</pubDate>
      <guid>https://blogs.damiendye.uk/en/proxmox/q35-not-i440fx/</guid>
      <description>The two QEMU virtual chipsets are not interchangeable. Q35 provides a proper PCIe topology that passthrough, modern Windows, and the wider KVM ecosystem all depend on.</description>
    </item>
  </channel>
</rss>
