Charmed PostgreSQL K8s How To - Manage applications

How to manage integrated applications

Note: All commands are written for juju >= v.3.0

If you are using an earlier version, be aware that:

  • juju run replaces juju run-action --wait in juju v.2.9
  • juju integrate replaces juju relate and juju add-relation in juju v.2.9

For more information, check the Juju 3.0 Release Notes.

Create an integration

New postgresql_client interface

Integrations (or “relations” in juju v.2.9) with new applications are supported via the postgresql_client interface.

To create an integration, run

juju integrate postgresql-k8s application

To remove an integration:

juju remove-relation postgresql-k8s application

Legacy pgsql interface

We have also added support for the database legacy relation from the original version of the charm via the pgsql interface. Note that this interface is deprecated.

juju integrate postgresql-k8s:db mattermost-k8s:db

Extended permissions can be requested using the db-admin endpoint:

juju integrate postgresql-k8s:db-admin mattermost-k8s:db

Rotate application passwords

To rotate the passwords of users created for integrated applications, the integration should be removed and integrated again. This process will generate a new user and password for the application.

juju remove-relation application postgresql-k8s
juju add-relation application postgresql-k8s

Internal operator user

The operator user is used internally by the Charmed PostgreSQL K8s Operator. The set-password action can be used to rotate its password.

To set a specific password for the operator user, run

juju run postgresql-k8s/leader set-password password=<password>

To randomly generate a password for the operator user, run

juju run postgresql-k8s/leader set-password