Charmed PgBouncer

Channel Revision Published Runs on
latest/stable 5 17 Jan 2022
Ubuntu 20.04 Ubuntu 18.04 Ubuntu 16.04
1/stable 89 21 Feb 2024
Ubuntu 20.04
1/candidate 176 06 May 2024
Ubuntu 20.04
1/beta 176 30 Apr 2024
Ubuntu 20.04
1/edge 180 30 Apr 2024
Ubuntu 20.04
juju deploy pgbouncer --channel 1/edge
Show information

Platform:

Ubuntu
20.04

Environment Setup

This is part of the PgBouncer 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.

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 LXD and Juju (the files ‘/var/log/cloud-init.log’ and ‘/var/log/cloud-init-output.log’ contain all low-level installation details). Let’s bootstrap Juju to use local LXD:

juju bootstrap localhost overlord

The controller can work with different models; models host applications such as PgBouncer. Set up a specific model for Charmed PostgreSQL+PgBouncer 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 overlord    localhost/localhost  3.1.6    unsupported  23:20:53+01:00

Model "admin/tutorial" is empty.

Help improve this document in the forum (guidelines). Last updated 6 months ago.