From 26969a2c359acfc01dfcfbeabb00d3b42358e890 Mon Sep 17 00:00:00 2001 From: Christoph Hoopmann Date: Wed, 15 Jan 2025 19:40:39 +0100 Subject: [PATCH] docs: add Radxa ROCK 5B docs to Single Board Computer section This adds documentation on how to setup a ROCK 5B with Talos initally and it adds the SBC to the support matrix. It also fixes a typo of an unreferenced link alias. Signed-off-by: Christoph Hoopmann --- .../v1.10/introduction/support-matrix.md | 2 +- .../configuration/disk-management.md | 2 + .../talos-guides/configuration/logging.md | 2 +- .../install/single-board-computers/rock5b.md | 95 +++++++++++++++++++ .../v1.9/introduction/support-matrix.md | 2 +- .../configuration/disk-management.md | 2 + .../install/single-board-computers/rock5b.md | 95 +++++++++++++++++++ 7 files changed, 197 insertions(+), 3 deletions(-) create mode 100644 website/content/v1.10/talos-guides/install/single-board-computers/rock5b.md create mode 100644 website/content/v1.9/talos-guides/install/single-board-computers/rock5b.md diff --git a/website/content/v1.10/introduction/support-matrix.md b/website/content/v1.10/introduction/support-matrix.md index 9846984d7d..42b4f0e009 100644 --- a/website/content/v1.10/introduction/support-matrix.md +++ b/website/content/v1.10/introduction/support-matrix.md @@ -16,7 +16,7 @@ description: "Table of supported Talos Linux versions and respective platforms." | - cloud | Akamai, AWS, GCP, Azure, CloudStack, Digital Ocean, Exoscale, Hetzner, OpenNebula, OpenStack, Oracle Cloud, Scaleway, Vultr, Upcloud | Akamai, AWS, GCP, Azure, CloudStack, Digital Ocean, Exoscale, Hetzner, OpenNebula, OpenStack, Oracle Cloud, Scaleway, Vultr, Upcloud | | - bare metal | x86: BIOS, UEFI, SecureBoot; arm64: UEFI, SecureBoot; boot: ISO, PXE, disk image | x86: BIOS, UEFI; arm64: UEFI; boot: ISO, PXE, disk image | | - virtualized | VMware, Hyper-V, KVM, Proxmox, Xen | VMware, Hyper-V, KVM, Proxmox, Xen | -| - SBCs | Banana Pi M64, Jetson Nano, Libre Computer Board ALL-H3-CC, Nano Pi R4S, Pine64, Pine64 Rock64, Radxa ROCK Pi 4c, Radxa Rock4c+, Raspberry Pi 4B, Raspberry Pi Compute Module 4, Turing RK1 | Banana Pi M64, Jetson Nano, Libre Computer Board ALL-H3-CC, Nano Pi R4S, Orange Pi R1 Plus LTS, Pine64, Pine64 Rock64, Radxa ROCK Pi 4c, Raspberry Pi 4B, Raspberry Pi Compute Module 4, Turing RK1 | +| - SBCs | Banana Pi M64, Jetson Nano, Libre Computer Board ALL-H3-CC, Nano Pi R4S, Pine64, Pine64 Rock64, Radxa ROCK Pi 4c, Radxa ROCK 4c+, Radxa ROCK 5B, Raspberry Pi 4B, Raspberry Pi Compute Module 4, Turing RK1 | Banana Pi M64, Jetson Nano, Libre Computer Board ALL-H3-CC, Nano Pi R4S, Orange Pi R1 Plus LTS, Pine64, Pine64 Rock64, Radxa ROCK Pi 4c, Radxa ROCK 4c+, Radxa ROCK 5B, Raspberry Pi 4B, Raspberry Pi Compute Module 4, Turing RK1 | | - local | Docker, QEMU | Docker, QEMU | | **Omni** | | | | [Omni](https://github.com/siderolabs/omni) | >= 0.45.0 | >= 0.45.0 | diff --git a/website/content/v1.10/talos-guides/configuration/disk-management.md b/website/content/v1.10/talos-guides/configuration/disk-management.md index b45636cc99..1140cd1d6d 100644 --- a/website/content/v1.10/talos-guides/configuration/disk-management.md +++ b/website/content/v1.10/talos-guides/configuration/disk-management.md @@ -1,6 +1,8 @@ --- title: "Disk Management" description: "Guide on managing disks" +aliases: + - ../../guides/disk-management --- Talos Linux version 1.8.0 introduces a new backend for managing system and user disks. diff --git a/website/content/v1.10/talos-guides/configuration/logging.md b/website/content/v1.10/talos-guides/configuration/logging.md index fd169ef469..aa327429c7 100644 --- a/website/content/v1.10/talos-guides/configuration/logging.md +++ b/website/content/v1.10/talos-guides/configuration/logging.md @@ -2,7 +2,7 @@ title: "Logging" description: "Dealing with Talos Linux logs." aliases: - - ../../guiides/logging + - ../../guides/logging --- ## Viewing logs diff --git a/website/content/v1.10/talos-guides/install/single-board-computers/rock5b.md b/website/content/v1.10/talos-guides/install/single-board-computers/rock5b.md new file mode 100644 index 0000000000..86d2a1f114 --- /dev/null +++ b/website/content/v1.10/talos-guides/install/single-board-computers/rock5b.md @@ -0,0 +1,95 @@ +--- +title: "Radxa ROCK 5B" +description: "Installing Talos on Radxa ROCK 5B SBC using raw disk image." +aliases: + - ../../../single-board-computers/rock5b +--- + +## Prerequisites + +You will need + +- follow [Installation/talosctl]({{< relref "../talosctl">}}) to intall `talosctl` +- an SD card + +## Download the Image + +Visit the [Image Factory](https://factory.talos.dev/), select `Single Board Computers`, select the version and select `Radxa ROCK 5B` from the options. + +Choose `realtek-firmware` and any other desired extension. +Next fill in the kernel command line arguments if needed. + +Download the image and decompress it: + +```bash +curl -LO https://factory.talos.dev/image/[uuid]/{{< release >}}/metal-arm64.raw.xz +xz -d metal-arm64.raw.xz +``` + +## Writing the Image + +This guide assumes the node should boot from SD card. +Booting from eMMC or NVMe has not been tested yet. + +The path to your SD card can be found using `fdisk` on Linux or `diskutil` on macOS. +In this example, we will assume `/dev/mmcblk0`. + +Now `dd` the image to your SD card: + +```bash +sudo dd if=metal-arm64.raw of=/dev/mmcblk0 conv=fsync oflag=direct status=progress bs=4M +``` + +## First boot + +Insert the SD card into the board, turn it on and proceed by following the +[getting started guide]({{< relref "../../../introduction/getting-started/#configure-talos-linux" >}}) +for further steps on how to configure Talos. + +## Troubleshooting + +### Serial console + +If you experience any issues you can check the serial console. +Follow the [official guideline](https://wiki.radxa.com/Rock5/dev/serial-console) +on how to connect a serial adapter. + +Hint: The rock5b overlay uses baudrate of `115200` instead of the default `1500000` + +### Power supplies and endless restarts + +It is a known issue that USB Power Delivery negotiation is performed at a late stage in kernel. +This can lead to endless restarts if the power supply cuts power to early. +Check the list of [known working](https://wiki.radxa.com/Rock5/5b/power_supply) power supplies. + +## Tips and tricks + +### EPHEMERAL on NVMe + +The Radxa ROCK 5B SBC provides a M.2 NVMe SSD slot. + +This allows to use a separate disk for the EPHEMERAL partition by following +[Disk Management]({{< relref "../../configuration/disk-management" >}}). + +Add something similar to the machine configuration to make use of a M.2 NVMe SSD: + +```yaml +# worker.yaml +--- +version: v1alpha1 +debug: false +persist: true +machine: + # ... +cluster: + # ... +--- +apiVersion: v1alpha1 +kind: VolumeConfig +name: EPHEMERAL +provisioning: + diskSelector: + match: disk.transport == 'nvme' + minSize: 100GB + grow: true +``` diff --git a/website/content/v1.9/introduction/support-matrix.md b/website/content/v1.9/introduction/support-matrix.md index 6668f90b2a..abb1d1c7da 100644 --- a/website/content/v1.9/introduction/support-matrix.md +++ b/website/content/v1.9/introduction/support-matrix.md @@ -16,7 +16,7 @@ description: "Table of supported Talos Linux versions and respective platforms." | - cloud | Akamai, AWS, GCP, Azure, CloudStack, Digital Ocean, Exoscale, Hetzner, OpenNebula, OpenStack, Oracle Cloud, Scaleway, Vultr, Upcloud | Akamai, AWS, GCP, Azure, CloudStack, Digital Ocean, Exoscale, Hetzner, OpenNebula, OpenStack, Oracle Cloud, Scaleway, Vultr, Upcloud | | - bare metal | x86: BIOS, UEFI, SecureBoot; arm64: UEFI, SecureBoot; boot: ISO, PXE, disk image | x86: BIOS, UEFI; arm64: UEFI; boot: ISO, PXE, disk image | | - virtualized | VMware, Hyper-V, KVM, Proxmox, Xen | VMware, Hyper-V, KVM, Proxmox, Xen | -| - SBCs | Banana Pi M64, Jetson Nano, Libre Computer Board ALL-H3-CC, Nano Pi R4S, Pine64, Pine64 Rock64, Radxa ROCK Pi 4c, Radxa Rock4c+, Raspberry Pi 4B, Raspberry Pi Compute Module 4, Turing RK1 | Banana Pi M64, Jetson Nano, Libre Computer Board ALL-H3-CC, Nano Pi R4S, Orange Pi R1 Plus LTS, Pine64, Pine64 Rock64, Radxa ROCK Pi 4c, Raspberry Pi 4B, Raspberry Pi Compute Module 4 | +| - SBCs | Banana Pi M64, Jetson Nano, Libre Computer Board ALL-H3-CC, Nano Pi R4S, Pine64, Pine64 Rock64, Radxa ROCK Pi 4c, Radxa Rock 4c+, Radxa ROCK 5B, Raspberry Pi 4B, Raspberry Pi Compute Module 4, Turing RK1 | Banana Pi M64, Jetson Nano, Libre Computer Board ALL-H3-CC, Nano Pi R4S, Orange Pi R1 Plus LTS, Pine64, Pine64 Rock64, Radxa ROCK Pi 4c, Raspberry Pi 4B, Raspberry Pi Compute Module 4 | | - local | Docker, QEMU | Docker, QEMU | | **Omni** | | | | [Omni](https://github.com/siderolabs/omni) | >= 0.45.0 | >= 0.43.0 | diff --git a/website/content/v1.9/talos-guides/configuration/disk-management.md b/website/content/v1.9/talos-guides/configuration/disk-management.md index b45636cc99..1140cd1d6d 100644 --- a/website/content/v1.9/talos-guides/configuration/disk-management.md +++ b/website/content/v1.9/talos-guides/configuration/disk-management.md @@ -1,6 +1,8 @@ --- title: "Disk Management" description: "Guide on managing disks" +aliases: + - ../../guides/disk-management --- Talos Linux version 1.8.0 introduces a new backend for managing system and user disks. diff --git a/website/content/v1.9/talos-guides/install/single-board-computers/rock5b.md b/website/content/v1.9/talos-guides/install/single-board-computers/rock5b.md new file mode 100644 index 0000000000..86d2a1f114 --- /dev/null +++ b/website/content/v1.9/talos-guides/install/single-board-computers/rock5b.md @@ -0,0 +1,95 @@ +--- +title: "Radxa ROCK 5B" +description: "Installing Talos on Radxa ROCK 5B SBC using raw disk image." +aliases: + - ../../../single-board-computers/rock5b +--- + +## Prerequisites + +You will need + +- follow [Installation/talosctl]({{< relref "../talosctl">}}) to intall `talosctl` +- an SD card + +## Download the Image + +Visit the [Image Factory](https://factory.talos.dev/), select `Single Board Computers`, select the version and select `Radxa ROCK 5B` from the options. + +Choose `realtek-firmware` and any other desired extension. +Next fill in the kernel command line arguments if needed. + +Download the image and decompress it: + +```bash +curl -LO https://factory.talos.dev/image/[uuid]/{{< release >}}/metal-arm64.raw.xz +xz -d metal-arm64.raw.xz +``` + +## Writing the Image + +This guide assumes the node should boot from SD card. +Booting from eMMC or NVMe has not been tested yet. + +The path to your SD card can be found using `fdisk` on Linux or `diskutil` on macOS. +In this example, we will assume `/dev/mmcblk0`. + +Now `dd` the image to your SD card: + +```bash +sudo dd if=metal-arm64.raw of=/dev/mmcblk0 conv=fsync oflag=direct status=progress bs=4M +``` + +## First boot + +Insert the SD card into the board, turn it on and proceed by following the +[getting started guide]({{< relref "../../../introduction/getting-started/#configure-talos-linux" >}}) +for further steps on how to configure Talos. + +## Troubleshooting + +### Serial console + +If you experience any issues you can check the serial console. +Follow the [official guideline](https://wiki.radxa.com/Rock5/dev/serial-console) +on how to connect a serial adapter. + +Hint: The rock5b overlay uses baudrate of `115200` instead of the default `1500000` + +### Power supplies and endless restarts + +It is a known issue that USB Power Delivery negotiation is performed at a late stage in kernel. +This can lead to endless restarts if the power supply cuts power to early. +Check the list of [known working](https://wiki.radxa.com/Rock5/5b/power_supply) power supplies. + +## Tips and tricks + +### EPHEMERAL on NVMe + +The Radxa ROCK 5B SBC provides a M.2 NVMe SSD slot. + +This allows to use a separate disk for the EPHEMERAL partition by following +[Disk Management]({{< relref "../../configuration/disk-management" >}}). + +Add something similar to the machine configuration to make use of a M.2 NVMe SSD: + +```yaml +# worker.yaml +--- +version: v1alpha1 +debug: false +persist: true +machine: + # ... +cluster: + # ... +--- +apiVersion: v1alpha1 +kind: VolumeConfig +name: EPHEMERAL +provisioning: + diskSelector: + match: disk.transport == 'nvme' + minSize: 100GB + grow: true +```