pgbouncer

PgBouncer

Channel Revision Published Runs on
latest/stable 5 17 Jan 2022
Ubuntu 20.04 Ubuntu 18.04 Ubuntu 16.04
1/stable 397 11 Sep 2024
Ubuntu 22.04 Ubuntu 20.04
1/stable 396 11 Sep 2024
Ubuntu 22.04 Ubuntu 20.04
1/stable 395 11 Sep 2024
Ubuntu 22.04 Ubuntu 20.04
1/stable 394 11 Sep 2024
Ubuntu 22.04 Ubuntu 20.04
1/candidate 558 12 Dec 2024
Ubuntu 22.04 Ubuntu 20.04
1/candidate 557 12 Dec 2024
Ubuntu 22.04 Ubuntu 20.04
1/candidate 556 12 Dec 2024
Ubuntu 22.04 Ubuntu 20.04
1/candidate 555 12 Dec 2024
Ubuntu 22.04 Ubuntu 20.04
1/beta 558 05 Dec 2024
Ubuntu 22.04 Ubuntu 20.04
1/beta 557 05 Dec 2024
Ubuntu 22.04 Ubuntu 20.04
1/beta 556 05 Dec 2024
Ubuntu 22.04 Ubuntu 20.04
1/beta 555 05 Dec 2024
Ubuntu 22.04 Ubuntu 20.04
1/edge 598 Today
Ubuntu 22.04 Ubuntu 20.04
1/edge 597 Today
Ubuntu 22.04 Ubuntu 20.04
1/edge 596 Today
Ubuntu 22.04 Ubuntu 20.04
1/edge 595 Today
Ubuntu 22.04 Ubuntu 20.04
juju deploy pgbouncer --channel 1/stable
Show information

Platform:

Ubuntu
22.04 20.04 18.04 16.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. We will call it “overlord”, but you can give it any name you’d like:

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.