siderolabs / talos

Talos Linux is a modern Linux distribution built for Kubernetes.
https://www.talos.dev
Mozilla Public License 2.0
6.83k stars 544 forks source link

Support for Raspberry PI4 2Gb for control plane #8592

Closed febus982 closed 1 month ago

febus982 commented 6 months ago

Feature Request

Lower memory check requirements (or a cli option to bypass the memory check).

Description

In a homelab setup a Raspberry PI 2Gb is enough to run the control plane (not saying it's the best option). Trying to bootstrap talos v1.6.7 fails for a difference of 44MiB.

waiting for all nodes memory sizes: 1 error occurred:
    * node "1.2.3.4" does not meet memory requirements: expected at least 1898 MiB, actual 1854 MiB
febus982 commented 6 months ago

Additional context:

This is the available memory on RaspiOS bookworm:

free --mega
               total        used        free      shared  buff/cache   available
Mem:            1935         149        1624           1         220        1786
Swap:              0           0           0

While this is Talos:

talosctl memory
NODE       TOTAL   USED   FREE   SHARED   BUFFERS   CACHE   AVAILABLE
xx.x.x.x   1854    543    32     42       3         1276    1291

It seems to suggest some differences in memory setup. I thought it might be a problem of GPU memory, so I tried to reduce it to the minimum (16 Mib instead of 64 GiB default) with kernel params but this doesn't appear to do anything.

machine:
    install:
        extraKernelArgs:
            - gpu_mem=16
febus982 commented 1 month ago

It should have been fixed by https://github.com/siderolabs/talos/pull/9020 🎉