Skip to main content
Version: Dev

Installation

important
  1. The plugin must be installed in the same namespace as the CloudNativePG operator (typically cnpg-system).

  2. 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 jsonpath="{.spec.template.spec.containers[*].image}"

Example output:

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​

The plugin can be installed using the provided Helm chart. This installs the latest published chart release; to test an unreleased development snapshot instead, switch to the Manifest (kubectl) tab.

helm repo add cnpg https://cloudnative-pg.github.io/charts --force-update
helm upgrade --install plugin-barman-cloud \
--namespace cnpg-system \
cnpg/plugin-barman-cloud

Example output:

Release "plugin-barman-cloud" does not exist. Installing it now.
NAME: plugin-barman-cloud
LAST DEPLOYED: Wed Jul 1 09:05:16 2026
NAMESPACE: cnpg-system
STATUS: deployed
REVISION: 1
DESCRIPTION: Install complete
TEST SUITE: None

Finally, check that the deployment is up and running:

kubectl -n cnpg-system rollout status deploy/plugin-barman-cloud

Example output:

deployment "plugin-barman-cloud" successfully rolled out

This confirms that the plugin is deployed and ready to use.

Running Multiple Replicas​

The plugin Deployment can run with more than one replica for high availability. Every replica serves the gRPC interface used by the CloudNativePG operator, so the barman-cloud Service load-balances requests across all ready pods. The ObjectStore controller uses leader election, so only one replica reconciles ObjectStore resources at a time; the others take over automatically if the leader is lost.

To scale the plugin:

kubectl -n cnpg-system scale deploy/barman-cloud --replicas=2

The Deployment keeps the Recreate strategy: during an upgrade all replicas are replaced together, so the plugin is briefly unavailable regardless of the replica count. Multiple replicas protect against pod or node loss, not against upgrade downtime.

Testing the latest development snapshot​

The kubectl install command above already applies the latest development snapshot from the main branch.