Skip to main content

        Estimating bandwidth requirements for Zerto Replication - Featured image

Estimating bandwidth requirements for Zerto Replication

One thing that I run across quite a bit is customers that want to implement Zerto for their replication needs, but are unsure of what the bandwidth requirements would be for their organization.  Luckily, Zerto provides a WAN sizing tool just for that.

First thing, we want to make sure we are collecting the needed statistics in vCenter.

  • In the vSphere Web Client, select the vCenter object, and select your vCenter server.
  • Select the Manage tab, and then under General, choose Edit.
  • Set all statistics to level 2

settings

At this point, we want to allow at least 24 hours to pass, so we are sure we have collected the proper statistics.

Next, we will run a powerCLI script to collect the average writes in KB/s for each VM and export to a CSV file. Be sure to edit the variables fro vCenter server and credentials.

# Beginning script # Section 1 - vCenter Server settings $vcentertocollectstatsfrom = “192.168.1.101” $vcenterusername = “root” $vcenterpassword = “P@ssw0rd” # Section 2 - Collection time frame $noofdaystocollect = “7” # Section 3 - CSV Output filename and directory $csvoutput = “C:\scriptoutput\ZertoOutput.csv” # Nothing to edit below this line function LoadSnapin{ param($PSSnapinName) if (!(Get-PSSnapin | where {$_.Name -eq $PSSnapinName})){ Add-pssnapin -name $PSSnapinName } } LoadSnapin -PSSnapinName “VMware.VimAutomation.Core” connect-viserver -server $vcentertocollectstatsfrom -user $vcenterusername -password $vcenterpassword $report = @() Get-VM | %{$stats = Get-Stat -Entity $_ -Stat disk.write.average -Start (Get-Date).adddays(-$noofdaystocollect) -ErrorAction SilentlyContinue if($stats){ $statsGrouped = $stats | Group-Object -Property MetricId $row = "" | Select Name, WriteAvgKBps, WriteAvgMBps $row.Name = $_.Name $row.WriteAvgKBps = ($statsGrouped | where {$_.Name -eq “disk.write.average”} | %{$_.Group | Measure-Object -Property Value -Average}).Average $row.WriteAvgMBps = $row.WriteAvgKBps/1024 $row.WriteAvgKBps = “{0:N2}” -f $row.WriteAvgKbps $row.WriteAvgMBps = “{0:N2}” -f $row.WriteAvgMBps $report += $row } } $report | Export-Csv $csvoutput # End of script

Now, we should have a CSV file called ZertoOutput.csv that looks something like this:

script-output

By using the VM column, and the WriteAvgKBps column, we can plug it into the Zerto Wan Sizing tool, and see our bandwidth usage estimate.

bandwidth-estimate

As you can see, in our lab environment, we will need about 20 Mb/s for replication.  Be sure to add 20% for bursts, to ensure a low RPO at all times.  If the WAN link will be used for other traffic, size accordingly, and use Zerto’s built in throttling.

Contact a Zerto partner, or Zerto support to get your estimation.