How do I add a cloud?

Hello,

Is it possible to add a microk8s cloud to a localhost (lxd) controller?

Specifically, I am trying to add my microk8s cloud to my lxd controller so that I can create a cross-model-relation between infrastructure deployed on lxd and microk8s.

Any help would be greatly appreciated.

Thanks!

I think I answered my own question here…

From the help of juju consume, it looks as though you can consume offers that have been created on other controllers.

juju consume anothercontroller:owner/othermodel.mysql

I was able to use this method successfully in creating an offer in a model in the microk8s controller and consume the offer in the model in the lxd controller.

Additionally, I was able to modify the microk8s kube config and use juju add-k8s to add the microk8s cloud to my lxd controller. In this way I was able to create and consume offers across applications in models where one was a lxd model and another was a k8s model inside of the same controller.

To do this, I used the microk8s kube config to add the microk8s could to the localhost lxd controller.

 KUBECONFIG=/var/snap/microk8s/current/credentials/client.config juju add-k8s myk8scloud00 --controller localhost-localhost

Ultimately I was able to have the lxd/microk8s interoperability in two ways; 1) add the microk8s cloud to the lxd controller and consume application endpoints across models/clouds inside of the same controller, 2) consume an offer where the applications lived in models on separate controllers.

This is really exciting!