diff options
| author | Alexey Efimov <[email protected]> | 2026-06-30 17:01:40 +0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-06-30 15:01:40 +0500 |
| commit | e668d237bdec3b4e49197b8f3a166353ee25a845 (patch) | |
| tree | 31eb0b1a6dca77f01c320a110c28770997ecda49 | |
| parent | 898d03f5a13706e10761e8a318694bf554c544e9 (diff) | |
Address YDB EM S3 backup docs feedback (#44611)
Co-authored-by: Claude Opus 4.8 (1M context) <[email protected]>
| -rw-r--r-- | ydb/docs/en/core/devops/enterprise-manager/s3-backups.md | 17 | ||||
| -rw-r--r-- | ydb/docs/ru/core/devops/enterprise-manager/s3-backups.md | 17 |
2 files changed, 20 insertions, 14 deletions
diff --git a/ydb/docs/en/core/devops/enterprise-manager/s3-backups.md b/ydb/docs/en/core/devops/enterprise-manager/s3-backups.md index 0915845322a..de2d9226c4a 100644 --- a/ydb/docs/en/core/devops/enterprise-manager/s3-backups.md +++ b/ydb/docs/en/core/devops/enterprise-manager/s3-backups.md @@ -26,9 +26,8 @@ backup_targets: - "em" settings: s3: - endpoint: s3.mds.yandex.net - bucket: enterprise-manager-backups-test - scheme: 1 + endpoint: s3.example.net + bucket: ydb-em-backups access_key: "<encrypted access key>" secret_key: "<encrypted secret key>" compression: "zstd" @@ -40,11 +39,15 @@ Parameter | Description `tags.locations` | List of `location_id` values this target applies to. A database is backed up to this target if its `location_id` is included in the list. For YDB EM, this is usually `em`, matching `locations[].database_location_id` and `meta_location_id`. `settings.s3.endpoint` | S3-compatible storage endpoint. `settings.s3.bucket` | Bucket name for backups. -`settings.s3.scheme` | Connection protocol: `1` for HTTP, `2` for HTTPS. If omitted, HTTPS is used. Internal MDS storage at `s3.mds.yandex.net` typically uses HTTP. -`settings.s3.access_key` | Encrypted S3 access key. -`settings.s3.secret_key` | Encrypted S3 secret key. +`settings.s3.scheme` | Connection protocol: `1` for HTTP, `2` for HTTPS. If omitted, HTTPS is used. +`settings.s3.access_key` | Encrypted [S3 access key](#master-key). +`settings.s3.secret_key` | Encrypted [S3 secret key](#master-key). `settings.s3.compression` | Compression algorithm for exported data. The default is `zstd`. Remove this parameter if compression is not required. +A **location** is a logical group of databases in YDB EM that each database belongs to through its `location_id`. Typically, a location corresponds to a single placement zone of databases — for example, a data center or availability zone where they run — but a location can also be used for logical separation, such as by environment (`prod`, `test`). For example, if databases are deployed across two data centers, you can assign them different locations and send backups from each data center to its own S3 storage. A typical YDB EM installation uses a single location with the value `em`, which matches the `locations[].database_location_id` and `meta_location_id` fields in the Control Plane configuration. + +`tags.locations` is useful when one Control Plane manages databases from several locations and different locations must use different backup storage targets. The worker selects a target by the database `location_id`: if the database `location_id` is included in `tags.locations`, this target is used for backups. For example, this lets you send backups from different zones or environments to different S3 buckets. + {% note info %} Instead of binding a target to `location_id`, you can use `explicit_backup_targets` with `by_database_path` or `by_cloud_id` rules if a specific database or cloud must be assigned to a specific target. @@ -86,7 +89,7 @@ ydb-em-cp admin crypto decrypt --body '<encrypted value>' --cfg-file <ydb-em-cp- ## Configuring schedule and retention {#schedule-and-ttl} -The target defines where backups are stored. The schedule and retention period are configured separately in `locations[].default_backup_config`: +The target defines where backups are stored. The schedule and retention period are configured separately in `locations[].default_backup_config`. This is the default backup configuration for databases in the specified location. If an individual backup configuration is set for a specific database in YDB EM, it can differ from these defaults. ```yaml locations: diff --git a/ydb/docs/ru/core/devops/enterprise-manager/s3-backups.md b/ydb/docs/ru/core/devops/enterprise-manager/s3-backups.md index a02e430e5a9..19f82d068a5 100644 --- a/ydb/docs/ru/core/devops/enterprise-manager/s3-backups.md +++ b/ydb/docs/ru/core/devops/enterprise-manager/s3-backups.md @@ -26,9 +26,8 @@ backup_targets: - "em" settings: s3: - endpoint: s3.mds.yandex.net - bucket: enterprise-manager-backups-test - scheme: 1 + endpoint: s3.example.net + bucket: ydb-em-backups access_key: "<encrypted access key>" secret_key: "<encrypted secret key>" compression: "zstd" @@ -40,11 +39,15 @@ backup_targets: `tags.locations` | Список `location_id`, для которых применяется этот target. База данных будет копироваться в этот target, если ее `location_id` есть в списке. Для YDB EM обычно используется значение `em`, соответствующее `locations[].database_location_id` и `meta_location_id`. `settings.s3.endpoint` | Адрес S3-совместимого хранилища. `settings.s3.bucket` | Имя бакета для резервных копий. -`settings.s3.scheme` | Протокол подключения: `1` — HTTP, `2` — HTTPS. Если параметр не задан, используется HTTPS. Для внутреннего MDS `s3.mds.yandex.net` обычно используется HTTP. -`settings.s3.access_key` | Зашифрованный ключ доступа к S3. -`settings.s3.secret_key` | Зашифрованный секретный ключ доступа к S3. +`settings.s3.scheme` | Протокол подключения: `1` — HTTP, `2` — HTTPS. Если параметр не задан, используется HTTPS. +`settings.s3.access_key` | Зашифрованный [ключ доступа к S3](#master-key). +`settings.s3.secret_key` | Зашифрованный [секретный ключ доступа к S3](#master-key). `settings.s3.compression` | Алгоритм сжатия экспортируемых данных. По умолчанию используется `zstd`. Удалите параметр, если сжатие не требуется. +**Location** — это логическая группа баз данных в YDB EM, к которой каждая база привязана через идентификатор `location_id`. Как правило, одна location соответствует одной зоне размещения баз данных — например, дата-центру или зоне доступности, в которой они работают, — но location можно использовать и для логического разделения, например по окружениям (`prod`, `test`). Например, если базы данных развёрнуты в двух дата-центрах, им можно назначить разные location и направлять резервные копии из каждого дата-центра в своё S3-хранилище. Для типовой установки YDB EM используется единственная location со значением `em`, которому соответствуют поля `locations[].database_location_id` и `meta_location_id` в конфигурации Control Plane. + +`tags.locations` нужен, когда один Control Plane управляет базами из нескольких location и для разных location нужно использовать разные хранилища резервных копий. Worker выбирает target по `location_id` базы: если `location_id` базы входит в `tags.locations`, для резервного копирования используется этот target. Так можно, например, направлять бэкапы из разных зон или окружений в разные S3-бакеты. + {% note info %} Вместо привязки target к `location_id` можно использовать `explicit_backup_targets` с правилами `by_database_path` или `by_cloud_id`, если конкретную базу данных или облако нужно закрепить за определенным target. @@ -86,7 +89,7 @@ ydb-em-cp admin crypto decrypt --body '<encrypted value>' --cfg-file <ydb-em-cp- ## Настройка расписания и срока хранения {#schedule-and-ttl} -Target определяет, куда сохранять резервные копии. Расписание и срок хранения задаются отдельно, в блоке `locations[].default_backup_config`: +Target определяет, куда сохранять резервные копии. Расписание и срок хранения задаются отдельно, в блоке `locations[].default_backup_config`. Это конфигурация резервного копирования по умолчанию для баз данных в указанной location. Если для конкретной базы данных в YDB EM задана индивидуальная конфигурация резервного копирования, она может отличаться от этих значений по умолчанию. ```yaml locations: |
