Problem:
After creating an offline full backup with foremain-maintain, I am unable to restore due to missing files/config.
Expected outcome:
Able to preform a restore from created full backup
Foreman and Proxy versions:
2.5.4
Foreman and Proxy plugin versions:
foreman-tasks : 4.1.5
foreman rex 4.5.6
katello 4.1.4
Distribution and version:
CentOS 7.9.2009
Other relevant data:
[root@uscdc01tlsat020 ~]# foreman-maintain backup offline /mnt/backup
Starting backup: 2021-12-30 12:16:49 -0500
Running preparation steps required to run the next scenarios
Make sure Foreman DB is up:
/ Checking connection to the Foreman DB [OK]
Running Backup
Confirm turning off services is allowed:
WARNING: This script will stop your services.
Do you want to proceed?, [y(yes), q(quit)] y
[OK]
Prepare backup Directory:
Creating backup folder /mnt/backup/katello-backup-2021-12-30-12-16-49 [OK]
Check if the directory exists and is writable: [OK]
Generate metadata:
\ Saving metadata to metadata.yml [OK]
Detect features available in the local proxy: [OK]
disable active sync plans:
\ Total 0 sync plans are now disabled. [OK]
Add maintenance_mode chain to iptables: [OK]
Stop applicable services:
Stopping the following service(s):
rh-redis5-redis, postgresql, pulpcore-api, pulpcore-content, rh-redis5-redis, pulpcore-api.socket, pulpcore-content.socket, tomcat, dynflow-sidekiq@orchestrator, foreman, httpd, puppetserver, foreman.socket, dynflow-sidekiq@worker-1, dynflow-sidekiq@worker-hosts-queue-1, foreman-proxy
| stopping pulpcore-content.socket
Warning: postgresql.service changed on disk. Run ‘systemctl daemon-reload’ to reload units.
/ All services stopped [OK]
Backup config files:
- Collecting config files to backup [OK]
Backup Candlepin DB offline:
\ Collecting data from /var/opt/rh/rh-postgresql12/lib/pgsql/data/ [OK]
Backup Foreman DB offline:
Already done [OK]
Backup Pulpcore DB offline:
Already done [OK]
Start applicable services:
Starting the following service(s):
rh-redis5-redis, postgresql, pulpcore-api, pulpcore-content, rh-redis5-redis, tomcat, dynflow-sidekiq@orchestrator, foreman, httpd, puppetserver, dynflow-sidekiq@worker-1, dynflow-sidekiq@worker-hosts-queue-1, foreman-proxy
| starting rh-redis5-redis
Warning: postgresql.service changed on disk. Run ‘systemctl daemon-reload’ to reload units.
\ All services started [OK]
re-enable sync plans:
Total 0 sync plans are now enabled. [OK] |
---|
Remove maintenance_mode chain from iptables: [OK]
Compress backup data to save space:
- Compressing backup of Postgres DB [OK]
Done with backup: 2021-12-30 12:19:36 -0500
**** BACKUP Complete, contents can be found in: /mnt/backup/katello-backup-2021-12-30-12-16-49 ****
[root@uscdc01tlsat020 ~]# cd /mnt/backup/katello-backup-2021-12-30-12-16-49/
[root@uscdc01tlsat020 katello-backup-2021-12-30-12-16-49]# ll
total 240284
-rw-r–r-- 1 root root 1358994 Dec 30 12:17 config_files.tar.gz
-rw-r–r-- 1 root root 44900 Dec 30 12:17 metadata.yml
-rw-r–r-- 1 root root 244642660 Dec 30 12:18 pgsql_data.tar.gz
[root@uscdc01tlsat020 katello-backup-2021-12-30-12-16-49]# foreman-maintain restore /mnt/backup/katello-backup-2021-12-30-12-16-49/
Running Restore backup
Check if command is run as root user: [OK]
Validate backup has appropriate files: [FAIL]
The given directory does not contain the required files or has too many files
All backup directories contain: config_files.tar.gz
An online or remote database backup directory contains: mongo_dump, candlepin.dump, foreman.dump, pulpcore.dump
An offline backup directory contains: mongo_data.tar.gz, pgsql_data.tar.gz
A logical backup directory contains: mongo_dump, candlepin.dump, foreman.dump, pulpcore.dump, mongo_data.tar.gz, pgsql_data.tar.gz
Including pulp_data.tar is optional and will restore pulp data to the filesystem if included.
Only the following files were found: pgsql_data.tar.gz, config_files.tar.gz, metadata.yml
Scenario [Restore backup] failed.
The following steps ended up in failing state:
[restore-validate-backup]
Resolve the failed steps and rerun
the command. In case the failures are false positives,
use --whitelist=“restore-validate-backup”
Running Rescue Restore backup
[root@uscdc01tlsat020 katello-backup-2021-12-30-12-16-49]# ll
total 240284
-rw-r–r-- 1 root root 1358994 Dec 30 12:17 config_files.tar.gz
-rw-r–r-- 1 root root 44900 Dec 30 12:17 metadata.yml
-rw-r–r-- 1 root root 244642660 Dec 30 12:18 pgsql_data.tar.gz