<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Virtualization on Le Site de François</title><link>https://lesitedefrancois.be/en/tags/virtualization/</link><description>Recent content in Virtualization on Le Site de François</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>© 2026 François</copyright><atom:link href="https://lesitedefrancois.be/en/tags/virtualization/index.xml" rel="self" type="application/rss+xml"/><item><title>Confidential VM (CVM)</title><link>https://lesitedefrancois.be/en/security/confidential-vm/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lesitedefrancois.be/en/security/confidential-vm/</guid><description>&lt;p&gt;A &lt;strong&gt;Confidential VM (CVM)&lt;/strong&gt; is a virtual machine in which the guest&amp;rsquo;s memory contents, CPU register state, and execution flow are hardware-encrypted and isolated from everything outside it: the hypervisor, the host operating system, the cloud operator, other tenants, and anyone with physical access to the machine. The isolation is enforced not by software policy but by the CPU itself, using TEE technology — &lt;strong&gt;Intel TDX&lt;/strong&gt;, &lt;strong&gt;AMD SEV-SNP&lt;/strong&gt;, or Arm CCA — so that no amount of privilege on the host side grants access to the guest&amp;rsquo;s private state. A CVM is the VM-granularity equivalent of what SGX enclaves provide at the process level: the key difference is that a CVM requires no application changes, making it the practical path for lifting existing workloads into a confidential computing environment.&lt;/p&gt;</description></item><item><title>Kata Containers</title><link>https://lesitedefrancois.be/en/security/kata-containers/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lesitedefrancois.be/en/security/kata-containers/</guid><description>&lt;p&gt;&lt;strong&gt;Kata Containers&lt;/strong&gt; is an Open Infrastructure Foundation (OpenInfra Foundation) project that replaces the Linux namespace and cgroup isolation of a conventional container runtime with a full VM boundary, while remaining entirely compatible with the &lt;strong&gt;OCI&lt;/strong&gt; runtime specification and the Kubernetes CRI. From the perspective of containerd, CRI-O, or the Kubernetes kubelet, a Kata pod is indistinguishable from a runc or crun pod — the same API calls, the same lifecycle verbs, the same pod spec — but instead of calling &lt;code&gt;clone()&lt;/code&gt; to create a new namespace, Kata starts a lightweight virtual machine. The workload runs inside that VM with its own kernel, its own device model, and a hardware-enforced isolation boundary between itself and the host kernel. The premise is that Linux namespaces, while convenient, share the same kernel as the host: a kernel vulnerability exploitable from inside a container can affect the host and every other container running on the same node. A VM boundary means that even a full guest kernel compromise cannot directly affect the host.&lt;/p&gt;</description></item><item><title>KubeVirt</title><link>https://lesitedefrancois.be/en/security/kubevirt/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lesitedefrancois.be/en/security/kubevirt/</guid><description>&lt;p&gt;&lt;strong&gt;KubeVirt&lt;/strong&gt; is a CNCF project that makes Kubernetes a native hypervisor management plane, allowing KVM virtual machines to be declared, scheduled, and operated through the Kubernetes API without a separate virtualisation management layer. The motivating use case is organisational convergence: teams running a mix of legacy VM workloads and modern containerised services no longer need two separate platforms (an OpenStack or vSphere cluster for VMs, a Kubernetes cluster for containers) with separate networking, storage, RBAC, and CI/CD integration. With KubeVirt, both workload types live in the same cluster, share the same &lt;code&gt;kubectl&lt;/code&gt; and GitOps tooling, and are subject to the same scheduling, resource quota, and network policy primitives. KubeVirt reached 1.0 in 2023 and is the engine behind &lt;strong&gt;Red Hat OpenShift Virtualization&lt;/strong&gt;, the downstream product used by organisations migrating away from VMware.&lt;/p&gt;</description></item><item><title>KVM/QEMU</title><link>https://lesitedefrancois.be/en/security/kvm-qemu/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lesitedefrancois.be/en/security/kvm-qemu/</guid><description>&lt;p&gt;&lt;strong&gt;KVM&lt;/strong&gt; (Kernel-based Virtual Machine) and &lt;strong&gt;QEMU&lt;/strong&gt; (Quick Emulator) solve different halves of the same problem and are almost always used together. &lt;strong&gt;KVM&lt;/strong&gt; is a Linux kernel module that turns the kernel into a hypervisor: with &lt;strong&gt;Intel VT-x&lt;/strong&gt; or &lt;strong&gt;AMD-V&lt;/strong&gt;, guest CPUs run on real hardware at near-native speed and guest memory is managed through extended page tables. KVM has no device model of its own — no disk, network, or firmware emulation. &lt;strong&gt;QEMU&lt;/strong&gt; supplies that in userspace (virtio, USB, VGA, ACPI) and controls KVM by issuing &lt;strong&gt;ioctl&lt;/strong&gt; calls on &lt;strong&gt;&lt;code&gt;/dev/kvm&lt;/code&gt;&lt;/strong&gt; — creating VMs, mapping memory, running vCPUs via &lt;code&gt;KVM_RUN&lt;/code&gt; — while &lt;strong&gt;QMP&lt;/strong&gt; exposes external management over a Unix socket. &lt;strong&gt;libvirt&lt;/strong&gt;, originally from Red Hat, sits above both: it translates &lt;strong&gt;domain XML&lt;/strong&gt; into QEMU command lines and lifecycle operations. The stack is the default on Linux: &lt;strong&gt;RHEL&lt;/strong&gt; ships &lt;code&gt;qemu-kvm&lt;/code&gt;, &lt;strong&gt;OpenShift Virtualization&lt;/strong&gt; runs &lt;strong&gt;KubeVirt&lt;/strong&gt; (&lt;code&gt;virt-launcher&lt;/code&gt; → libvirt → QEMU), and &lt;strong&gt;OpenShift Sandboxed Containers&lt;/strong&gt; uses &lt;strong&gt;Kata Containers&lt;/strong&gt; with the same hypervisor to isolate pods in micro-VMs.&lt;/p&gt;</description></item><item><title>SEV-SNP (AMD Secure Encrypted Virtualization – Secure Nested Paging)</title><link>https://lesitedefrancois.be/en/security/sev-snp/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lesitedefrancois.be/en/security/sev-snp/</guid><description>&lt;p&gt;&lt;strong&gt;SEV-SNP&lt;/strong&gt; is AMD&amp;rsquo;s third-generation confidential computing technology for EPYC processors, and the generation in production use across major cloud providers (AWS, Google Cloud) and Linux distributions today. It builds on two predecessors: &lt;strong&gt;SEV&lt;/strong&gt; (2016), which encrypted each VM&amp;rsquo;s memory with a per-VM AES key managed by the AMD Secure Processor, and &lt;strong&gt;SEV-ES&lt;/strong&gt; (2017), which additionally encrypted CPU register state on VM exit to prevent the hypervisor from reading guest execution state. SEV-SNP&amp;rsquo;s defining addition is &lt;strong&gt;memory integrity&lt;/strong&gt;: using Secure Nested Paging, the firmware enforces that if a guest can read an encrypted memory location, the value returned must be exactly what the guest last wrote there — closing the replay, remap, and memory aliasing attacks that made earlier generations insufficient for a fully untrusted hypervisor threat model.&lt;/p&gt;</description></item><item><title>SR-IOV</title><link>https://lesitedefrancois.be/en/telco/sr-iov/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lesitedefrancois.be/en/telco/sr-iov/</guid><description>&lt;p&gt;&lt;strong&gt;SR-IOV (Single Root I/O Virtualisation)&lt;/strong&gt; is a &lt;strong&gt;PCI-SIG&lt;/strong&gt; specification that lets one physical &lt;strong&gt;PCIe&lt;/strong&gt; device (typically a &lt;strong&gt;NIC&lt;/strong&gt; or accelerator) expose multiple lightweight &lt;strong&gt;Virtual Functions (VFs)&lt;/strong&gt; — each assignable directly to a &lt;strong&gt;VM&lt;/strong&gt; or container — while a &lt;strong&gt;Physical Function (PF)&lt;/strong&gt; remains for management and global configuration. VFs bypass much of the hypervisor’s software switching path, delivering &lt;strong&gt;lower latency&lt;/strong&gt;, &lt;strong&gt;higher throughput&lt;/strong&gt;, and more &lt;strong&gt;deterministic&lt;/strong&gt; behaviour than &lt;strong&gt;paravirtualised virtio&lt;/strong&gt; alone — properties valued in &lt;strong&gt;telco NFV&lt;/strong&gt; (vEPC, vRAN CU/DU, firewall, DPI) and in &lt;strong&gt;cloud-native&lt;/strong&gt; packet workloads on &lt;strong&gt;Kubernetes&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>TCB (Trusted Computing Base)</title><link>https://lesitedefrancois.be/en/security/tcb/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lesitedefrancois.be/en/security/tcb/</guid><description>&lt;p&gt;The &lt;strong&gt;Trusted Computing Base (TCB)&lt;/strong&gt; is everything you must trust for your security guarantees to hold: CPU and firmware, the host kernel, the hypervisor, the container runtime, the kubelet, identity and secrets infrastructure, and any management plane that can change workload configuration. If any component in the TCB is buggy, misconfigured, or controlled by an adversary, the whole security argument fails — regardless of how well the application itself is written. The classic design principle is &lt;strong&gt;TCB minimisation&lt;/strong&gt;: keep this set as small as possible, because every added component is another place where a flaw can void your policy. &amp;ldquo;Trusted&amp;rdquo; here does not mean &amp;ldquo;trustworthy in practice&amp;rdquo;; it means &amp;ldquo;assumed correct by the security model.&amp;rdquo;&lt;/p&gt;</description></item><item><title>TDX (Intel Trust Domain Extensions)</title><link>https://lesitedefrancois.be/en/security/tdx/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://lesitedefrancois.be/en/security/tdx/</guid><description>&lt;p&gt;&lt;strong&gt;Intel Trust Domain Extensions (TDX)&lt;/strong&gt; is a confidential computing technology built into Intel CPUs that allows entire virtual machines — called &lt;strong&gt;Trust Domains (TDs)&lt;/strong&gt; — to run with hardware-enforced isolation from the host hypervisor, VMM, and any other software on the platform, including privileged system software with administrative access. Unlike &lt;strong&gt;SGX&lt;/strong&gt;, which protects small application-level enclaves, TDX operates at the VM level, making it suitable for lifting existing workloads into a confidential environment without significant code changes.&lt;/p&gt;</description></item></channel></rss>