Skip to content
This documentation is sourced from a third-party project and is not maintained by pgEdge.

Azure-Compatible Object Store Support

pgBackRest supports locating repositories in Azure-compatible object stores. The container used to store the repository must be created in advance — pgBackRest will not do it automatically. The repository can be located in the container root (/) but it's usually best to place it in a subpath so object store logs or other data can also be stored in the container without conflicts.

Warning

Do not enable "hierarchical namespace" as this will cause errors during expire.

Configure Azure

[global]
repo{[azure-setup-repo-id]}-type=azure
[global]
repo{[azure-setup-repo-id]}-path=/demo-repo
[global]
repo{[azure-setup-repo-id]}-azure-account=pgbackrest
[global]
repo{[azure-setup-repo-id]}-azure-key-type=shared
[global]
repo{[azure-setup-repo-id]}-azure-key=YXpLZXk=
[global]
repo{[azure-setup-repo-id]}-azure-container=demo-container
[global]
repo{[azure-setup-repo-id]}-retention-full=4

Shared access signatures may be used by setting the repo<azure-setup-repo-id>-azure-key-type option to sas and the repo<azure-setup-repo-id>-azure-key option to the shared access signature token.

Commands are run exactly as if the repository were stored on a local disk.

Create the stanza

pgbackrest --stanza=demo --log-level-console=info stanza-create

File creation time in Azure is relatively slow so backup/restore performance is improved by enabling file bundling.

Backup the demo cluster

pgbackrest --stanza=demo --repo=2
                    --log-level-console=info backup