Backup Server Balancing

The choice of a specific backup server on which a backup will be performed is called backup server balancing.

Previously when you sent a command to take a backup, the system would schedule a corresponding transaction at a specific backup server. This transaction would be pending until its queue came up. However, if the backup server was very loaded, offline, or somehow not available, this transaction would take very long, or even should be restarted manually.

Now, with Backup Server Balancing, when the transaction is launched, the system will reassign it to the most appropriate backup server. 

OnApp supports two backup types: normal and incremental, each of them having its own procedure of selecting the most appropriate server to take a backup:

For Normal Backups the system will follow the sequence below to take a backup:

  1. Check which backup servers are assigned to this location group 
  2. Which of them are available to the user
  3. Which of those have enough space 
  4. From those remaining, the most appropriate backup server will be the one with the smallest count of "take backup" transactions at the moment of the check
  5. If for several backup servers this quantity is equal (0, 1, 2, ...n), the backup server with the lowest load (highest cpu_idle parameter) will be selected as the most appropriate

In case of Incremental Backups, the first backup (which is similar to normal backups) the server will be selected the same as for normal backups:

  1. Check which backup servers are assigned to this location group 
  2. Which of them are available to the user
  3. Which of those have enough space 
  4. From those remaining, the most appropriate backup server will be the one with the smallest count of "take backup" transactions at the moment of the check
  5. If for several backup  servers this quantity is equal (0, 1, 2, ...n), the backup server with the lowest load (highest cpu_idle parameter) will be selected as the most appropriate

All consequent backups will be performed at the same backup server as long as it is available and has enough storage space. If not - the alternative backup server will be selected following the principle described above.