Preparing the Assets VM#
The Assets VM will run as a single Virtual Machine inside the Air-Gapped environment. This VM will hold all of the assets and can be used across multiple deployments and EDA versions, containing the assets for multiple versions.
These steps help create the Assets VM from a base Talos VM image and populate it with the local cache needed to deploy the Assets VM in the Air-Gapped environment.
Caution
These steps are meant to be executed in the public environment with Internet access.
Creating Assets VM Image Cache#
Before creating the Assets VM Image for a specific environment, an image cache must be created that will contain the necessary bootstrap images used by the Assets VM.
Change into the cloned edaadm repository root directory.
And run the following command to create the image cache:
Creating the KVM Assets VM Image#
Note
This is only needed if you plan to deploy the Assets VM on KVM.
Follow these steps to create the Assets VM Image for KVM. This will generate an ISO file based on the Talos VM base image containing a local cache. This image is different from the base Talos image ISO file that you will use for the EDA Kubernetes VMs, but is based on it.
-
Change into the
edaadmrepository.In case you have changed directories, ensure that you are in the
edaadmrepository. -
Generate the Assets VM ISO for KVM.
Execute the following command to generate the KVM Talos ISO for the Assets VM.
Output example
The output should look similar to:
--> INFO: List of goals: create-asset-vm-nocloud-boot-iso docker pull ghcr.io/siderolabs/imager:v1.9.2 v1.9.2: Pulling from siderolabs/imager Digest: sha256:b99d29d04df9eea89d50cb0d13d57e1e035e54cbd9970a26af99b18154e443a9 Status: Image is up to date for ghcr.io/siderolabs/imager:v1.9.2 ghcr.io/siderolabs/imager:v1.9.2 skipped pulling overlay (no overlay) profile ready: arch: amd64 platform: nocloud secureboot: false version: v1.9.2 input: kernel: path: /usr/install/amd64/vmlinuz initramfs: path: /usr/install/amd64/initramfs.xz baseInstaller: imageRef: ghcr.io/siderolabs/installer:v1.9.2 imageCache: imageRef: "" ociPath: /image-cache.oci output: kind: iso imageOptions: diskSize: 2147483648 outFormat: raw skipped initramfs rebuild (no system extensions) kernel command line: talos.platform=nocloud console=tty1 console=ttyS0 net.ifnames=0 talos.halt_if_installed=1 init_on_alloc=1 slab_nomerge pti=on consoleblank=0 nvme_core.io_timeout=4294967295 printk.devkmsg=on ima_template=ima-ng ima_appraise=fix ima_hash=sha512 ISO ready output asset path: /out/nocloud-amd64.iso renamed '/home/user/ws/edaadm/public/bundles/eda-cargo/talos-asset-vm-boot-imgs/nocloud-amd64.iso' -> '/home/user/ws/edaadm/public/bundles/eda-cargo/talos-asset-vm-boot-imgs/asset-vm-nocloud-amd64.iso' --> INFO: Created /home/user/ws/edaadm/public/bundles/eda-cargo/talos-asset-vm-boot-imgs/asset-vm-nocloud-amd64.isoThe ISO disk image will be saved at the relative path
./bundles/eda-cargo/talos-asset-vm-boot-imgs/asset-vm-nocloud-amd64.iso.
Creating the VMware Assets VM Image#
Note
This is only needed if you plan to deploy the Assets VM on VMware vSphere.
This command requires Linux kernel version 6 or higher1
Follow these steps to create the Assets VM Image for VMware vSphere. This will generate an ISO file based on the Talos VM base image containing a local cache. This image is different from the base Talos image ISO file that you will use for the EDA Kubernetes VMs, but is based on it.
-
Change into the
edaadmrepository.In case you have changed directories, ensure that you are in the
edaadmrepository. -
Generate the Assets VM OVA for VMware vSphere.
Execute the following command to generate the VMware vSphere Talos OVA for the Assets VM.
Output example
The output should look similar to:
--> INFO: List of goals: create-asset-vm-vmware-boot-ova docker pull ghcr.io/siderolabs/imager:v1.9.2 v1.9.2: Pulling from siderolabs/imager Digest: sha256:b99d29d04df9eea89d50cb0d13d57e1e035e54cbd9970a26af99b18154e443a9 Status: Image is up to date for ghcr.io/siderolabs/imager:v1.9.2 ghcr.io/siderolabs/imager:v1.9.2 skipped pulling overlay (no overlay) profile ready: arch: amd64 platform: vmware secureboot: false version: v1.9.2 input: kernel: path: /usr/install/amd64/vmlinuz initramfs: path: /usr/install/amd64/initramfs.xz baseInstaller: imageRef: ghcr.io/siderolabs/installer:v1.9.2 imageCache: imageRef: "" ociPath: /image-cache.oci output: kind: image imageOptions: diskSize: 2147483648 diskFormat: ova outFormat: raw skipped initramfs rebuild (no system extensions) kernel command line: talos.platform=vmware talos.config=guestinfo console=tty0 console=ttyS0 earlyprintk=ttyS0,115200 net.ifnames=0 init_on_alloc=1 slab_nomerge pti=on consoleblank=0 nvme_core.io_timeout=4294967295 printk.devkmsg=on ima_template=ima-ng ima_appraise=fix ima_hash=sha512 disk image ready output asset path: /out/vmware-amd64.ova renamed '/home/user/ws/edaadm/public/bundles/eda-cargo/talos-asset-vm-boot-imgs/vmware-amd64.ova' -> '/home/user/ws/edaadm/public/bundles/eda-cargo/talos-asset-vm-boot-imgs/asset-vm-vmware-amd64.ova' --> INFO: Created /home/user/ws/edaadm/public/bundles/eda-cargo/talos-asset-vm-boot-imgs/asset-vm-vmware-amd64.ovaThe OVA disk image will be saved at the relative path
./bundles/eda-cargo/talos-asset-vm-boot-imgs/asset-vm-vmware-amd64.ova.