Quick start
Charmed Kubernetes® delivers a 'pure K8s' experience, tested across a wide range of clouds and integrated with modern metrics and monitoring. It works across all major public clouds and private infrastructure, enabling your teams to operate Kubernetes clusters on demand, anywhere.
With this quick start guide and some tools from Canonical, you'll have a Kubernetes cluster running on the cloud of your choice in minutes!
What you'll need
- An Ubuntu 22.04 LTS, 20.04 LTS or 18.04 LTS environment to run the commands (or another operating system which supports
snapd
- see the snapd documentation) - Account credentials for one of the following public clouds:
- Amazon Web Services, including AWS-China and AWS-gov
- CloudSigma
- Google Cloud platform
- Joyent
- Microsoft Azure, including Azure-China
- Oracle Cloud
- Rackspace
-
1Install Juju
Juju is a tool for deploying, configuring, and operating complex software on public or private clouds. It can be installed with a snap:sudo snap install juju --channel=3.1/stable
-
2Find your cloud
Juju has baked in knowledge of many public clouds such as AWS, Azure and Google. You can see which ones are ready to use by running this command:juju clouds
-
3Add Credentials
Most clouds require credentials so that the cloud knows which operations are authorised, so you will need to supply these for Juju. If you choose to use AWS, for example, you would run:
juju add-credential aws
For a different cloud, just substitute in the name from the previous list output by Juju. The data you need to supply will vary depending on the cloud.
-
4Add a Controller
The Juju controller is used to manage the software deployed through Juju, from deployment to upgrades to day-two operations. One Juju controller can manage multiple projects or workspaces, which in Juju are known as 'models'.
juju bootstrap aws my-controller
-
5Add a Model
The model holds a specific deployment. It is a good idea to create a new one specifically for each deployment.
juju add-model k8s
Remember that you can have multiple models on each controller, so you can deploy multiple Kubernetes clusters, or other applications.
-
6Deploy Kubernetes
Deploy the Kubernetes bundle to the model. This will add instances to the model and deploy the required applications.
juju deploy charmed-kubernetes
-
6Monitor the deployment
Juju is now busy creating instances, installing software and connecting the different parts of the cluster together, which can take several minutes. You can monitor what's going on by running:
watch -c juju status --color
-
6Start using your cluster!
Congratulations! You have a Kubernetes cluster up and running - now let's use it! The link below takes you to the operations guide, detailing some of the common things you'll want to do next:
See the guide to contributing or discuss these docs in our public Mattermost channel.