On the matter of Operating Systems
Raspian is perfectly good, but there are a few niggles. It isn’t 64 bit, so running things like mongodb is a problem. Also, it’d be nice to use cloud-init to preconfigure some stuff, such as SSH keys. If you want to try a 64 bit OS for your Pi4, Ubuntu is a solid option.
cgroup_memory = 0
cgroup_memory is disabled by default on raspbian and is required for k8s.
On raspbian, cgroup_memory can be enabled by appending
cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1 to
/boot/cmdline.txt. On Ubuntu, the location is different and may be divined by inspecting
echo -n " cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1" >> /boot/firmware/nobtcmd.txt
After a reboot try
cat /proc/cmdline to make sure cgroup_memory is enabled.