Skip to content
This repository was archived by the owner on May 12, 2025. It is now read-only.

Commit 5db73df

Browse files
Add parameter to define number of days to store hot and logical backups
1 parent 1948e7a commit 5db73df

File tree

3 files changed

+13
-3
lines changed

3 files changed

+13
-3
lines changed

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,7 @@ mongodb_backup_script_path: "/etc/mongodb-backup.sh"
197197
mongodb_backup_log_path: "{{ mongodb_systemlog_path|dirname }}/backup_mongod.log"
198198
mongodb_backup_path: "{{ mongodb_storage_dbpath }}/backup" # Local path to mongodump, or PBM path to backups # Do not use "/" in the end of directories
199199
mongodb_backup_path_hot_storage : "{{ mongodb_backup_path }}/storage" # Path to storage mongodump backup, or path to PBM Hot Backups when use PBM # Do not use "/" in the end of directories
200+
mongodb_backup_store_days: 0 # if the value is 0, the script will not copy the backups to the storage directory, and will keep only one local copy (mongodump).
200201
mongodb_backup_parameters: "--mongodb-uri \"mongodb://{{ mongodb_backup_user_name }}:{{ mongodb_backup_user_password }}@{{ inventory_hostname }}:{{ mongodb_net_port }}/admin?replicaSet={{ mongodb_replication_replset }}\"" # Mongodump: "--gzip --forceTableScan"
201202
mongodb_backup_cron_time:
202203
hour: 3
@@ -210,6 +211,10 @@ mongodb_backup_logrotate: |
210211
create 644
211212
}
212213
214+
# PBM Backup
215+
mongodb_backup_logical_store_days: "{{ mongodb_backup_store_days }}" # Number of days to store pbm logical backups
216+
mongodb_backup_hot_store_days: "{{ mongodb_backup_store_days }}" # Number of days to storage hot backups in disk
217+
213218
# Enable PBM Point-in-Time Recovery
214219
mongodb_backup_pbm_pitr_enable: true
215220
```

defaults/main.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,5 +156,9 @@ mongodb_backup_logrotate: |
156156
create 644
157157
}
158158
159+
# PBM Backup
160+
mongodb_backup_logical_store_days: "{{ mongodb_backup_store_days }}" # Number of days to store pbm logical backups
161+
mongodb_backup_hot_store_days: "{{ mongodb_backup_store_days }}" # Number of days to storage hot backups in disk
162+
159163
# Enable PBM Point-in-Time Recovery
160164
mongodb_backup_pbm_pitr_enable: true

templates/mongodb.pbpm_backup.sh.j2

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,14 @@ PATH=$PATH:/sbin:/bin:/usr/sbin:/usr/bin
88
# MongoDB Script Backup Variables
99
BACKUP_LOG_PATH="{{ mongodb_backup_log_path }}"
1010
BACKUP_PHYSICAL_PATH="{{ mongodb_backup_path_hot_storage }}"
11-
BACKUP_STORAGE_DAYS={{ mongodb_backup_store_days }}
11+
BACKUP_LOGICAL_STORAGE_DAYS={{ mongodb_backup_logical_store_days }}
12+
BACKUP_HOT_STORAGE_DAYS={{ mongodb_backup_hot_store_days }}
1213
MONGO_BACKUP_USER="{{ mongodb_backup_user_name }}"
1314
MONGO_BACKUP_PASSWORD="{{ mongodb_backup_user_password }}"
1415
MONGO_BACKUP_PARAMETERS="{{ mongodb_backup_parameters }}"
1516
BACKUP_CURRENT_DATE=$(date +%Y%m%d)
16-
BACKUP_DELETE_DATE=$(date -d "${BACKUP_STORAGE_DAYS} days ago" "+%Y%m%d")
17-
BACKUP_PBM_DELETE_DATE=$(date -d "${BACKUP_STORAGE_DAYS} days ago" "+%Y-%m-%d")
17+
BACKUP_PBM_DELETE_DATE=$(date -d "${BACKUP_LOGICAL_STORAGE_DAYS} days ago" "+%Y-%m-%d")
18+
BACKUP_HOT_DELETE_DATE=$(date -d "${BACKUP_HOT_STORAGE_DAYS} days ago" "+%Y%m%d")
1819

1920
function print {
2021
mkdir -p "$(dirname "${BACKUP_LOG_PATH}")"

0 commit comments

Comments
 (0)