The k3s-test workers never ran (they were stuck waiting for volume
binding) and will be re-added as microVMs, so remove their KubeVirt
configs and everything that only existed for KubeVirt guests:
- hosts/k8s/k3s-test-1-worker-{1,2,3} and their outputs
- lib/genKubeVirtGuestModule.nix and lib/genK3sAgentModule.nix (the
latter was only used by the workers)
- the KubeVirt image upload recipes (upload-vm, upload-idols,
upload-k3s-test) and the kubevirt image package in the idols outputs
- refresh the docs; keep only accurate historical mentions (e.g. the
restic backup path must stay as it is)
1.2 KiB
How to create & manage VMs (the retired KubeVirt path)
[!NOTE] KubeVirt is being retired. aquamarine runs natively on
youkoand the k3s-test nodes run as microVMs; this document only covers the VMs that are left to move (currently the Windows VM).
Use aquamarine as an example, first build and upload the virtual machine's qcow2 image to the file
server:
just upload-vm aquamarine
Then create the virtual machine by creating a yaml file at
ryan4yin/k8s-gitops, set the
spec.dataVolumeTemplates[0].source.http.url to the uploaded file's URL, and fluxcd will
automatically apply the changes, then a virtual machine named aquamarine will be created in the
VM cluster.
Once the virtual machine aquamarine is created, we can deploy updates to it with the following
commands:
just col aquamarine
just col shoryu
# Set a configuration for the next boot instead of switching immediately
just col aquamarine boot
If you're not familiar with remote deployment, please read this tutorial first: Remote Deployment - NixOS & Flakes Book