From c993164576453fd03eb8fc517badd7de8004f4ad Mon Sep 17 00:00:00 2001 From: Andrey Smirnov Date: Wed, 23 Aug 2023 16:50:56 +0400 Subject: [PATCH] docs: fix the installing system extensions doc Fixes #7658 Signed-off-by: Andrey Smirnov --- .../configuration/system-extensions.md | 40 ++++++++++++++++++- .../install/bare-metal-platforms/sidero.md | 10 ----- .../content/v1.5/talos-guides/install/omni.md | 27 +++++++++++++ .../configuration/system-extensions.md | 40 ++++++++++++++++++- .../install/bare-metal-platforms/sidero.md | 10 ----- .../content/v1.6/talos-guides/install/omni.md | 27 +++++++++++++ 6 files changed, 132 insertions(+), 22 deletions(-) delete mode 100644 website/content/v1.5/talos-guides/install/bare-metal-platforms/sidero.md create mode 100644 website/content/v1.5/talos-guides/install/omni.md delete mode 100644 website/content/v1.6/talos-guides/install/bare-metal-platforms/sidero.md create mode 100644 website/content/v1.6/talos-guides/install/omni.md diff --git a/website/content/v1.5/talos-guides/configuration/system-extensions.md b/website/content/v1.5/talos-guides/configuration/system-extensions.md index be115d291c..226711eda0 100644 --- a/website/content/v1.5/talos-guides/configuration/system-extensions.md +++ b/website/content/v1.5/talos-guides/configuration/system-extensions.md @@ -15,7 +15,45 @@ With system extensions installed, the Talos root filesystem is still immutable a > Note: the way to install system extensions in the `.machine.install` section of the machine configuration is now deprecated. -A custom boot image of Talos can be generated with +Starting with Talos v1.5.0, Talos supports generation of boot media with system extensions included, this removes the need to rebuild +the `initramfs.xz` on the machine itself during the installation or upgrade. + +There are two kinds of boot assets that Talos can generate: + +* initial boot assets (ISO, PXE, etc.) that are used to boot the machine +* disk images that have Talos pre-installed +* `installer` container images that can be used to install or upgrade Talos on a machine (installation happens when booted from ISO or PXE) + +Depending on the nature of the system extension (e.g. network device driver or `containerd` plugin), it may be necessary to include the extension in +both initial boot assets and disk images/`installer`, or just the `installer`. + +The process of generating boot assets with extensions included is described in the [boot assets guide]({{< relref "../install/boot-assets" >}}). + +### Example: Booting from an ISO + +Let's assume NVIDIA extension is required on a bare metal machine which is going to be booted from an ISO. +As NVIDIA extension is not required for the initial boot and install step, it is sufficient to include the extension in the `installer` image only. + +1. Use a generic Talos ISO to boot the machine. +2. Prepare a custom `installer` container image with NVIDIA extension included, push the image to a registry. +3. Ensure that machine configuration field `.machine.install.image` points to the custom `installer` image. +4. Boot the machine using the ISO, apply the machine configuration. +5. Talos pulls a custom installer image from the registry (containing NVIDIA extension), installs Talos on the machine, and reboots. + +When it's time to upgrade Talos, generate a custom `installer` container for a new version of Talos, push it to a registry, and perform upgrade +pointing to the custom `installer` image. + +### Example: Disk Image + +Let's assume NVIDIA extension is required on AWS VM. + +1. Prepare an AWS disk image with NVIDIA extension included. +2. Upload the image to AWS, register it as an AMI. +3. Use the AMI to launch a VM. +4. Talos boots with NVIDIA extension included. + +When it's time to upgrade Talos, either repeat steps 1-4 to replace the VM with a new AMI, or +like in the previous example, generate a custom `installer` and use it to upgrade Talos in-place. ## Authoring System Extensions diff --git a/website/content/v1.5/talos-guides/install/bare-metal-platforms/sidero.md b/website/content/v1.5/talos-guides/install/bare-metal-platforms/sidero.md deleted file mode 100644 index 5be9a91646..0000000000 --- a/website/content/v1.5/talos-guides/install/bare-metal-platforms/sidero.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Sidero Metal" -description: "Sidero Metal is a project created by the Talos team that has native support for Talos." -aliases: - - ../../../bare-metal-platforms/sidero ---- - -Sidero Metal is a project created by the Talos team that provides a bare metal installer for Cluster API, and that has native support for Talos Linux. -It can be easily installed using clusterctl. -The best way to get started with Sidero Metal is to visit the [website](https://www.sidero.dev/). diff --git a/website/content/v1.5/talos-guides/install/omni.md b/website/content/v1.5/talos-guides/install/omni.md new file mode 100644 index 0000000000..0108b99e23 --- /dev/null +++ b/website/content/v1.5/talos-guides/install/omni.md @@ -0,0 +1,27 @@ +--- +title: "Omni SaaS" +description: "Omni is a project created by the Talos team that has native support for Talos Linux." +--- + +Omni allows you to start with bare metal, virtual machines or a cloud provider, and create clusters spanning all of your locations, with a few clicks. + +You provide the machines – edge compute, bare metal, VMs, or in your cloud account. +Boot from an Omni Talos Linux image. +Click to allocate to a cluster. +That’s it! + +* Vanilla Kubernetes, on your machines, under your control. +* Elegant UI for management and operations +* Security taken care of – ties into your Enterprise ID provider +* Highly Available Kubernetes API end point built in +* Firewall friendly: manage Edge nodes securely +* From single-node clusters to the largest scale +* Support for GPUs and most CSIs. + +The Omni SaaS is available to run locally, to support air-gapped security and data sovereignty concerns. + +Omni handles the lifecycle of Talos Linux machines, provides unified access to the Talos and Kubernetes API tied to the identity provider of your choice, +and provides a UI for cluster management and operations. +Omni automates scaling the clusters up and down, and provides a unified view of the state of your clusters. + +See more in the [Omni documentation](https://www.siderolabs.com/platform/saas-for-kubernetes/). diff --git a/website/content/v1.6/talos-guides/configuration/system-extensions.md b/website/content/v1.6/talos-guides/configuration/system-extensions.md index be115d291c..226711eda0 100644 --- a/website/content/v1.6/talos-guides/configuration/system-extensions.md +++ b/website/content/v1.6/talos-guides/configuration/system-extensions.md @@ -15,7 +15,45 @@ With system extensions installed, the Talos root filesystem is still immutable a > Note: the way to install system extensions in the `.machine.install` section of the machine configuration is now deprecated. -A custom boot image of Talos can be generated with +Starting with Talos v1.5.0, Talos supports generation of boot media with system extensions included, this removes the need to rebuild +the `initramfs.xz` on the machine itself during the installation or upgrade. + +There are two kinds of boot assets that Talos can generate: + +* initial boot assets (ISO, PXE, etc.) that are used to boot the machine +* disk images that have Talos pre-installed +* `installer` container images that can be used to install or upgrade Talos on a machine (installation happens when booted from ISO or PXE) + +Depending on the nature of the system extension (e.g. network device driver or `containerd` plugin), it may be necessary to include the extension in +both initial boot assets and disk images/`installer`, or just the `installer`. + +The process of generating boot assets with extensions included is described in the [boot assets guide]({{< relref "../install/boot-assets" >}}). + +### Example: Booting from an ISO + +Let's assume NVIDIA extension is required on a bare metal machine which is going to be booted from an ISO. +As NVIDIA extension is not required for the initial boot and install step, it is sufficient to include the extension in the `installer` image only. + +1. Use a generic Talos ISO to boot the machine. +2. Prepare a custom `installer` container image with NVIDIA extension included, push the image to a registry. +3. Ensure that machine configuration field `.machine.install.image` points to the custom `installer` image. +4. Boot the machine using the ISO, apply the machine configuration. +5. Talos pulls a custom installer image from the registry (containing NVIDIA extension), installs Talos on the machine, and reboots. + +When it's time to upgrade Talos, generate a custom `installer` container for a new version of Talos, push it to a registry, and perform upgrade +pointing to the custom `installer` image. + +### Example: Disk Image + +Let's assume NVIDIA extension is required on AWS VM. + +1. Prepare an AWS disk image with NVIDIA extension included. +2. Upload the image to AWS, register it as an AMI. +3. Use the AMI to launch a VM. +4. Talos boots with NVIDIA extension included. + +When it's time to upgrade Talos, either repeat steps 1-4 to replace the VM with a new AMI, or +like in the previous example, generate a custom `installer` and use it to upgrade Talos in-place. ## Authoring System Extensions diff --git a/website/content/v1.6/talos-guides/install/bare-metal-platforms/sidero.md b/website/content/v1.6/talos-guides/install/bare-metal-platforms/sidero.md deleted file mode 100644 index 5be9a91646..0000000000 --- a/website/content/v1.6/talos-guides/install/bare-metal-platforms/sidero.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Sidero Metal" -description: "Sidero Metal is a project created by the Talos team that has native support for Talos." -aliases: - - ../../../bare-metal-platforms/sidero ---- - -Sidero Metal is a project created by the Talos team that provides a bare metal installer for Cluster API, and that has native support for Talos Linux. -It can be easily installed using clusterctl. -The best way to get started with Sidero Metal is to visit the [website](https://www.sidero.dev/). diff --git a/website/content/v1.6/talos-guides/install/omni.md b/website/content/v1.6/talos-guides/install/omni.md new file mode 100644 index 0000000000..0108b99e23 --- /dev/null +++ b/website/content/v1.6/talos-guides/install/omni.md @@ -0,0 +1,27 @@ +--- +title: "Omni SaaS" +description: "Omni is a project created by the Talos team that has native support for Talos Linux." +--- + +Omni allows you to start with bare metal, virtual machines or a cloud provider, and create clusters spanning all of your locations, with a few clicks. + +You provide the machines – edge compute, bare metal, VMs, or in your cloud account. +Boot from an Omni Talos Linux image. +Click to allocate to a cluster. +That’s it! + +* Vanilla Kubernetes, on your machines, under your control. +* Elegant UI for management and operations +* Security taken care of – ties into your Enterprise ID provider +* Highly Available Kubernetes API end point built in +* Firewall friendly: manage Edge nodes securely +* From single-node clusters to the largest scale +* Support for GPUs and most CSIs. + +The Omni SaaS is available to run locally, to support air-gapped security and data sovereignty concerns. + +Omni handles the lifecycle of Talos Linux machines, provides unified access to the Talos and Kubernetes API tied to the identity provider of your choice, +and provides a UI for cluster management and operations. +Omni automates scaling the clusters up and down, and provides a unified view of the state of your clusters. + +See more in the [Omni documentation](https://www.siderolabs.com/platform/saas-for-kubernetes/).