Compare commits

...

3 Commits

Author SHA1 Message Date
Krypton
fe7662559c
Merge 65c962f515 into 921b20c249 2025-11-28 14:11:53 +08:00
Armando Ruocco
921b20c249
feat: add pprof-server support (#538)
Some checks failed
Deploy Docusaurus to GitHub Pages / build (push) Failing after 5s
Deploy Docusaurus to GitHub Pages / deploy (push) Has been skipped
release-please / release-please (push) Failing after 2s
Barman Base Image / build (push) Failing after 6s
Closes #421

Signed-off-by: Armando Ruocco <armando.ruocco@enterprisedb.com>
2025-11-26 17:54:34 +01:00
Krypton
65c962f515 docs: add Helm chart installation
Signed-off-by: Krypton <coderkrypton@gmail.com>
2025-10-15 08:37:19 +00:00
7 changed files with 75 additions and 1 deletions

View File

@ -128,6 +128,7 @@ pluginConfiguration
podName podName
postgres postgres
postgresql postgresql
pprof
primaryUpdateStrategy primaryUpdateStrategy
rbac rbac
rc rc

View File

@ -52,6 +52,13 @@ func NewCmd() *cobra.Command {
}, },
} }
cmd.Flags().String("pprof-server",
"",
"The address where pprof server should be exposed, for example: 0.0.0.0:6061. "+
"Empty string means disabled. Disabled by default",
)
_ = viper.BindPFlag("pprof-server", cmd.Flags().Lookup("pprof-server"))
_ = viper.BindEnv("namespace", "NAMESPACE") _ = viper.BindEnv("namespace", "NAMESPACE")
_ = viper.BindEnv("cluster-name", "CLUSTER_NAME") _ = viper.BindEnv("cluster-name", "CLUSTER_NAME")
_ = viper.BindEnv("pod-name", "POD_NAME") _ = viper.BindEnv("pod-name", "POD_NAME")

View File

@ -52,6 +52,7 @@ func Start(ctx context.Context) error {
namespace := viper.GetString("namespace") namespace := viper.GetString("namespace")
controllerOptions := ctrl.Options{ controllerOptions := ctrl.Options{
PprofBindAddress: viper.GetString("pprof-server"),
Scheme: scheme, Scheme: scheme,
Client: client.Options{ Client: client.Options{
// Important: the caching options below are used by // Important: the caching options below are used by

View File

@ -56,6 +56,8 @@ Both checks are required before proceeding with the installation.
import { InstallationSnippet } from '@site/src/components/Installation'; import { InstallationSnippet } from '@site/src/components/Installation';
### Directly using the manifest
Install the plugin using `kubectl` by applying the manifest for the latest Install the plugin using `kubectl` by applying the manifest for the latest
release: release:
@ -98,6 +100,18 @@ deployment "barman-cloud" successfully rolled out
This confirms that the plugin is deployed and ready to use. This confirms that the plugin is deployed and ready to use.
### Using the Helm Chart
The plugin can be installed using the provided [Helm chart](https://github.com/cloudnative-pg/charts/tree/main/charts/plugin-barman-cloud):
```sh
helm repo add cnpg https://cloudnative-pg.github.io/charts
helm upgrade --install barman-cloud \
--namespace cnpg-system \
--create-namespace \
cnpg/plugin-barman-cloud
```
## Testing the latest development snapshot ## Testing the latest development snapshot
You can also test the latest development snapshot of the plugin with the You can also test the latest development snapshot of the plugin with the

View File

@ -74,3 +74,24 @@ spec:
For a complete list of supported options, refer to the For a complete list of supported options, refer to the
[official Barman Cloud documentation](https://docs.pgbarman.org/release/latest/). [official Barman Cloud documentation](https://docs.pgbarman.org/release/latest/).
## Enable the pprof debug server for the sidecar
You can enable the instance sidecar's pprof debug HTTP server by adding the `--pprof-server=<address>` flag to the container's
arguments via `.spec.instanceSidecarConfiguration.additionalContainerArgs`.
Pass a bind address in the form `<host>:<port>` (for example, `0.0.0.0:6061`).
An empty value disables the server (disabled by default).
### Example
```yaml
apiVersion: barmancloud.cnpg.io/v1
kind: ObjectStore
metadata:
name: my-store
spec:
instanceSidecarConfiguration:
additionalContainerArgs:
- "--pprof-server=0.0.0.0:6061"
```

View File

@ -56,6 +56,8 @@ Both checks are required before proceeding with the installation.
import { InstallationSnippet } from '@site/src/components/Installation'; import { InstallationSnippet } from '@site/src/components/Installation';
### Directly using the manifest
Install the plugin using `kubectl` by applying the manifest for the latest Install the plugin using `kubectl` by applying the manifest for the latest
release: release:
@ -98,6 +100,19 @@ deployment "barman-cloud" successfully rolled out
This confirms that the plugin is deployed and ready to use. This confirms that the plugin is deployed and ready to use.
### Using the Helm Chart
The plugin can be installed using the provided [Helm chart](https://github.com/cloudnative-pg/charts/tree/main/charts/plugin-barman-cloud):
```sh
helm repo add cnpg https://cloudnative-pg.github.io/charts
helm upgrade --install barman-cloud \
--namespace cnpg-system \
--create-namespace \
--version 0.1.0 \
cnpg/plugin-barman-cloud
```
## Testing the latest development snapshot ## Testing the latest development snapshot
You can also test the latest development snapshot of the plugin with the You can also test the latest development snapshot of the plugin with the

View File

@ -56,6 +56,8 @@ Both checks are required before proceeding with the installation.
import { InstallationSnippet } from '@site/src/components/Installation'; import { InstallationSnippet } from '@site/src/components/Installation';
### Directly using the manifest
Install the plugin using `kubectl` by applying the manifest for the latest Install the plugin using `kubectl` by applying the manifest for the latest
release: release:
@ -98,6 +100,19 @@ deployment "barman-cloud" successfully rolled out
This confirms that the plugin is deployed and ready to use. This confirms that the plugin is deployed and ready to use.
### Using the Helm Chart
The plugin can be installed using the provided [Helm chart](https://github.com/cloudnative-pg/charts/tree/main/charts/plugin-barman-cloud):
```sh
helm repo add cnpg https://cloudnative-pg.github.io/charts
helm upgrade --install barman-cloud \
--namespace cnpg-system \
--create-namespace \
--version 0.2.0 \
cnpg/plugin-barman-cloud
```
## Testing the latest development snapshot ## Testing the latest development snapshot
You can also test the latest development snapshot of the plugin with the You can also test the latest development snapshot of the plugin with the