Charmed PostgreSQL K8s
- By Canonical Data Platform
- Databases
Channel | Revision | Published | Runs on |
---|---|---|---|
latest/stable | 20 | 20 Sep 2022 | |
14/stable | 193 | 13 Mar 2024 | |
14/candidate | 193 | 31 Jan 2024 | |
14/beta | 211 | 13 Mar 2024 | |
14/edge | 225 | 24 Mar 2024 |
juju deploy postgresql-k8s --channel 14/stable
Deploy Kubernetes operators easily with Juju, the Universal Operator Lifecycle Manager. Need a Kubernetes cluster? Install MicroK8s to create a full CNCF-certified Kubernetes system in under 60 seconds.
Platform:
Charmed PostgreSQL K8s Tutorial > 4. Manage passwords
Manage passwords
When we accessed PostgreSQL earlier in this tutorial, we needed to use a password manually. Passwords help to secure our database and are essential for security. Over time, it is a good practice to change the password frequently.
In this section, we will go through setting and changing the password for the admin user.
Note: All commands are written for juju >= v.3.0
If you are using an earlier version, be aware that:
juju run
replacesjuju run-action --wait
injuju v.2.9
juju integrate
replacesjuju relate
andjuju add-relation
injuju v.2.9
For more information, check the Juju 3.0 Release Notes.
Retrieve the password
The operator’s password can be retrieved by running the get-password
action on the Charmed PostgreSQL K8s application:
juju run postgresql-k8s/leader get-password
Running the command above should output:
unit-postgresql-k8s-0:
UnitId: postgresql-k8s/0
id: "6"
results:
password: SYhCduijXTAfg9mU
status: completed
timing:
completed: 2023-03-20 11:10:33 +0000 UTC
enqueued: 2023-03-20 11:10:32 +0000 UTC
started: 2023-03-20 11:10:33 +0000 UTC
Rotate the password
You can change the operator’s password to a new random password by entering:
juju run postgresql-k8s/leader set-password
Running the command above should output:
unit-postgresql-k8s-0:
UnitId: postgresql-k8s/0
id: "8"
results:
password: 7CYrRiBrC4du3ToX
status: completed
timing:
completed: 2023-03-20 11:10:47 +0000 UTC
enqueued: 2023-03-20 11:10:46 +0000 UTC
started: 2023-03-20 11:10:47 +0000 UTC
The status: completed
element in the output above indicates that the password has been successfully updated. The new password should be different from the previous password.
Set the new password
You can set a new password manually by entering
juju run postgresql-k8s/leader set-password password=my-password
where my-password
is your password of choice.
Running the command above should output:
unit-postgresql-k8s-0:
UnitId: postgresql-k8s/0
id: "10"
results:
password: my-password
status: completed
timing:
completed: 2023-03-20 11:11:06 +0000 UTC
enqueued: 2023-03-20 11:11:02 +0000 UTC
started: 2023-03-20 11:11:05 +0000 UTC
Set the new password for a specific user
You can change the password for a specific user by running
juju run postgresql-k8s/leader set-password username=my-user password=my-password
Read more about internal operator users here.