Recently I came across a semi-large server having severe difficulty with stability, after a short investigation it became apparent that the server was suffering whenever the WHM backup process (cpbackup) was working to backup the server.
Unfortunately the backup module of WHM is a very handy and vital tool to retaining monthly, weekly or even daily backups, so the idea of disabling it or trying to find an alternative was quickly out of the window and we decided to investigate a way to use it but to avoid the stability issues it was causing.
One suggestion we found was to disable the compression setting, however again this is a vital part of the functionality, without compression the backup process will consume far more storage space and were using FTP and Amazon S3 backup services which we decided would become bottlenecks of their own with all the files and data that would need to be passed through them.
Finally though we found what we was looking for, you can easily tell cpbackup to only run during low usage of the server, and its VERY easy to implement with only limited SSH knowledge.
Fix cpbackup consuming too much resources...
Step 1. Open up your SSH as root user.
Step 2. Run the following which will bring up an editor so you can edit the root cron file.
Step 3. Find the line below (The "0 2 * * *" might be different on your system and defines the time periods to run the command that follows).
0 2 * * * /usr/local/cpanel/scripts/cpbackup
Step 4. Replace the code with the following, take care to retain the timings you have set as they may be different than illustrated (0 2 * * *).
0 2 * * * /usr/local/cpanel/bin/cpuwatch 3 nice -n +19 /usr/local/cpanel/scripts/cpbackup
And there you have it, now cpbackup will chill out in the background instead of stirring up your servers resources.