This section provides a comprehensive guide to configuring and fine-tuning your JetBackup settings. By customizing these options, you can ensure JetBackup operates optimally within your specific server environment and aligns with your preferences. For visual guidance, you may refer to our detailed video tutorials.
General Settings
The General Settings section allows you to manage fundamental aspects of JetBackup’s operation, from logging and error reporting to directory paths and backup retention policies.
Debug Active
Activate detailed logging to allow JetBackup to generate more comprehensive logs. This includes additional informative data and PHP error messages, which can be invaluable for troubleshooting and diagnostics.
Error Reporting
When enabled, JetBackup automatically sends anonymous error reports via email to the JetApps support team. By activating this feature, you contribute directly to identifying bugs and enhancing the overall stability and performance of JetBackup.
End Users Can Use Damaged Backups
Enabling this option grants end-users the ability to view and utilize damaged backups. Please note that while these backups will be clearly marked as "damaged" on the administrator's interface, this status will not be visible to the end-users.
Community Languages CDN
This setting allows the use of community-contributed language translations directly from our Content Delivery Network (CDN) rather than relying on local translation files. Utilizing the CDN can provide access to the latest translations and improve performance for localized interfaces. For more information, CLICK HERE.
Workspace Directory
Specify the directory where JetBackup will store all temporary files generated during its operations. The default path is /usr/local/jetapps/usr/jetbackup5/workspace. To prevent potential issues with system performance, it is highly recommended to move the original folder to the new desired destination rather than simply creating a new directory.
Download Directory
Designate the directory JetBackup will use to store all file and/or directory downloads associated with any accounts. The default path is /usr/local/jetapps/usr/jetbackup5/downloads. To maintain optimal system performance, we recommend creating a new directory at the target destination and **not** moving the original folder.
Note for Plesk Installations: When modifying the download directory, the
pssaadmuser must have appropriate permissions to access the newly specified directory to enable backup downloads via JetBackup.
Delete Orphan Backups Older Than
Orphan backups are backup files from accounts that are no longer active or associated with any current account. When an account is terminated, all its associated backups are automatically flagged as orphan. JetBackup will automatically remove these orphan backups if their creation dates are older than the number of days specified in this field. The default retention period is 180 days.
Downloads TTL
Set the preferred number of days to retain downloads generated within JetBackup. The default value is 0 days, which means downloads will not be automatically deleted.
Days to Keep Logs History
Specify the duration, in days, for which JetBackup will retain system logs. The default retention period is 30 days.
Days to Keep Alerts
Define the number of days JetBackup will keep system alerts. The default retention period is 60 days.
Manual Backups Retain
Specify the maximum number of manually generated backups that JetBackup will maintain for each backup job. The maximum allowed is 99, with a default of 14 backups.
Manual Backups TTL
Set the number of days JetBackup will retain manually generated backups. The default value is 0 days, meaning manual backups will be kept indefinitely unless otherwise specified.
Time Format
Configure the time display format for the JetBackup user interface, choosing between a 12-hour or 24-hour based system. The default setting is 12-hour based (e.g., 11:00 PM).
Performance
The Performance settings allow you to optimize JetBackup’s resource utilization, influencing how efficiently backup, restore, and other tasks are executed on your server.
Concurrent System Tasks
Set the maximum number of concurrent system tasks, such as Backup Cleanup and System Integrity Checks, that can run simultaneously. It's important to note that for each account processed, JetBackup initiates a fork on the server. The maximum limit for concurrent accounts is 10.
Concurrent Restore / Download / Reindex Tasks
Define the maximum number of concurrent account restores, downloads, or destination reindex tasks that can operate at the same time. Similar to system tasks, JetBackup creates a fork on the server for each account being restored, downloaded, or reindexed. The maximum limit for concurrent accounts is 10.
Concurrent Backup / Clone Tasks
Specify the maximum number of concurrent account backups or account clone tasks that can run simultaneously. For each account involved in these operations, JetBackup will open a fork on the server. The maximum limit for concurrent accounts is 10.
Concurrent threads and destination workers are crucial for optimizing backup speed and reliability. They enable multiple connections to the storage destination, significantly accelerating the data transfer process. Destination workers play a vital role in managing these connections, ensuring data is transferred smoothly and efficiently. When configuring these settings, please consider your storage provider's rate limits. If you observe that your backup job transfer speeds are frequently being rate-limited, try reducing your threads and workers settings to 1 and then gradually increasing them to determine the optimal settings for your destination.
Backup Fork TTL
Set the maximum duration, in hours, that a Backup Fork is permitted to run. The fork will automatically terminate once it reaches the specified Time To Live (TTL), irrespective of its current operational status.
Note: Only enable this setting if you have a clear understanding of the time required for the largest account on your server to complete its backup. Setting this value too low could potentially result in some account backups being prematurely aborted.
Backup Cleanup & Integrity Check Schedule
Configure the frequency, in days, for the backup cleanup and integrity check task. This essential task performs cleanup of files marked for deletion and verifies the integrity of existing backups on the remote destination. Any empty account backup directories found will also be removed.
If any problems are detected with the backup integrity, the affected snapshot(s) will be marked as "damaged" in the UI. JetBackup will then ensure that any missing data detected from these damaged snapshots is uploaded during the subsequent scheduled backup run.
In cases where an index file is found to be invalid, JetBackup will attempt to repair it using the snapshot index files. If the snapshot index files are missing or corrupted, the entire snapshot directory, along with its associated export files, will be deleted.
The minimum frequency for this task is once per day, with a maximum interval of every 90 days. The default schedule is every 7 days.
Limit Accounts Downloads
Select the maximum number of downloads that you permit to be retained for each account.
Queue Priority Groups
Queue priority groups provide a mechanism to categorize and group accounts by priority, allowing you to fine-tune how JetBackup prioritizes tasks such as backups, restores, and downloads for individual accounts or groups of accounts. To manage existing queue priority groups or create new ones, click on the "Manage Queue Priority Groups" button.
To add a new queue priority group, click on "+Create New Queue Priority". On the subsequent page, you will need to specify a unique name for the queue priority group and assign a corresponding priority value. A lower value indicates a higher priority. After entering the details, click "Save".
For more detailed information on how to assign queue priority to individual accounts, please refer to the Manage Account documentation.
Queue Priority Settings Overview
This section outlines the options available for managing your queue priority groups.
- Manage Queue Priority: Click this option to modify the settings of an existing queue priority group.
- Delete Queue Priority: Use this to remove a queue priority group.
Note: Ensure that the queue priority group is not currently assigned to any account(s) and is not set as the default priority group before attempting to delete it.
- Set as Default: This option allows you to designate a specific priority group as the default value for new accounts or those without an assigned group.
Directory Queue Priority Group
Configure the queue priority group for directory-based tasks, establishing their prioritization in relation to account queue priority groups.
MySQL Settings
These settings control various aspects of MySQL database operations within JetBackup, affecting how databases are dumped and managed.
- MySQL Dump max allowed packet: Defines the maximum packet length that can be sent to or received from the MySQL server during dump operations.
- MySQL Dump force flag: Enables the dump process to continue even if an SQL error is encountered, preventing the entire operation from failing.
- MySQL Dump opt flag: This flag is equivalent to enabling
--add-drop-table,--add-locks,--create-options, and disabling--skip-optfor optimized dump behavior. - MySQL Dump skip lock table flag: Allows the dump process to proceed even if a table lock error occurs, which can be useful in certain scenarios.
Resource
The Resource settings enable you to impose server resource limits on JetBackup processes by utilizing CGROUPS. It is important to remember that 100% of CPU usage corresponds to one core. For more information on analyzing your current server load, please visit the Load WIKI.
CPU Limit
Limit the CPU usage of JetBackup processes. The minimum allowable limit is 5%, and the default setting is unlimited.
IO Read Limit
Set a limit on the Input/Output (IO) read usage for JetBackup processes. The default setting for this is unlimited.
IO Write Limit
Set a limit on the Input/Output (IO) write usage for JetBackup processes. The default setting for this is unlimited.
NOTE: Imposing limits on IO read/write operations can, counter-intuitively, lead to an increase in overall IO usage. On servers with constrained IO, it is highly recommended to adjust other backup settings, such as rsync bandwidth limits and concurrent tasks/threads, before considering the implementation of IO limits.
Restore
The Restore settings provide comprehensive control over how backups are restored, including the ability to define conditions, manage file permissions, and set limits.
Restore Conditions
Establish specific conditions that users must accept before executing any backup restore operations. These conditions ensure users acknowledge important terms or warnings prior to proceeding.
To create a new restore condition, navigate to "Manage Restore Conditions" and then click on "Create New Restore Condition" on the subsequent page.
Enter the desired condition text that will be displayed in the Restore Action Pane, and then click "Save".
File Permissions
Create detailed file permission rules specifically for restoring Homedir and Email files and folders. This ensures that restored data maintains appropriate access controls.
To create new File Permissions, click on "Manage File Permissions" and then click "Create New File Permission" on the following page.
Specify the permission glob pattern, file category, the desired ownership (owner and group), and permissions (file and directory) to be applied. You can also choose whether to apply the permission rule recursively. Once configured, click "Save".
Limit Restore per Account
Set a maximum number of restore operations an account is permitted to perform within a specified time period. To disable this limit, simply enter 0 in either of the fields. By default, this feature is disabled.
Restore Package Selection
Choose whether to utilize the Live Account Package or the Backed Up Package when restoring accounts. By default, when performing a full account restore, the system will retain the currently assigned (live) package instead of re-assigning the package that the account was using when the backup was originally generated. The default selection is Live Account Package.
Lock Account Homedir While Restoring Files
Determine whether to lock the account's home directory with 000 permissions during a Home Directory restore, or to only lock the specific directories/files being restored via umask. Locking the entire home directory ensures that other processes cannot read or write to it while the restore is in progress.
NOTE: When performing large home directory or file restores, locking the home directory for an extended duration may lead to various permission denied errors within the panel while the restore is active. If you encounter such errors during a restore, you can disable the home directory lock.
Privacy & Security
The Privacy & Security settings allow you to manage critical security features, including encryption keys, user agreements, and privacy policies, ensuring your data and client information are protected.
Server Master Encryption Key
JetBackup utilizes a robust encryption key to safeguard valuable data. This key is absolutely essential during Disaster Recovery procedures to successfully decrypt and import JB Config backups. It is crucial to understand that recovery from a disaster without this key is not possible, and therefore, it is paramount to store this key in a secure, remote location.
User Agreement
This setting controls the display of your User Agreement to clients, ensuring they acknowledge and accept your terms of service.
Privacy Policy
This setting manages the display of your Privacy Policy to clients. For clients subject to GDPR regulations, you should also include your backup destination information within this section to ensure compliance.
Account Encryption Selection
Enabling Account Encryption Selection provides clients and users with the option to choose their preferred Backup Type, allowing for greater control over their data's security.
NOTE: A backup job will be automatically aborted if all clients/users assigned to that job select a preferred backup type (e.g., "Only encrypted" or "No backups") that would result in the exclusion of all accounts from that particular job.
With this option disabled, Encrypted Backups for each account will have their associated Encryption Key stored locally on the server.
The Right to Be Forgotten
Specify the number of days JetBackup will retain backups for **TERMINATED** accounts. After this period, **ALL DATA** associated with the account, including backups, logs, and other related information, will be automatically and permanently deleted. Enter 0 to disable this feature.
Panel
The Panel settings allow you to configure JetBackup's integration and behavior within your hosting control panel, offering specific options for various environments.
Panel Options
The available panel options may vary based on the specific control panel you are currently utilizing. Refer to the "Control Panels" column in the table below to identify which panels a particular setting applies to. For details on creating API Access Tokens for the Linux Panel, please refer to the "API Access Tokens (Linux)" section below.
| Setting Name | Description | Category | Control Panel(s) | Default Value |
|---|---|---|---|---|
| Default Package | Specify the default package JetBackup will assign when restoring an account if the package information on the account's backup is not found on the panel. | cPanel & WHM, DirectAdmin | None | |
| Default IP Address | Specify the default IP address JetBackup will assign when restoring an account if the IP address information on the account's backup is not found on the panel. | cPanel & WHM, DirectAdmin, Plesk, Linux | None | |
| Default Owner | Specify the default owner JetBackup will assign when restoring an account if the owner information on the account's backup is not found on the panel. | cPanel & WHM, DirectAdmin, Plesk, Linux | None | |
| API Timeout | Specify the default API timeout for DirectAdmin API calls. | DirectAdmin | 30 Seconds | |
| Default Databases Backup Account | Specify the default account to backup ALL databases to. See Manage Databases documentation to auto-assign or manually assign databases to accounts. | Settings | Linux | None |
| MySQL Authentication Details | Specify your MySQL Authentication credentials to backup MySQL Databases. | Databases Auth | Linux |
MySQL Authentication Details
Configure the necessary MySQL authentication credentials for backing up MySQL databases within JetBackup.
| Enabled | No |
| Hostname | localhost |
| Port | 3306 |
| Username | |
| Password |
MongoDB Authentication Details
Configure your MongoDB authentication credentials for backing up MongoDB databases. Be sure to specify the Auth Database where the designated Username has been created.
| Enabled | No |
| Hostname | localhost |
| Port | 27017 |
| Username | |
| Password | |
| Auth Database |
PostgreSQL Authentication Details
Configure your PostgreSQL authentication credentials to enable the backup of PostgreSQL databases.
| Enabled | No |
| Hostname | localhost |
| Port | |
| Username | |
| Password |
API Access Tokens (Linux)
To establish communication with the JetBackup API on Linux (Standalone) servers, you must first generate an API Access Token. Once the token is created, you can include it in the request header to authenticate and execute API commands on your server. This provides a secure method for programmatic interaction with JetBackup.
API Access Tokens can be configured with various restrictions to enhance security:
- Any user allowed from a defined IP address.
- Any user allowed from any IP Address.
- Specific user allowed from any IP address.
- Specific user allowed from a defined IP address.
When an API command is executed as a particular user, it will utilize that user's assigned permissions. Please refer to the Permissions documentation to manage or modify permissions associated with an account. Exercise extreme caution when creating an unrestricted token, and always store the token in a highly secure location. For optimal security, we strongly recommend restricting tokens by both account and IP address.
curl -kv -H "Authorization: Bearer user1:oXBbdPuFmEtJZGYV6XQlLaxGdWm4InOQ" "https://HOST_NAME:3035/?api=1&function=getMyAccount"
Create New Access Token
When creating a new API Access Token, provide the following details:
- Description: Enter a descriptive label for the Access Token. This is used internally for your convenience and is a required field.
- IP Address: Specify an IP Address to restrict the token's usage exclusively to that IP. Leave this field blank to permit access from any IP address.
- Account: Restrict the Access Token to a specific account. This can even be the root account. If left blank, the token allows you to run API commands using the permissions of the user making the API call. Please refer to the Permissions documentation to assign or modify permissions for an account.
Access Token Details
The Access Token Details section provides an overview and management options for your created API tokens:
- Delete Access Token: Use this option to permanently remove the selected access token.
- Manage Access Token: Click here to modify the details of the selected Access Token.
- Created: Displays the exact date and time when the token was generated.
- Token: Shows the actual access token used for authenticating remote API calls, along with a brief description. Note that this token will only be displayed once, at the time of its creation.
- IP Address: Indicates the IP address of the machine from which the user will be making remote API calls.
- Account: Specifies the account to which the API token is restricted for performing remote API calls.
- Last Access: Records the most recent time and the IP address from which the token was last utilized.
Backup on Demand
Backup on Demand empowers your users with the flexibility to create a full, point-in-time snapshot of their accounts whenever needed. On-demand backups are particularly useful before implementing any significant changes to a user's website, email, databases, or other configurations. If necessary, users can conveniently revert to a recent on-demand backup, offering an alternative to restoring the last scheduled backup.
The following settings govern the **global** behavior and parameters for the Backup on Demand feature.
Backup Job
Select the specific backup job that will be used for performing on-demand backups. The chosen backup job must be enabled to be selectable for this purpose.
Maximum Backups per Account
This setting defines the global maximum number of On Demand backups allowed for each individual account. The maximum permissible value is 99. You can adjust account-specific Backup on Demand settings under the Manage Account section.
How Long Keep Snapshots
Set the duration, in days, for which on-demand backups (snapshots) will be retained on their respective destinations.
Automatically Disable Backup on Demand in the Following Cases
JetBackup includes functionality to automatically disable the option for users and resellers to create on-demand snapshots if certain conditions are met. It is important to note that the first condition that is triggered will initiate the disablement.
- Disk Space: If an account's disk space usage is greater than or equal to the predefined Disk Space limit, the user will be prevented from generating a Backup on Demand.
- Inodes: If an account possesses more inodes than the set limit, the user will not be able to generate a Backup on Demand.
Please ensure that your server is capable of accurately reporting Disk Space Usage and Inodes for each account. For JetBackup 5 Linux users, please refer to: Disk Usage/Inode Usage N/A on JetBackup 5 for Linux. Panel versions of JetBackup will retrieve these details directly from the Panel API.
Notification
The Notification settings enable you to configure and manage how JetBackup delivers alerts and updates, ensuring you stay informed about crucial system events.
To begin setting up your notifications, click on "+ Create New Notification Integration". Under the "Integration Type" field, you can select the specific Notification Plugin you wish to use for sending JetBackup alerts. JetBackup comes with the Email Notification Integration installed and ready to use by default.
Create New Notification Integration (Email)
Below is an example setup for configuring an Email Notification Integration:
- Integration Type: Select the specific type of Notification Integration you intend to set up (e.g., Email).
- Integration Name: Provide a unique identifier for your Notification Integration. This name is used internally for your convenience and organization.
- Owner: Specify the owner for this Notification Integration. This grants the designated owner and their parent account(s) the necessary permissions to modify and delete this integration.
- Alert Levels: Choose which types of alerts (Information, Warning, Critical) and their frequency (Real Time, Once a Day) you would like to receive notifications for. For more detailed information regarding alert types, please visit the Alerts documentation.
- Recipients: Enter the email address(es) where you prefer to receive notifications. If this field is left blank, notifications will be sent to the default server contact email address.
- Email Server: Select whether to use the Local PHP Mailer or an SMTP server for JetBackup notifications.
SMTP Settings:
- SMTP From Email: The reply-to email address that will be used for notifications.
- SMTP Host: The hostname of your SMTP email server.
- SMTP Port: The port number used by your SMTP email server.
- SMTP Username: The username required for authenticating with your SMTP server.
- SMTP Password: The password required for authenticating with your SMTP server.
- SMTP Secure: Choose the SMTP encryption protocol (None, SSL, TLS).
- Verify SSL: Enable or disable SSL verification during the SMTP connection.
- SMTP Timeout: Set the authentication connection timeout duration in seconds.
Notification Plugins
In addition to email notifications, JetBackup offers the flexibility to install and activate supplementary notification plugins, allowing for integration with various communication platforms. Click Here for a comprehensive list of notification plugins available by default and detailed instructions on how to set up each one.
Binary Locations
Configuring Binary Paths
This section outlines the specific paths for various binary executables utilized by JetBackup. Proper configuration of these paths ensures that JetBackup can efficiently access and utilize these essential tools for its operations.
- rsync Binary Location:
/usr/local/jetapps/usr/bin/rsync - psql Binary Location:
psql - pg_dump Binary Location:
pg_dump - pg_restore Binary Location:
pg_restore - mysql Binary Location:
mysql - mysqldump Binary Location:
mysqldump - mongorestore Binary Location:
/usr/local/jetapps/usr/bin/mongorestore - mongodump Binary Location:
/usr/local/jetapps/usr/bin/mongodump - tar Binary Location:
tar - gzip Binary Location:
gzip - gunzip Binary Location:
gunzip
