mirror of
https://github.com/cloudnative-pg/plugin-barman-cloud.git
synced 2026-09-04 22:22:21 +02:00
* Use built-in Docusaurus tabs for the Helm and kubectl install methods * Rename the Helm release to plugin-barman-cloud, matching the chart's README and making the rollout verification command work * Drop --create-namespace: the operator prerequisite guarantees the namespace exists * Give each method its own verification step and example output Co-authored-by: danishedb <danish.khan@enterprisedb.com> Signed-off-by: Krypton <root@krypton.ninja> Signed-off-by: danishedb <danish.khan@enterprisedb.com>
145 lines
3.8 KiB
Plaintext
145 lines
3.8 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">
|
|
<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):
|
|
|
|
<HelmInstallationSnippet chartVersion="0.7.1" />
|
|
|
|
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 />
|