Weird Juju Bootstrap Behavior with MicroK8s

I encountered a strange issue with juju bootstrap. Instead of prompting me to select a cloud (like AWS, GCP, or localhost), it automatically attempted to bootstrap to my MicroK8s cluster running on this node.

For context, I have a two-node MicroK8s cluster spanning two different machines—one running Ubuntu and the other Fedora. My goal is to deploy Kubeflow using Juju. Juju version is 3.5, and Microk8s version is 1.32. After some investigation, I realized that when running juju bootstrap, Juju was auto-detecting the Snap-managed MicroK8s and trying to use the kubeconfig located at /var/snap/microk8s/current/credentials/client.config.

What’s even stranger is that when I removed one node from the cluster—effectively creating two standalone MicroK8s nodes—and then ran juju bootstrap, on the one node, the command behaved as expected, prompting me with a list of available clouds, and everything run smoothly.

I’m not sure why this is happening. I have a similar setup with a two-node cluster, and in that case, I was able to bootstrap a controller and deploy Kubeflow without any issues.

Thank you in advance.