Installation
-
The plugin must be installed in the same namespace as the CloudNativePG operator (typically
cnpg-system
). -
Keep in mind that the operator's listening namespaces may differ from its installation namespace. Double-check this to avoid configuration issues.
Verifying the Requirements
Before installing the plugin, make sure the requirements are met.
CloudNativePG Version
Ensure you're running a version of CloudNativePG that is compatible with the
plugin. If installed in the default cnpg-system
namespace, you can verify the
version with:
kubectl get deployment -n cnpg-system cnpg-controller-manager -o yaml \
| grep ghcr.io/cloudnative-pg/cloudnative-pg
Example output:
image: ghcr.io/cloudnative-pg/cloudnative-pg:1.26.0
The version must be 1.26 or newer.
cert-manager
Use the cmctl
tool to confirm that cert-manager
is installed and available:
cmctl check api
Example output:
The cert-manager API is ready
Both checks are required before proceeding with the installation.
Installing the Barman Cloud Plugin
Install the plugin using kubectl
by applying the manifest for the latest
release:
kubectl apply -f \
https://github.com/cloudnative-pg/plugin-barman-cloud/releases/download/v0.4.0/manifest.yaml
Example output:
customresourcedefinition.apiextensions.k8s.io/objectstores.barmancloud.cnpg.io created
serviceaccount/plugin-barman-cloud created
role.rbac.authorization.k8s.io/leader-election-role created
clusterrole.rbac.authorization.k8s.io/metrics-auth-role created
clusterrole.rbac.authorization.k8s.io/metrics-reader created
clusterrole.rbac.authorization.k8s.io/objectstore-editor-role created
clusterrole.rbac.authorization.k8s.io/objectstore-viewer-role created
clusterrole.rbac.authorization.k8s.io/plugin-barman-cloud created
rolebinding.rbac.authorization.k8s.io/leader-election-rolebinding created
clusterrolebinding.rbac.authorization.k8s.io/metrics-auth-rolebinding created
clusterrolebinding.rbac.authorization.k8s.io/plugin-barman-cloud-binding created
secret/plugin-barman-cloud-8tfddg42gf created
service/barman-cloud created
deployment.apps/barman-cloud configured
certificate.cert-manager.io/barman-cloud-client created
certificate.cert-manager.io/barman-cloud-server created
issuer.cert-manager.io/selfsigned-issuer created
Finally, check that the deployment is up and running:
kubectl rollout status deployment \
-n cnpg-system barman-cloud
Example output:
deployment "barman-cloud" successfully rolled out
This confirms that the plugin is deployed and ready to use.
Testing the latest development snapshot
You can also test the latest development snapshot of the plugin with the following command:
kubectl apply -f \
https://raw.githubusercontent.com/cloudnative-pg/plugin-barman-cloud/refs/heads/main/manifest.yaml