On 16 and 17 October 2025 I was at TalosCon 2025, the yearly user conference for Talos Linux and Omni, hosted by Sidero Labs. It took place at Venue Collective â The Conference on Generaal Vetterstraat in Amsterdam (archived event page). The format was simple: Thursday afternoon for a shared meetup and the welcome reception, and Friday for the keynotes and breakout sessions.
The TalosCon conference badge has already appeared in my conference badges year in review. This post covers the talks themselves, written up from the slides I photographed.

Thursday afternoon: the plenary room set up and still empty, a day before the keynotes.
Thursday: the welcome reception
The event page listed a Portainer workshop and a meetup shared with Cloud Native Amsterdam on Thursday afternoon, then a welcome reception hosted by Sidero from 17:00. The welcome wall at registration read âWelcome to TalosCon 2025â and showed the sponsors: Portainer, TrueFullstaq, Oxide, Isovalent and Kumorion. STACKIT and Isovalent banners stood in the lounge, and by early evening the lounge was full.
Friday keynotes: âHow difficult it is to be simpleâ
Friday opened at 09:00 with a âWelcome to TalosConâ slide. The first keynote was built around two quotes. A slide titled âManage Configuration DriftâŚâ quoted Peter Drucker: âThere is nothing so useless as doing efficiently that which should not be done at all.â The next one, âOr Eliminate Configuration Drift Entirelyâ, quoted Vincent van Gogh: âHow difficult it is to be simple!â
That pairing is the case for Talos in two slides. You can get very good at managing drift on mutable servers, or you can build an operating system that leaves nothing to drift.

The plenary room full for Fridayâs opening keynote.
A âYouâre in good companyâ slide listed some of the organisations in the room: i3D.net, Roche, SNCF, Sensys Gatso Group, promptly, Lely, JYSK, Zircuit, embark and CrossnoKaye.
Since last TalosCon
The roadmap slide, âSince last TalosConâ, split the year into two lists.
Talos
- Image cache for faster deployments
- Reengineered user volumes, enabling encryption, raw volumes, swap and more
- Removed GRUB from UEFI systems for stronger security
- SELinux support
- SBOMs for Linux, userspace and extensions
- FIPS-compliant builds
Omni
- Machine join token and other security improvements
- SOC 2 Type II compliance
- Infrastructure providers
- EU-based data center

âSince last TalosConâ: a year of Talos and Omni changes on one slide.
Several items on that list point the same way: security and supply chain (no GRUB on UEFI, SELinux, SBOMs, FIPS builds, SOC 2) plus data residency (an EU-based Omni data center). The current Talos page still describes it as âthe immutable, API-driven operating system purpose-built for Kubernetes. No SSH, no shell, no package managerâ, and Omni as the place for âprovisioning, upgrades, config, and backups for every Talos clusterâ, available as SaaS or self-hosted.
A customer slide followed: âHathora wins on bare metal and hybridâ. According to the slide, Hathora onboarded more than 100 game studios in six months and found that a cloud-only model came with unsustainable costs. The quote on the slide said the team had âabout 6 engineers on a team of 11 in totalâ serving 14 regions, and credited the unified management of Talos Linux and Omni.


Left: âRebellious systemsâ, with Talos next to Unix, C, RISC and NoSQL. Right: the title slide of the TrueFullstaq keynote.
Rebellious systems
The next keynoteâs slides had an Oxide footer and the tone of a personal story. One slide, âAside: In retrospectâ, showed a September 2018 blog post called âFalling in love with Rustâ, which opened with an apology for being âa technology love storyâ. The slide I kept was âRebellious systemsâ. It argued that the size of modern software makes technologists ask âdoes it have to be this complicated?!â, and that this produces systems that overthrow what came before them, âoften by discarding unnecessary constraintsâ. The examples were Unix (v. Multics), C (v. PL/I), RISC (v. CISC), Rails (v. J2EE), PDF (v. PostScript), microservices (v. monoliths), Node (v. Python/Ruby), NoSQL (v. SQL), and Talos (v. Ubuntu/Rocky).
Then came âTalos Linux is Much More Important Than You Thinkâ, credited on the title slide to Gerrit Tamboer, Chief Evangelist at TrueFullstaq, the company behind the Dutch EDGECASE Kubernetes event.
Roche: âHome is Where the Cache isâ
Roche presented its edge platform in the second room. Its agenda ran from the starting point through the challenge, the solution and a demo.
The starting point slide described âA Modern, Connected Edge Platformâ:
- Secure foundation: built on Talos OS
- Workflow: standard GitOps
- Assumption: continuous connectivity
- Architecture: centralised management and artifact delivery
The diagram showed an edge template feeding a cluster GitOps repository (with FoxOps in between), and each cluster pulling from that repository.

