sidero icon indicating copy to clipboard operation
sidero copied to clipboard

Sidero kernel pkgs potentially outdated on RPi

Open xunholy opened this issue 2 years ago • 6 comments

I'm trying to run the following versions and having zero success (previously worked on older version)

Clustetctl - v1.1.3 Talosctl - v1.x.x Talos - v1.0.5

Sidero is able to PXE boot the device however the device is hanging as mentioned here in this Slack thread https://taloscommunity.slack.com/archives/CMARMBC4E/p1653993378651399

xunholy avatar Jun 06 '22 10:06 xunholy

I have a working environment with four rpi4 with no issues using recent versions of sidero and talos

linuxmaniac avatar Sep 19 '23 10:09 linuxmaniac

@linuxmaniac can you share your kind: Environment for the raspi4? I found absolutely no docu or guides about Environments.

This is what I am using for now, trying to get a PI PXE booted etc:

apiVersion: metal.sidero.dev/v1alpha2
kind: Environment
metadata:
  name: raspberry
spec:
  initrd:
    url: https://github.com/siderolabs/talos/releases/download/v1.5.4/initramfs-arm64.xz
  kernel:
    args:
      - console=tty0
      - console=ttyS0
      - consoleblank=0
      - earlyprintk=ttyS0
      - ima_appraise=fix
      - ima_hash=sha512
      - ima_template=ima-ng
      - init_on_alloc=1
      - initrd=initramfs.xz
      - nvme_core.io_timeout=4294967295
      - printk.devkmsg=on
      - pti=on
      - slab_nomerge=
      - talos.platform=metal
      - talos.board=rpi_generic
    url: https://github.com/siderolabs/talos/releases/download/v1.5.4/vmlinuz-arm64
  • took the default Environment
  • added - talos.board=rpi_generic
  • changed amd64 to arm64
  • no clue what other kernel flags I should change 😞

blackliner avatar Oct 25 '23 07:10 blackliner

@blackliner https://github.com/linuxmaniac/home-ops/tree/main/infrastructure/sidero-system

linuxmaniac avatar Oct 25 '23 07:10 linuxmaniac

@xUnholy I assume your issue is kexec_core being stuck, caused by the missing talos.board=rpi_generic, which will lead to another very important flag, set here: https://github.com/siderolabs/talos/blob/cc0c3ab69c7807236955eb53ccac4cc70fcca32a/internal/app/machined/pkg/runtime/v1alpha1/board/rpi_generic/rpi_generic.go#L51

I guess this is not supported by Raspberries: https://github.com/raspberrypi/linux/issues/27

blackliner avatar Oct 25 '23 07:10 blackliner

@blackliner https://github.com/linuxmaniac/home-ops/tree/main/infrastructure/sidero-system

Amazing, thanks! But how does it work without talos.board=rpi_generic?

EDIT: found it, you sneaky 😆 https://github.com/linuxmaniac/home-ops/blob/main/infrastructure/sidero-system/server-class/rpi4-server.yaml#L24

blackliner avatar Oct 25 '23 07:10 blackliner

Hmm, it looks like the environment settings will not change what happens after the installation, as can be seen in this picture. The kernel parameter sysctl.kernel.kexec_load_disabled=1 is set, but it still does a kexec reboot image

blackliner avatar Oct 25 '23 07:10 blackliner