MicroK8s is a snap package of kubernetes. Snaps are nice because they do not touch the filesystem much at all, they are generally well contained. All the k8s code comes in the snap, and if you remove the snap, it’s all gone. There are some networking pieces that need to be setup to allow the containers on top of k8s to talk to one another, but that’s pretty isolated too.
So in general, use microk8s when you want a clean single-machine kubernetes for appliances or development purposes. It works well on a VM on the cloud, or on your laptop. It’s not designed to scale out, use a different distribution like the charmed distribution of kubernetes on Ubuntu or a manual kubeadm deployment if you want a full cluster.