Charmed PostgreSQL K8s

  • By Canonical Data Platform
Channel Revision Published Runs on
latest/stable 20 20 Sep 2022
Ubuntu 20.04
14/stable 73 18 Apr 2023
Ubuntu 22.04
14/candidate 73 18 Apr 2023
14/beta 73 18 Apr 2023
14/edge 92 Yesterday
juju deploy postgresql-k8s --channel 14/stable
Show information

Platform:

Environment Setup

This is part of the Charmed PostgreSQL Tutorial. Please refer to this page for more information and the overview of the content.

Minimum requirements

Before we start, make sure your machine meets the following requirements:

  • Ubuntu 20.04 (Focal) or later.
  • 8GB of RAM.
  • 2 CPU threads.
  • At least 20GB of available storage.
  • Access to the internet for downloading the required snaps and charms.

Multipass environment

Multipass is a quick and easy way to launch virtual machines running Ubuntu. It uses “cloud-init” standard to install and configure all the necessary parts automatically.

Let’s install Multipass from Snap and launch a new VM using “charm-dev” cloud-init config:

sudo snap install multipass && \
multipass launch --cpus 4 --memory 8G --disk 30G --name my-vm charm-dev # tune CPU/RAM/HDD accordingly to your needs

Note: all ‘multipass launch’ params are described here.

Multipass list of commands is short and self-explanatory, e.g. show all running VMs:

multipass list

As soon as new VM started, enter inside using:

multipass shell my-vm

Note: if at any point you’d like to leave Multipass VM, enter Ctrl+d or type exit.

All the parts have been pre-installed inside 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). The Juju controller can work with different models; models host applications such as Charmed PostgreSQL K8s. 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 entering the command juju status into the command line. You should see the following:

Model     Controller  Cloud/Region        Version  SLA          Timestamp
tutorial  charm-dev   microk8s/localhost  2.9.42   unsupported  11:56:38+01:00

Model "admin/tutorial" is empty.

Help us improve this documentation

Most of this documentation can be collaboratively discussed and changed on the respective topic in the doc category of the Charmhub forum. See the documentation guidelines if you’d like to contribute.

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