Rocheâs starting point: Talos as the base, GitOps as the workflow, and an assumption of continuous connectivity.
The weak point is that assumption. The slide that answered it was titled âHome is Where the Cache is: Ensuring artifact availability with a local registryâ. A local zot registry, running as a Talos system extension, acted as a containerd mirror for the node. Fluxâs source-controller and kustomize-controller reconciled from an OCIRepository, and a central Harbor instance for fleet management synced to the edge on demand.

A local zot registry as a Talos system extension, mirroring images for containerd at the edge site.
SGX Group: VM migration with KubeVirt
In the main room, an SGX Group slide summed up their virtualisation move in one line: âKubeVirt gave us a way to treat VMs like any other workload â no exceptions, no handholding, just GitOps.â KubeVirt describes itself as âbuilding a virtualization API for Kubernetesâ, and the slide showed what that looks like in practice.
Migration workflow, as listed on the slide:
- Export the VM definition from RHV or VMware (OVF/OVA).
- Convert the image to QCOW2 and import it into an internal image registry.
- Create a KubeVirt
VirtualMachinemanifest (labels, StorageClass, network). - Deploy through Git: Flux reconciles it into the cluster.
- Validate network and storage performance parity, then decommission the old VM.
Benefits: a full GitOps lifecycle for VMs with no click-based provisioning, backups and replication through standard Kubernetes tools (Velero, VolumeSnapshots), unified monitoring through VictoriaMetrics for VMs and containers, and a path to containerisation later. The âbridging the gapâ bullet was the honest one: KubeVirt suits apps that couldnât yet be containerised, such as legacy services and stateful workloads.

SGX Groupâs KubeVirt migration path: export, convert to QCOW2, write the manifest, let Flux deploy it.
Cloud Native Dairy Farming
The most unusual use case of the day was âCNDF: Cloud Native Dairy Farmingâ. Its premise slide, âThe cow as center pointâ, was a collage of barns, cows, red robotic equipment and a farm dashboard on screens. The Lely logo appeared later on the maintenance portal mock-up.


CNDF: a Kubernetes platform where the cow, not the cluster, is at the centre.
The architecture had gone through several versions. The âThird iterationâ slide showed a single Talos Linux VM running KubeVirt, a Horizon backend, support tools and observability, plus a Windows VM on KubeVirt hosting another Horizon backend component. It is the same pattern as SGX Groupâs: keep the Windows workload, but run it under Kubernetes.
The âIntegration Challengeâ slide connected the business side (a customer system and a licensing system feeding a BI integration) with the delivery side (Argo CD deploying Helm charts from an OCI repository, plus a âcreate cluster template â apply templateâ step). The answer was a âMetadata Control Planeâ: customer data and application data become an application manifest for Argo CD on the customer device, while cluster templates go through Omni.


Left: the metadata control plane feeding Omni and Argo CD. Right: one predictable URL per farm for remote support.
Two more slides covered running it in the field. âHandling HTTP/UDP/TCPâ showed the Traefik logo next to other proxy and gateway logos. âRemote supportâ listed âremote support using exposed servicesâ and a âpredictable URL to enable SSOâ, with a maintenance portal mock-up offering tiles for Desktop, Dashboards (Grafana), Lely DB, Robots and âMoovefilesâ (SCP, VNC and SSH), plus a âFarm name should come hereâ placeholder.
My take: immutable Kubernetes OS at the edge
Three points from the day are worth carrying into any edge or platform project.
Immutability matters most where nobody is on site. In a data centre a mutable node is an annoyance. On a farm or in a lab, with no administrator nearby, it becomes an outage that someone has to travel to fix. An API-only OS with no shell and no package manager removes a whole class of âsomeone changed somethingâ incidents. The same argument applies to image-based Linux in general, which I covered in immutable Linux with bootc. If you want to try it, my Talos Linux installation guide is a starting point.
Design the edge for disconnection, not connectivity. Rocheâs âAssumption: continuous connectivityâ box deserves attention, because many edge designs make that assumption without writing it down. A local registry mirror is cheap insurance. GitOps (Flux or Argo CD, see my comparison) then only has to reconcile what is already cached on site.
VMs on Kubernetes are a migration tool, not a destination. Both SGX Group and the dairy platform used KubeVirt to bring Windows or legacy VMs under the same GitOps lifecycle as containers. The same approach underpins VMware migrations to OpenShift Virtualization, which is also built on KubeVirt. One platform team and one observability stack can serve both kinds of workload while the containerisation work continues.