Backups
Backups: Data Protection and Disaster Recovery for rConfig V8
Section titled “Backups: Data Protection and Disaster Recovery for rConfig V8”System backups provide comprehensive protection for your rConfig V8 deployment by creating complete snapshots of your configuration data, application files, and database. While rConfig V8 offers built-in backup capabilities, organizations can leverage their existing infrastructure, such as VM snapshots, enterprise backup solutions, or filesystem-level backups, as alternatives or complementary protection strategies.
When to Use This Page
Section titled “When to Use This Page”Use this page to run a one-off backup, set up a recurring backup schedule, plan storage capacity, or troubleshoot a backup job that failed. If you need to actually restore from a backup, see Restoring from Backup below, which requires rConfig support.
Enterprise Backup Alternatives
Section titled “Enterprise Backup Alternatives”Prerequisites
Section titled “Prerequisites”- PostgreSQL users only: the
pg_dumputility must be installed on the operating system. MySQL users do not require additional utilities, asmysqldumpis included with standard MySQL installations. - Sufficient disk space: the backup destination must have adequate free space to store compressed archives (typically 2 to 3 times the size of your configuration repository plus database).
- Queue manager operational: Horizon must be running to process backup jobs (see Horizon Queue Manager).
- Write permissions: the rConfig application must have write access to the backup destination directory (default:
/var/www/html/rconfig8/current/storage/app/rconfig/backups).
Understanding rConfig Backups
Section titled “Understanding rConfig Backups”What Gets Backed Up
Section titled “What Gets Backed Up”rConfig system backups capture three essential components in a single compressed archive:
- Storage directory: all application data under
/var/www/html/rconfig8/current/storage/, including the configuration repository. - Database dump: a complete export of the rConfig database (MySQL or PostgreSQL format).
- .env file: the environment configuration file containing application settings and database connection details.
This comprehensive approach ensures that a single backup file contains everything needed to restore a complete rConfig instance, eliminating the complexity of coordinating multiple backup sources during recovery operations.
How System Backups Work
Section titled “How System Backups Work”When a backup is initiated (manually or via scheduled task), the system:
- Queues the backup job: the request is sent to Horizon for processing.
- Creates the database dump: generates a complete database export using native tools (
mysqldumporpg_dump). - Archives the storage directory: compresses
storage/, which includes the configuration repository, and the.envfile into the same package. - Generates a compressed package: creates a ZIP archive named
rConfigBackup_<timestamp>.zip, for examplerConfigBackup_2026-07-08-14-30-00.zip. - Stores the backup: saves the archive to the configured destination, either the local
rconfigdisk or an FTP server.
The queue-based architecture ensures backup operations don’t interfere with critical rConfig functions like device polling or configuration downloads.
Backup Storage Capacity Planning
Section titled “Backup Storage Capacity Planning”The Backups page (System Settings → Data Management → Backups) shows a Backup Status card at the top with:
- Backup Destination badge: Local disk (
rconfig) or FTP. - Last Backup: when the most recent backup completed.
- Disk Percent Used and Disk Free Space: capacity on the backup destination.
- Total Backup Size and Total Files: cumulative storage consumed by stored backups.
- A Clean button to run the cleanup strategy immediately.
Organizations should monitor these metrics regularly to prevent backup failures due to insufficient storage capacity. Backup size grows proportionally with the number of managed devices, configuration file sizes and retention periods, database growth over time, and backup retention policies.
Running Manual Backups
Section titled “Running Manual Backups”Creating a Backup On-Demand
Section titled “Creating a Backup On-Demand”To execute an immediate backup:
- Navigate to Backups (System Settings → Data Management → Backups).
- Review the Backup Status card at the top of the page.
- Click the Start Backup button.
- The system queues the backup job and returns control immediately.
- Refresh the page after 1 to 5 minutes (depending on data volume) to see the new backup file in the list.
The backup filename follows the pattern rConfigBackup_<Y-m-d-H-i-s>.zip, for example rConfigBackup_2026-07-08-14-30-00.zip.
Understanding Backup Processing Time
Section titled “Understanding Backup Processing Time”Backup duration varies based on several factors:
- Queue depth: number of pending jobs Horizon is processing.
- Configuration repository size: total volume of downloaded device configurations.
- Database size: number of devices, policies, and historical compliance records.
- System resources: available CPU, memory, and disk I/O capacity.
For deployments with 1,000+ devices or 100GB+ configuration repositories, consider scheduling backups during maintenance windows to avoid resource contention with polling operations.
Configuring Scheduled Backups
Section titled “Configuring Scheduled Backups”Setting Up Automated Backup Tasks
Section titled “Setting Up Automated Backup Tasks”Regular automated backups are essential for production environments. To configure scheduled backups:
- From the Backups page, click the Schedule Backup button. This takes you to Tasks, the same place covered in Scheduled Tasks.
- Create a new task and select the Other Tasks → Full System Backup command (
backup:run). This task type only needs a schedule, it has no other options to configure. - Set the cron schedule, choosing a maintenance window with minimal system activity.
- Save and ensure the task is enabled.
Recommended Backup Schedules
Section titled “Recommended Backup Schedules”Consider these scheduling strategies based on your environment:
Production environments with frequent changes:
- Daily backups during off-peak hours (for example, 2:00 AM local time).
- Retain 7 daily backups for recent recovery needs.
- Weekly backups retained for 4 weeks for longer-term recovery.
Stable environments with infrequent changes:
- Weekly backups during maintenance windows.
- Retain 4 to 6 weekly backups.
- Monthly backups archived to long-term storage.
High-availability or mission-critical deployments:
- Twice-daily backups (before and after peak configuration change windows).
- Coordinate rConfig backups with VM-level snapshots for layered protection.
- Test restore procedures quarterly.
Managing Backup Files
Section titled “Managing Backup Files”Downloading Backups
Section titled “Downloading Backups”To download a backup file for offsite storage or migration:
- Navigate to the Backups page.
- Locate the desired backup in the file list.
- Click on the backup filename.
- The ZIP archive downloads to your local system.
Store downloaded backups in a secure location separate from your rConfig server to protect against site-wide failures or storage system corruption.
Deleting Individual Backups
Section titled “Deleting Individual Backups”To remove specific backup files:
- Navigate to the Backups page.
- Locate the backup file to delete.
- Click the delete icon next to the filename.
- Confirm the deletion when prompted.
Delete obsolete backups to reclaim disk space, but ensure you maintain adequate retention for your recovery requirements.
Setting the Backup Retention (Cleanup) Strategy
Section titled “Setting the Backup Retention (Cleanup) Strategy”The retention policy controls which backups are kept automatically. To configure it:
- Navigate to System Settings → System Management → Backup Settings.
- Set the retention values: how many days to keep all backups, how many daily/weekly/monthly/yearly backups to retain, and the maximum megabytes to use before the oldest backups are deleted.
- Save. These values are read the next time a cleanup runs, whether triggered by the Clean button on the Backups page, a scheduled Clean Backups task, or an automatic cleanup pass.
Typical retention policies:
- Keep daily backups for 7 days.
- Keep weekly backups for 4 weeks.
- Keep monthly backups for 6 to 12 months.
Restoring from Backup
Section titled “Restoring from Backup”Restore Process Overview
Section titled “Restore Process Overview”While the detailed restore procedure requires support coordination, understanding the general process helps organizations plan for recovery scenarios:
- Transfer backup file: provide the backup ZIP file to rConfig support.
- Extract archive components: support extracts application files, database dump, and configurations.
- Restore database: import the database dump to a clean database instance.
- Restore application files: deploy extracted application files to
/var/www/html/rconfig8/current. - Restore configurations: copy configuration files to the repository location.
- Verify integrity: confirm application functionality, database connectivity, and configuration accessibility.
- Resume operations: re-enable scheduled tasks and resume normal operations.
Restoration Time Planning
Section titled “Restoration Time Planning”Recovery time objectives (RTO) vary based on:
- Backup file size: larger archives take longer to transfer and extract.
- Database restoration: large databases (50GB+) require extended import time.
- Verification procedures: thorough integrity checks add time but ensure reliability.
- Support availability: coordinate with support schedules for planned maintenance.
Organizations with stringent RTO requirements should consider VM-level snapshots for rapid infrastructure recovery, database replication for high-availability scenarios, and pre-staged backup files in multiple locations.
Troubleshooting
Section titled “Troubleshooting”Symptom: Backup Job Never Completes
Section titled “Symptom: Backup Job Never Completes”Diagnosis: check Horizon status and backup job progress:
# Check Horizon queue statusphp /var/www/html/rconfig8/current/artisan horizon:status
# Check for failed jobsphp /var/www/html/rconfig8/current/artisan queue:failedPossible causes:
- Horizon is not running.
- Insufficient disk space on the backup destination.
- Database connection timeout during the dump operation.
- File permission issues preventing archive creation.
Resolution steps:
-
Check whether Horizon is running under Supervisor:
Terminal window sudo supervisorctl status horizon -
If it isn’t running, restart it:
Terminal window sudo supervisorctl restart horizon:*See Horizon Queue Manager for the full Supervisor setup.
-
Check disk space:
Terminal window df -h /var/www/html/rconfig8/current/storage/app/rconfig/backups -
Verify write permissions:
Terminal window ls -la /var/www/html/rconfig8/current/storage/app/rconfig/backupssudo chown -R www-data:www-data /var/www/html/rconfig8/current/storage/app/rconfig/backups -
Review Laravel logs for specific errors:
Terminal window tail -f /var/www/html/rconfig8/current/storage/logs/laravel.log
Symptom: PostgreSQL Backup Fails with “pg_dump: command not found”
Section titled “Symptom: PostgreSQL Backup Fails with “pg_dump: command not found””Diagnosis: PostgreSQL client utilities are not installed.
Possible causes:
- PostgreSQL server installed without client tools.
pg_dumpbinary not in the system PATH.- Incorrect PostgreSQL version installed.
Resolution steps:
-
Install PostgreSQL client utilities (Ubuntu/Debian):
Terminal window sudo apt-get updatesudo apt-get install postgresql-client-16 -
Install PostgreSQL client utilities (RHEL/CentOS):
Terminal window sudo dnf install postgresql16 -
Verify installation:
Terminal window which pg_dumppg_dump --version -
Retry the backup operation after confirming
pg_dumpis available.
Symptom: Backup File Size Much Larger Than Expected
Section titled “Symptom: Backup File Size Much Larger Than Expected”Diagnosis: review backup contents to identify large components.
Possible causes:
- Configuration repository contains historical versions accumulating over time.
- Database includes large audit logs or compliance history tables.
- Application files include unnecessary temporary or cache files.
Resolution steps:
-
Extract and examine backup contents:
Terminal window unzip -l rConfigBackup_2026-07-08-14-30-00.zip | sort -k4 -n -r | head -20 -
Review configuration retention policies and purge obsolete versions.
-
Archive or truncate historical compliance data if not required.
-
Clear the application cache before creating backups:
Terminal window php /var/www/html/rconfig8/current/artisan cache:clear
Symptom: FTP Backup Transfer Fails
Section titled “Symptom: FTP Backup Transfer Fails”Diagnosis: check the FTP configuration and network connectivity.
Possible causes:
- Incorrect FTP credentials in rConfig settings.
- Network firewall blocking the FTP connection.
- FTP server disk space exhausted.
- Passive vs. active FTP mode mismatch.
Resolution steps:
-
Verify the FTP settings in System Settings → System Management → Backup Settings.
-
Test FTP connectivity manually:
Terminal window ftp ftp.yourserver.com# Enter credentials and attempt file transfer -
Check firewall rules for FTP ports (21 for control, 20 or a passive range for data).
-
Verify the FTP server has adequate free space.
-
Review Laravel logs for specific FTP error messages.
-
Consider switching FTP mode (active/passive) in the FTP server configuration.
Common Gotchas
Section titled “Common Gotchas”Best Practices
Section titled “Best Practices”Security
Section titled “Security”Protect backup files with encryption: backup archives contain sensitive configuration data including credentials and network topology. rConfig can encrypt the archive itself if a BACKUP_ARCHIVE_PASSWORD is configured; otherwise, encrypt manually before transferring to offsite storage or an FTP server, for example with gpg:
gpg --symmetric --cipher-algo AES256 rConfigBackup_2026-07-08-14-30-00.zipRestrict access to backup storage: limit file system permissions on the backup directory to the rConfig application user only:
sudo chmod 700 /var/www/html/rconfig8/current/storage/app/rconfig/backupsUse secure transfer protocols: if transferring backups offsite, prefer SFTP or SCP over FTP for encrypted data transfer.
Audit backup file access: monitor access to backup files through system logs to detect unauthorized retrieval attempts.
Performance
Section titled “Performance”Schedule backups during maintenance windows: backup operations consume system resources (CPU for compression, disk I/O for reading configurations and database). Schedule automated backups during periods of low system activity to avoid impacting device polling or user operations.
Implement backup rotation policies: excessive backup retention exhausts disk space and complicates backup management. A typical policy is to retain 7 daily, 4 weekly, and 6 monthly backups.
Monitor backup storage capacity: keep an eye on the Backup Status card’s Disk Percent Used to avoid backup failures caused by insufficient space.
Consider differential or incremental strategies for large deployments: organizations managing 5,000+ devices or 500GB+ configuration repositories should contact rConfig support about enterprise backup strategies that reduce backup size and duration.
Maintenance
Section titled “Maintenance”Review backup logs regularly: even successful backups may include warnings about skipped files or partial transfers. Review logs weekly to identify potential issues before they impact recovery operations.
Validate backup file integrity: periodically download and extract backup files to verify archive integrity. Corrupted backup files discovered during disaster recovery are too late to address.
Update backup strategies as environment grows: backup duration and storage requirements increase as your device inventory and configuration repository grow. Re-evaluate backup schedules, retention policies, and storage capacity quarterly.
Archive long-term backups offsite: for compliance or disaster recovery requirements, archive monthly backups to offsite storage facilities or cloud storage services.
Quick Reference
Section titled “Quick Reference”Backup Component Checklist
Section titled “Backup Component Checklist”| Component | Location | Included in Backup |
|---|---|---|
| .env file | /var/www/html/rconfig8/current/.env | Yes |
| Configuration repository | /var/www/html/rconfig8/current/storage | Yes |
| Database dump | MySQL or PostgreSQL database | Yes |
Common Backup Commands
Section titled “Common Backup Commands”# Manually trigger a backup (runs the backup job immediately)php /var/www/html/rconfig8/current/artisan backup:run
# Check Horizon status (backup job processor)php /var/www/html/rconfig8/current/artisan horizon:status
# View failed backup jobsphp /var/www/html/rconfig8/current/artisan queue:failed
# Check backup directory disk spacedf -h /var/www/html/rconfig8/current/storage/app/rconfig/backups
# List backup files with sizesls -lh /var/www/html/rconfig8/current/storage/app/rconfig/backups
# Verify PostgreSQL client toolswhich pg_dumppg_dump --versionSummary
Section titled “Summary”rConfig V8’s backup system provides comprehensive protection for your network configuration management deployment through automated, scheduled backups that capture application files, configuration repositories, and database contents in single compressed archives. Organizations can leverage this built-in capability alongside existing infrastructure backup solutions to create layered protection strategies.
Key takeaways for effective backup management:
- Automate backup schedules during maintenance windows to ensure consistent protection without manual intervention.
- Monitor storage capacity proactively to prevent backup failures due to insufficient disk space.
- Test restore procedures regularly to validate backup integrity and familiarize staff with recovery workflows.
- Coordinate with support for restoration operations to ensure proper database reconciliation and application integrity.
- Implement retention policies that balance recovery requirements with storage efficiency.
Related Documentation
Section titled “Related Documentation”- Scheduled Tasks - configure automated backup and cleanup schedules.
- Horizon Queue Manager - the queue system that processes backup jobs.
- rConfig V8 Pro Installation Guide - database setup and system requirements affecting backup performance.