Welcome to Juju Reference docs – our cast of characters (tools, concepts, entities, and processes) for the Juju story!
When you install a Juju client, for example the juju
CLI client, and give Juju access to your cloud (Kubernetes or otherwise), your Juju client bootstraps a controller into the cloud.
From that point onward you are officially a Juju user with a superuser
access level and therefore able to use Juju and charms or bundles from our large collection on Charmhub to manage applications on that cloud.
In fact, you can also go ahead and add another cloud definition to your controller, for any cloud in our long list of supported clouds.
On any of the clouds, you can use the controller to set up a model, and then use Juju for all your application management needs – from application deployment to configuration to constraints to scaling to high-availability to integration (within and between models and their clouds!) to actions to secrets to upgrading to teardown.
You don’t have to worry about the infrastructure – the Juju controller agent takes care of all of that automatically for you. But, if you care, Juju also lets you manually control availability zones, machines, subnets, spaces, secret backends, storage.