cat /proc/sys/net/bridge/bridge-nf-call-iptables
sysctl vm.swappiness=0
swapoff -a
The first time I tried to get this working, once the cluster was up, the traefik pods were in CrashloopBackoff due to ip_forwarding being disabled. Since LXC containers share the host's kernel, we need to enable this on the host.
echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
sysctl --system
Edit the config file for the container (/etc/pve/lxc/$ID.conf
) and add the following:
lxc.apparmor.profile: unconfined
lxc.cgroup.devices.allow: a
lxc.cap.drop:
lxc.mount.auto: "proc:rw sys:rw"
/etc/rc.local doesn't exist in the default 20.04 LXC template provided by Rroxmox. Create it with these contents:
#!/bin/sh -e
# Kubeadm 1.15 needs /dev/kmsg to be there, but it's not in lxc, but we can just use /dev/console instead
# see: https://github.com/kubernetes-sigs/kind/issues/662
if [ ! -e /dev/kmsg ]; then
ln -s /dev/console /dev/kmsg
fi
# https://medium.com/@kvaps/run-kubernetes-in-lxc-container-f04aa94b6c9c
mount --make-rshared /
Then run this:
chmod +x /etc/rc.local
reboot
Assuming $HOME/bin is in your PATH:
curl -sLS https://get.k3sup.dev | sh
mv k3sup ~/bin/k3sup && chmod +x ~/bin/k3sup
k3sup install --ip $CONTAINER_IP --user root
KUBECONFIG=kubeconfig kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system metrics-server-7566d596c8-zm7tj 1/1 Running 0 69m
kube-system local-path-provisioner-6d59f47c7-ldbcl 1/1 Running 0 69m
kube-system helm-install-traefik-glt48 0/1 Completed 0 69m
kube-system coredns-7944c66d8d-67lxp 1/1 Running 0 69m
kube-system traefik-758cd5fc85-wzcst 1/1 Running 0 68m
kube-system svclb-traefik-cwd9h 2/2 Running 0 42m
Nice guide but i dont see why the first step would be needed. it comes from the wireguard/wireshark reference link where i can understand that you want that.
i think you need to check for the following modules
there are some issues with this , k3s logs errors on those 2 modules even IF they are loaded correctly . just search the proxmox forums on that.
Process: 123 ExecStartPre=/sbin/modprobe br_netfilter (code=exited, status=1/FAILURE)
Process: 129 ExecStartPre=/sbin/modprobe overlay (code=exited, status=1/FAILURE)
above log comes from a functioning k3s cluster @lxc following your guide. it logs it on startup of k3s server..