In my previous Topic I showed how to use the
Veeam Architects Site ,but how does it give us the amount of Cores and memory that the proxy will use? I'll show you …
Getting the right amount of processing power is essential to achieving the RTO/RPO defined by the business. In this section, we will outline the recommendations to follow for appropriate sizing
D = Source data in MB
W = Backup window in seconds
T = Throughput in MB/s = D/W
CR = Change rate
CF = Cores required for full backup = T/100
CI = Cores required for incremental backup = (T * CR)/25
Our sample infrastructure has the following characteristics:
- 1,000 VMs
- 100 TB of consumed storage
- 8 hours backup window
- 10% change rate
By inserting these numbers into the equations above, we get the following results.
We need to change TB to MB / We need to change Hours to Secs
D = 100 TB * 1024 * 1024 = 104,857,600 MB (Source data in MB)
W = 8 hours * 3600 seconds = 28,800 seconds (Backup window in seconds)
T = 104857600/28800 = 3,641 MB/s (Throughput)
We use the average throughput to predict how many cores are required to meet the defined SLA.
CF = T/100 ~ 36 cores (Cores required for full backup)
The equation is modified to account for decreased performance for incremental backups in the following result:
CI = (T * CR)/25 ~ 14 cores (Cores required for incremental backup)
As seen above, incremental backups typically have lower compute requirements on the proxy servers.
Considering each task consumes up to 2 GB RAM, we get the following result:
36 cores and 72 GB RAM 💪
- For a physical server, it is recommended to install dual CPUs with 10 cores each. 2 physical servers are required.
- For virtual proxy servers, it is recommended to configure multiple proxies with maximum 8 vCPUs to avoid co-stop scheduling issues. 5 virtual proxy servers are required.
If we instead size only for incremental backups rather than full backups, we can predict alternative full backup window with less compute:
WS = 104857600/(14 * 100)
W = WS/3600 ~ 21 hours
Note: Performance largely depends on the underlying storage and network infrastructure.
Note: Parallel processing may also be limited by max concurrent tasks at the repository level
Proxies do have multiple task slots to process VM source data. It is best practice to plan for 1 physical core or 1 vCPU and 2 GB of RAM for each of these tasks.
A task processes 1 VM disk at a time and CPU/RAM resources are used for inline data deduplication, compression, encryption and other features that are running on the proxy itself.
In the User Guide it is stated that proxy servers require 2 GB RAM + 500 MB per task
I hope it has been useful for you to understand what we need to know in order to calculate the tasks of the proxy.