The CDP function (aka Continuous Data Protection) is now seen by many as heavenly manna. After all, it allows you to reduce the risks of data loss to near-zero values (RTO and RPO - units of seconds), while not using snapshots that slow down everything around you, and not depend on the limitations of classic replication options.
This is what we'll talk about today: what kind of magic is this, how it works and how we implemented it in Veeam Backup & Replication v11.
Achtung! . , . , Requirements and Limitations. , CDP. - - , . Clusters. , : - . .
CDP
: CDP ?
, . , CDP - . . . , . .
CDP . , - , , .
, , CDP - RTO RPO. , , . , . , 5% . 95%, IT .
, ? Hyper-V, , . ! . , . , - ( VSS), , . . , ( , ). , : ( , , ), ( , ), - , , .
, .
CDP
, VMware - API, VAIO. , , I/O , I/O - . . : , - . , , .
, . . .
. VBR Proxy. , , , .
:
. . , vCenter, , , , . Windows . , , vCenter . . , , . , , .
Source filter. , IO . , ESXi. , . .
, - , . - ( , ..), , . . : VMware.
: VBR . - VMware. , . ? , , - vMotion ? - CDP . Manage I/O filters - . , , “Manage I/O filters” , .
Source Daemon. . , - , - . . TCP, UDP . , , .
? VMware, . , . by design, . , . : . . . . , , , , . !
Source Proxy. , . RAM, , . (!) RAM, . SSD .
, . : - 100500 , , . , , . Windows , , .
Target Proxy. , . , , , . , .
Target Daemon. . .
Target Filter. . , .
. . , , . . , .
, .
, , CDP, . . , / VAIO maintenance mode. , , . DRS , , IT, . .
: :
esxcli software remove -n=veecdp
.
: , VMware , mm . . - powercli:
Get-VAIOFilter |Remove-VAIOFilter
.
- DNS. , “-”, , It’s always DNS. VBR DNS , vCenter , , . vCenter VBR . VBR vCener. .
, , . CDP , ( VSS application consistent ). - . VAIO API.
Retention
Long-term retention, (application aware). VSS . (, 12 ), .
- Short-term Retention, 2 (!) , crash-consistent . short-term RPO - - . , RPO . 15 4 .
, , , , , crash-consistent , , application-consistent .
, : Failover now… Failover Plan. , , :
(crash-consistent)
Point-in-time (crash-consistent)
Long term ( application-aware crash-consistent)
failback permanent failover , . .
: Point-in-time ;)
CDP
, , , , .
.VMDK . , .
.TLOG .META - . , . .
VM-000X.VMDK , . , - . , . . , Veeam VMDK. , . , Target Filter.
Short-term retention
, .
, , , VMDK .
: VBR . . , , , , , . : . - . , CDP , .
: VMDK , Seeding Mapping . , .
, , ( + ). . , , , . , . - ( ) . , .
: ? . , 1 1 .
1 -> 1 |
7 -> 8 |
64 -> 64 |
2 -> 2 |
10 -> 16 |
100 -> 128 |
3 -> 4 |
37 -> 64 |
|
4 -> 4 |
62 -> 64 |
|
VMDK , . IO , , .
, , . , , . .
.
, .
Retention policy. Veeam .
, , , .
, , , .
: Retention Policy . CDP . 125% .
Long-term retention
short-term retention. , , long-term .
. , long-term delta.
.
short term, ( ) .
long-term . .
long-term , .
, long-term VMDK.
, source proxy.
- , IO . , , . . , , , , .
:
--, , .
. - , . , , . , , , , ? , RPO , . .
, CDP, . . . , . IO , , , , .
- . Clean Mode Dirty Mode. , , . , CDP . , , . , . DirtyBlockMap. , - , . , , , Clean Mode.
: - 32 . , . - . - 2 RAM. . , CDP , . , .
. RPO 10 , ( RPO) , . , , , .
, . , . Veeam . , . ? , .
: , , RPO Reporting. , . , - .
, - , CPU RAM. ! , , 10 Gbit+ , MTU 9000 (Release Jumbo frames!!!) . , 25%. , ?
, : VMkernel c NIC. - . , , . , , 80 .
, , . : . - , , . , . , , . , , . , - . , .
: CDP , . ? 50 200 . . , , , 1500 5000 . , , .
, CDP , . , .
:
- . , RAM. , , .
. . , .
ESXi - .
- , . , .
, , , . .
, Test .
. , , vCenter. - , - , .
.
Source Proxy CPU: CPU , . vCPU, CPU.
Source Proxy RAM. . , CDP .
: RPO* .
/? , . , .
, RPO - 15 , 150 /. , 2250 RAM.
- , , , . -, RAM . ( ). -, , , , . , .
Source Proxy Bandwidth. . vCenter, . , 150 / . , 200 / .
Target Proxy CPU. , : .
Target Proxy RAM. , , , , . 0.5. , 15 150 /c , 1125 RAM ( 2250, ).
Target Proxy Bandwith. . , 350 /c, - 400 /c.
: . . , . , , .
....
CDP Policy ?
. > > .
vSphere ?
RPO, .
( -, , ), RPO 2 . , , 10-15 .
vRDM?
.
CDP ?
, . .
CDP , , ?
. .
CDP vCenter?
. vCenter - , .
CDP Inventory vCenter?
id . ?
- ?
Veeam , , .
Hyper-V?
Microsoft.
ESXi
daemon :
# ps | grep iof
# kill -9 <PID>
/ daemon :
# /etc/init.d/iofilterd-vvr stop/start
:
# tail -n 100 -f /var/log/iofilterd-vvr.log
, :
# vsish -e get /sched/memClients/[iofilterd-PID]/SchedGroupID
# memstats -r group-stats -s name:min:max:eMin:rMinPeak:consumed:flags -g [iofilterd-ScheddGroupID] -u mb
. vib
# esxcli software vib list | grep veecdp