plugin-barman-cloud/web/docs/installation.mdx
Marco Nenciarini 8138e51ad5 fix: clarify what the dev docs install
On the dev docs, the Helm tab installs the latest release, but the
kubectl tab installs the main branch. Nothing on the page said
this, and Helm was the tab shown by default.

Add a note, and make both tabs link to each other, so a reader can
jump straight to the right one.

Signed-off-by: Marco Nenciarini <marco.nenciarini@enterprisedb.com>
2026-09-03 17:09:44 +02:00

149 lines
4.0 KiB
Plaintext

---
sidebar_position: 20
---
# 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](intro.md#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:
```sh
kubectl get deployment -n cnpg-system cnpg-controller-manager \
-o jsonpath="{.spec.template.spec.containers[*].image}"
```
Example output:
```output
ghcr.io/cloudnative-pg/cloudnative-pg:1.26.0
```
The version **must be 1.26 or newer**.
### cert-manager
Use the [cmctl](https://cert-manager.io/docs/reference/cmctl/#installation)
tool to confirm that `cert-manager` is installed and available:
```sh
cmctl check api
```
Example output:
```output
The cert-manager API is ready
```
Both checks are required before proceeding with the installation.
## Installing the Barman Cloud Plugin
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
import { InstallationSnippet, ManifestVersion } from '@site/src/components/Installation';
import { HelmInstallationSnippet } from '@site/src/components/HelmInstallation';
<Tabs groupId="install-method" queryString>
<TabItem value="helm" label="Helm Chart" default>
The plugin can be installed using the provided [Helm chart](https://github.com/cloudnative-pg/charts/tree/main/charts/plugin-barman-cloud).
This installs the latest published chart release; to test an unreleased
development snapshot instead, switch to the [**Manifest (kubectl)**](./?install-method=kubectl#installing-the-barman-cloud-plugin) tab.
<HelmInstallationSnippet />
Example output:
```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:
```sh
kubectl -n cnpg-system rollout status deploy/plugin-barman-cloud
```
Example output:
```output
deployment "plugin-barman-cloud" successfully rolled out
```
</TabItem>
<TabItem value="kubectl" label="Manifest (kubectl)">
Install the plugin using `kubectl` by applying the manifest for <ManifestVersion />:
<InstallationSnippet />
Example output:
```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:
```sh
kubectl -n cnpg-system rollout status deploy/barman-cloud
```
Example output:
```output
deployment "barman-cloud" successfully rolled out
```
</TabItem>
</Tabs>
---
This confirms that the plugin is deployed and ready to use.
## Testing the latest development snapshot
import { DevSnapshotSection } from '@site/src/components/Installation';
<DevSnapshotSection />