siderolabs / talos

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

talosctl on ipv6 disabled systems #9150

Open omerfsen opened 3 months ago

omerfsen commented 3 months ago

Bug Report

Description

On ubuntu 22.04 or 24.04 (tested on both) if IPV6 is disabled before using talosctl it gives an error like below. What I did is to re-enable ipv6 and allow talos to disable ipv6 via talosctl (i think this is default behaviour of talosctl)

Logs

cat /etc/default/grub
...
GRUB_CMDLINE_LINUX_DEFAULT="apparmor=0 ipv6.disable=1"
GRUB_CMDLINE_LINUX="apparmor=0 ipv6.disable=1"
...

and sudo update-grub2 is ran and rebooted system after that we ensure there is no IPV6 on system and run talosctl and get error below:

talosctl cluster create
validating CIDR and reserving IPs
generating PKI and tokens
creating network talos-default
creating controlplane nodes
1 error occurred:
        * Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: open /proc/sys/net/ipv6/conf/all/disable_ipv6: no such file or directory: unknown

Environment

smira commented 3 months ago

Talos actually tries to enable IPv6 in a container (as it's disabled by default in Docker).

So are you looking towards running Talos in Docker on IPv6-disabled system?

omerfsen commented 3 months ago

Ok I see,

At https://www.talos.dev/v1.7/reference/cli/ I saw

--docker-disable-ipv6

I think this can be closed. But i think we can mention (on https://www.talos.dev/v1.7/introduction/quickstart/) default configuration requires/enables IPv6

smira commented 3 months ago

Some Talos features (e.g. SideroLink, KubeSpan) require IPv6 (but not connectivity on IPv6).