This is my personal blog note-taking for Veeam Backup for Azure Best Practice
Backup Appliance
running Ubuntu
1. B2s (default) (2 vcpu, 4GiB RAM with 32GB Premium SSD data disk) -support 400 workload, 50 workers & up to 20 000 restore point.
2. F8s (medium) (8 vcpu, 16 GB RAM with 64GB premium SSD data disk) - support 1500 workload, 250 workers and 70000 restore point.
3. F16s (large) (16 vcpu, 32 GB RAM with 128 GB premium SSD disk) - support 1500 workload, 500 workers and 70000 restore point.
Maximizing throughput
Workload per policy - 50
Worker per policy and per storage account
Worker speed (F2s_v2 = ~100 Mib/s)
Azure storage account limit (10-60 Gbps depending on the account)
Azure API limits (1200 writes, 12000 reads of ARM API)
Worker per appliance (500 recommended, max 1000 per region)
Memory consumption per policy - 100MiB + 3 MiB per workload in policy: 250 Mib
Repository
Average size of backup data in object storage - 40% - 50%
Object size :
1.Backup data (hot & cool tiers) - 1 MiB compressed (~512 KiB)
2.Backup data (archive tier) - 512 MiB
3. Metadata - 4KiB per GiB of VM source data
Storage account limit on IOPS. Configure one backup repository per storage account
Workers
Leverage on ubuntu image. Deployed in the same resource group and subscription as Veeam Backup for Azure.
1. Creating backup/archive of Azure VM - region with target repository
2. Creating backup/archive for Azure SQL - region with Azure SQL database to be processed
3. Azure VM restore, SQL Restore, Volume level restore - region where restored data will reside
4. File level restore from snapshot - region where snapshot resides
5. File level restore from backup - region where backup repository resides
Worker size
Change the size of the data disk allocated to the worker instance: /etc/veeam/azurebackup/Config.ini
[WorkerVMDeploymentOptions]DataDiskSizeinGB =32 (default)
Recommended worker maximum based on testing
1. Recommended worker for default appliance size - 50
2. Maximum worker per region per appliance - 1000
3. Worker per service bus (two queue per worker, based on default basic tier) - 5000
4. Azure ARM API reads (per tenant/user/hour)* - 12000
5. Azure ARM API (per tenant/user/hour) * - 1200
* Azure Management APU request limit and throttling
Policies
1.Repository per policy -1
2.Worker per repository - 50
3.Appliance memory consumption ~50% RAM + memory used by policies
4.Policy memory consumption - 100 MiB per policy + 3 MiB per workload in
Calculate retention point
-> snapshot per workload for the first day
-> daily backup
-> weekly backup
-> monthly backup
-> yearly backup
Get total restore point per workload X Number of VM, to get a total restore point