From c26cf6a31ccc4116abdfe740ce47652218d61015 Mon Sep 17 00:00:00 2001 From: Santo <31849787+sleto-it@users.noreply.github.com> Date: Wed, 8 Nov 2023 17:24:18 +0100 Subject: [PATCH 1/5] s3 remote storage - adds the PrivateLink case (#142) * s3 storate - adds the PrivateLink case * removes unwanted change * tip formatting (spaces) * tip formatting (continuation) + remove unwanted change --- docs/install/initial-setup.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/docs/install/initial-setup.md b/docs/install/initial-setup.md index e9d6259c..2e1302df 100644 --- a/docs/install/initial-setup.md +++ b/docs/install/initial-setup.md @@ -229,6 +229,21 @@ The storage configuration itself is out of scope of the present document. We ass kmsKeyID: ``` + !!! tip + + If you are using AWS PrivateLink, the s3 endpoint needs to be specified explicitly. You can use the option `endpointUrl` for this scope, like in the following example: + + ```yaml + ... + s3: + region: us-west-2 + bucket: pbm-test-bucket + prefix: data/pbm/backup + endpointUrl: https://your-endpoint-url-here + ... + ``` + + This is the sample configuration for Microsoft Azure Blob storage: ```yaml From 3172a10678cd04ca0b32f1648519c36b017ea8e6 Mon Sep 17 00:00:00 2001 From: Anastasia Alexandrova Date: Fri, 24 Nov 2023 17:17:05 +0100 Subject: [PATCH 2/5] PBM-1214 Dixed Docker instructions (#144) --- docs/install/docker.md | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/docs/install/docker.md b/docs/install/docker.md index dd68efe8..e71bb817 100644 --- a/docs/install/docker.md +++ b/docs/install/docker.md @@ -10,6 +10,11 @@ For more information about using Docker, see the [Docker Docs](https://docs.dock By default, Docker will pull the image from Docker Hub if it is not available locally. +## Prerequisites + +* You need to deploy MongoDB or Percona Server for MongoDB. See [what MongoDB deployments are supported](../details/deployments.md). +* [Create the pbm user](initial-setup.md#create-the-pbm-user) in your deployment. You will need this user credentials to start Percona Backup for MongoDB container. + ## Start Percona Backup for MongoDB Start Percona Backup for MongoDB container with the following command: @@ -23,7 +28,7 @@ Where: * `container-name` is the name you want to assign to your container. * `PBM_MONGODB-URI` is a [MongoDB Connection URI](https://docs.mongodb.com/manual/reference/connection-string/) string used to connect to MongoDB nodes. See the [Initial setup](initial-setup.md) how to create the PBM user. -* `tag-multi` is the tag specifying the version you need. For example, `2.3.0-multi`. The `multi` part of the tag serves to identify the architecture (x86_64 or ARM64) and pull the respective image. See the [full list of tags](https://hub.docker.com/r/perconalab/percona-backup-mongodb/tags). +* `tag-multi` is the tag specifying the version you need. For example, `{{release}}-multi`. The `multi` part of the tag serves to identify the architecture (x86_64 or ARM64) and pull the respective image. See the [full list of tags](https://hub.docker.com/r/perconalab/percona-backup-mongodb/tags). Note that every MongoDB node (including replica set secondary members and config server replica set nodes) requires a separate instance of Percona Backup for MongoDB. Thus, a typical, 3-node MongoDB replica set requires three instances of Percona Backup for MongoDB. @@ -34,16 +39,22 @@ Percona Backup for MongoDB requires the remote storage where to store data. Use 1. Start a Bash session: ```{.bash data-prompt="$"} - $ docker run --name bash + $ docker exec -it -u root --name bash ``` -2. Create a YAML configuration file: +2. Download the editor of your choice. In this example, let's use Vim + + ```{.bash data-prompt="$"} + $ microdnf install vim + ``` + +3. Create a YAML configuration file: ```{.bash data-prompt="$"} - $ touch /tmp/pbm_config.yaml + $ vim /tmp/pbm_config.yaml ``` -3. Specify remote storage parameters in the config file. The following example is for S3-compatible backup storage. Check what [other storages are supported](../details/storage-configuration.md): +4. Specify remote storage parameters in the config file. The following example is for S3-compatible backup storage. Check what [other storages are supported](../details/storage-configuration.md) and [examples of storage configurations](../details/storage-config-example.md): ```yaml storage: @@ -56,12 +67,14 @@ Percona Backup for MongoDB requires the remote storage where to store data. Use secret-access-key: ``` -4. Upload the config file: +5. Upload the config file: ```{.bash data-prompt="$"} $ pbm config --file /tmp/pbm_config.yaml ``` + The command output displays your uploaded configuration. + ## Run Percona Backup for MongoDB Percona Backup for MongoDB command line utility (`pbm`) provides the set of commands to control backups: create, restore, cancel backups, etc. @@ -69,7 +82,7 @@ Percona Backup for MongoDB command line utility (`pbm`) provides the set of comm For example, to start a backup, use the following command: ```{.bash data-prompt="$"} -$ docker run --name pbm backup +$ docker exec -it --name pbm backup ``` where `` is the name you assigned to the container and `pbm backup` is the command to start a backup. From a311dd53ab9769cd3241938382d92aec60a78c25 Mon Sep 17 00:00:00 2001 From: Anastasia Alexandrova Date: Mon, 4 Dec 2023 13:58:02 +0100 Subject: [PATCH 3/5] PBM-1195 Added endpoint config option to Azure config file (#146) * PBM-1195 Added endpoint config option to Azure config file modified: docs/reference/configuration-options.md --------- Co-authored-by: Dmytro Zghoba --- docs/reference/configuration-options.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/reference/configuration-options.md b/docs/reference/configuration-options.md index 37d41c24..bd3ba25f 100644 --- a/docs/reference/configuration-options.md +++ b/docs/reference/configuration-options.md @@ -250,6 +250,7 @@ storage: azure: account: container: + endpointUrl: prefix: credentials: key: @@ -269,6 +270,13 @@ The name of your storage account. The name of the storage container. See the [Container names](https://docs.microsoft.com/en-us/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata#container-names) for naming conventions. +### storage.azure.endpointUrl + +*Type*: string
+*Required*: NO + +The URL to access the data in Microsoft Azure Blob Storage. The default value is `https://.blob.core.windows.net`. + ### storage.azure.prefix *Type*: string
From 85e8b7a78bda41d8cdbff86e3400382128261967 Mon Sep 17 00:00:00 2001 From: Anastasia Alexandrova Date: Mon, 4 Dec 2023 13:58:23 +0100 Subject: [PATCH 4/5] PBM-1215 Removed install editor step as it is part of the image now (#147) docs/install/docker.md --- docs/install/docker.md | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/docs/install/docker.md b/docs/install/docker.md index e71bb817..b295f927 100644 --- a/docs/install/docker.md +++ b/docs/install/docker.md @@ -39,22 +39,16 @@ Percona Backup for MongoDB requires the remote storage where to store data. Use 1. Start a Bash session: ```{.bash data-prompt="$"} - $ docker exec -it -u root --name bash + $ docker exec -it --name bash ``` -2. Download the editor of your choice. In this example, let's use Vim - - ```{.bash data-prompt="$"} - $ microdnf install vim - ``` - -3. Create a YAML configuration file: +2. Create a YAML configuration file: ```{.bash data-prompt="$"} - $ vim /tmp/pbm_config.yaml + $ vi /tmp/pbm_config.yaml ``` -4. Specify remote storage parameters in the config file. The following example is for S3-compatible backup storage. Check what [other storages are supported](../details/storage-configuration.md) and [examples of storage configurations](../details/storage-config-example.md): +3. Specify remote storage parameters in the config file. The following example is for S3-compatible backup storage. Check what [other storages are supported](../details/storage-configuration.md) and [examples of storage configurations](../details/storage-config-example.md): ```yaml storage: @@ -67,7 +61,7 @@ Percona Backup for MongoDB requires the remote storage where to store data. Use secret-access-key: ``` -5. Upload the config file: +4. Upload the config file: ```{.bash data-prompt="$"} $ pbm config --file /tmp/pbm_config.yaml From ca2c6be25cf5e3222eec408da543ba102abd00bd Mon Sep 17 00:00:00 2001 From: Anastasia Alexandrova Date: Mon, 4 Dec 2023 13:58:39 +0100 Subject: [PATCH 5/5] Release notes 2.3.1 (#145) * Release notes 2.3.1 modified: docs/release-notes.md new file: docs/release-notes/2.3.1.md modified: mkdocs-base.yml modified: variables.yml --- docs/release-notes.md | 1 + docs/release-notes/2.3.1.md | 26 ++++++++++++++++++++++++++ mkdocs-base.yml | 3 ++- variables.yml | 2 +- 4 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 docs/release-notes/2.3.1.md diff --git a/docs/release-notes.md b/docs/release-notes.md index ab524345..3810cd52 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -1,5 +1,6 @@ # Percona Backup for MongoDB release notes +* [Percona Backup for MongoDB 2.3.1](release-notes/2.3.1.md) * [Percona Backup for MongoDB 2.3.0](release-notes/2.3.0.md) * [Percona Backup for MongoDB 2.2.1](release-notes/2.2.1.md) * [Percona Backup for MongoDB 2.2.0](release-notes/2.2.0.md) diff --git a/docs/release-notes/2.3.1.md b/docs/release-notes/2.3.1.md new file mode 100644 index 00000000..6cd00691 --- /dev/null +++ b/docs/release-notes/2.3.1.md @@ -0,0 +1,26 @@ +# Percona Backup for MongoDB 2.3.1 (2023-12-04) + +[Installation](../installation.md){.md-button} + + +Percona Backup for MongoDB is a distributed, low-impact solution for consistent backups of MongoDB sharded clusters and replica sets. This is a tool for creating consistent backups across a MongoDB sharded cluster (or a non-sharded replica set), and for restoring those backups to a specific point in time. + +## Release Highlights + +* Added support for Percona Server for MongoDB 7.0. +* The ability to define custom endpoints when using Microsoft Azure Blob Storage for backups +* Improved PBM Docker image to allow making physical backups with the shared `mongodb` data volume +* Updated Golang libraries that include fixes for the security vulnerability CVE-2023-39325. + + +## Improvements + +* [PBM-1195](https://jira.percona.com/browse/PBM-1195) - Allow custom endpointUrl for Azure storage +* [PBM-1205](https://jira.percona.com/browse/PBM-1205) - Change the user in PBM Docker image to `mongod` + + +## Bugs Fixed + +* [PBM-1193](https://jira.percona.com/browse/PBM-1193) - Fixed the `pbm-agent` failure when the connection to PSMDB is lost + + diff --git a/mkdocs-base.yml b/mkdocs-base.yml index 73b9cd93..01cd4c2a 100644 --- a/mkdocs-base.yml +++ b/mkdocs-base.yml @@ -110,7 +110,7 @@ plugins: with-pdf: # https://github.com/orzih/mkdocs-with-pdf output_path: '_pdf/PerconaBackupforMongoDB.pdf' cover_title: 'Backup for MongoDB Documentation' - cover_subtitle: 2.3.0 (September 25, 2023) + cover_subtitle: 2.3.1 (December 4, 2023) author: 'Percona Technical Documentation Team' cover_logo: docs/_images/Percona_Logo_Color.png debug_html: false @@ -139,6 +139,7 @@ nav: - Home: index.md - Release notes: - "Release notes index": "release-notes.md" + - release-notes/2.3.1.md - release-notes/2.3.0.md - release-notes/2.2.1.md - release-notes/2.2.0.md diff --git a/variables.yml b/variables.yml index 5ab1d988..1e29025b 100644 --- a/variables.yml +++ b/variables.yml @@ -1,6 +1,6 @@ # PBM Variables set for HTML output # See also mkdocs.yml plugins.with-pdf.cover_subtitle and output_path -release: '2.3.0' +release: '2.3.1' version: '2.3'