Charmed PostgreSQL K8s Tutorial > 1. Set up the environment
Set up the environment
In this step, we will set up a development environment with the required components for deploying Charmed PostgreSQL.
Before you start, make sure your machine meets the minimum system requirements.
Summary
Set up Multipass
Multipass is a quick and easy way to launch virtual machines running Ubuntu. It uses the cloud-init standard to install and configure all the necessary parts automatically.
Install Multipass from the snap store:
sudo snap install multipass
Launch a new VM using the charm-dev cloud-init config:
multipass launch --cpus 4 --memory 8G --disk 50G --name my-vm charm-dev
Note: All ‘multipass launch’ parameters are described here.
The Multipass list of commands is short and self-explanatory. For example, to show all running VMs, just run the command multipass list
.
As soon as a new VM has started, access it using
multipass shell my-vm
Note: If at any point you’d like to leave a Multipass VM, enter Ctrl+D
or type exit
.
All necessary components have been pre-installed inside VM already, like LXD and Juju. The files /var/log/cloud-init.log
and /var/log/cloud-init-output.log
contain all low-level installation details.
Set up Juju
Let’s bootstrap Juju to use the local LXD controller:
juju bootstrap localhost overlord
A controller can work with different models. Set up a specific model for Charmed PostgreSQL VM named ‘tutorial’:
juju add-model tutorial
You can now view the model you created above by running the command juju status
. You should see something similar to the following example output:
Model Controller Cloud/Region Version SLA Timestamp
tutorial overlord localhost/localhost 3.1.7 unsupported 09:38:32+01:00
Model "admin/tutorial" is empty.
Next step: 2. Deploy PostgreSQL