Skip to main content

Your submission was sent successfully! Close

Thank you for signing up for our newsletter!
In these regular emails you will find the latest updates from Canonical and upcoming events where you can meet our team.Close

Thank you for contacting us. A member of our team will be in touch shortly. Close

Charmed PostgreSQL Tutorial > 1. Set up the environment

Set up the environment

In this page, we will set up a development environment with the required components for deploying Charmed PostgreSQL K8s.

Before we 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 Snap:

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 the VM already, like MicroK8s 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 MicroK8s controller:

juju bootstrap microk8s overlord

A controller can work with different models. Set up a specific model for Charmed PostgreSQL K8s 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    microk8s/localhost  3.1.7    unsupported  11:56:38+01:00

Model "admin/tutorial" is empty.

Next step: 2. Deploy PostgreSQL

Last updated a month ago. Help improve this document in the forum.