NAME

Add-DcsRollback

SYNOPSIS

Creates a rollback from a virtual disk with Continuous Data Protection (CDP). This operation can also be performed on a virtual disk group and creates a rollback group.

SYNTAX

Add-DcsRollback   [ -Server <String> ]   -VirtualDisk <Object>   [ -Name <String> ]   [ -Description <String> ]   -Pool <String>   [ -AutoExpire] [-Compressed <Boolean>]  [ -DuplicateDiskId]   -TimeStamp <DateTime>   [ -AssignToCurrentUser]   [ -Connection <String> ]   [ -PipelineVariable <String> ] [<CommonParameters>]

Add-DcsRollback   [ -Server <String> ]   -VirtualDisk <Object>   [ -Name <String> ]   [ -Description <String> ]   -Pool <String>   [ -AutoExpire] [-Compressed <Boolean>]  [ -DuplicateDiskId]   -TimeSpan <TimeSpan>   [ -AssignToCurrentUser]   [ -Connection <String> ]   [ -PipelineVariable <String> ] [<CommonParameters>]

Add-DcsRollback   [ -Server <String> ]   -VirtualDiskGroup <Object>   [ -Name <String> ]   [ -Description <String> ]   -Pool <String>   [ -AutoExpire] [-Compressed <Boolean>]  [ -DuplicateDiskId]   -TimeStamp <DateTime>   [ -AssignToCurrentUser]   [ -Connection <String> ]   [ -PipelineVariable <String> ] [<CommonParameters>]

Add-DcsRollback   [ -Server <String> ]   -VirtualDiskGroup <Object>   [ -Name <String> ]   [ -Description <String> ]   -Pool <String>   [ -AutoExpire] [-Compressed <Boolean>]  [ -DuplicateDiskId]   -TimeSpan <TimeSpan>   [ -AssignToCurrentUser]   [ -Connection <String> ]   [ -PipelineVariable <String> ] [<CommonParameters>]

DESCRIPTION

Creates a rollback from virtual disk with Continuous Data Protection (CDP). This operation can also be performed on a virtual disk group and creates a rollback group. The rollback can be created to expire automatically or stay persistent (see AutoExpire). A special rollback marker can also be created that flushes the cache before creating the rollback, see the description for the TimeSpan parameter. CDP must be enabled for a virtual disk before a rollback can be created, see Enable-DcsDataProtection.

PARAMETERS

-Server<String>
Computer name or ID of the server. The computer name must be unique or the name must be fully qualified.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-VirtualDisk<Object>
VirtualDiskData object, name, or ID that identifies the CDP-enabled virtual disk, which is the source of the rollback.

Required: true
Position: named
Default value:
Accept pipeline input: true (ByValue)
Accept wildcard characters: false

-Name<String>
Name to assign to the rollback. If not specified, a default name will be assigned consisting of the name of the CDP-enabled virtual disk and the timestamp.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-Description<String>
Description of the rollback.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-Pool<String>
Name or ID of the pool where the rollback should be created. To resolve by name, the name must be unique to the server group or the server must be specified.

Required: true
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-AutoExpire<SwitchParameter>
Specify the AutoExpire parameter to allow the rollback to expire automatically when the history log advances past the restore point (point-in-time of the rollback). When the history log advances past the restore point, the rollback will expire without warning and be permanently unusable and should be deleted, see Remove-DcsRollback.If not specified, the rollback will persist until it is deleted or split. (An exception to this is when a marker is created. In this case, the marker will automatically expire by default. See TimeSpan parameter description.) WARNING: Keeping a rollback persistent can have ramifications. When the history log advances past the restore point, a mirrored virtual disk will have compromised mirror redundancy and a single virtual disk will become inaccessible. The rollback will have to be deleted or split to allow writes to the CDP-enabled virtual disk again.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false
 
-Compressed<Boolean>
Use this parameter to enable Inline Compression on the Rollback. Specifying as $True will enable the feature. It can only be enabled if the destination pool has Capacity Optimization enabled.
 
Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-DuplicateDiskId<SwitchParameter>
Specify this parameter only if both the CDP-enabled virtual disk and the rollback will be served to client hosts that require the same SCSI inquiry ID (virtual product information).

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-TimeStamp<DateTime>
The date and time of the rollback. The rollback will become a logical representation of the virtual disk data at the specified date and time (restore point). Use either the Timestamp parameter or the TimeSpan parameter to specify the restore point. One way to provide the TimeStamp parameter would be by piping a variable created by invoking New-Object with the TypeName parameter of DateTime with the correct arguments (see Help for New-Object, Get-Date). The TimeStamp parameter can also be provided in a string with the date and time. An example of the format to use is "Tuesday, March 29, 2011 2:51:00 PM".

Required: true
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-AssignToCurrentUser<SwitchParameter>
Use this parameter to assign exclusive ownership to the user account currently logged in. This restricts all operations on the rollback being created to only the authenticated user for the current PowerShell session.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-Connection<String>
Alias of the connection to the server group. If not specified, the default connection will be used.

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-PipelineVariable<String>

Required: false
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-TimeSpan<TimeSpan>
TimeSpan is the amount of negative elapsed time used to represent the date and time of the rollback. Use either the Timestamp parameter or the TimeSpan parameter to specify the restore point.One way to provide the TimeSpan parameter would be using a variable piped from invoking New-Object with the TypeName parameter of TimeSpan with the correct arguments (see the Help for New-Object). The TimeSpan parameter can also be provided in a string that represents the number of days, hours, minutes, and seconds in the past. For instance, if the rollback should be created using the data as it existed 1 day, 12 hours, 30 minutes ago, the value would be "01.12:30:00" and this must be in quotes. A TimeSpan with the value of "0" (which means now) will create a special rollback that can be used as a marker. In this special case and only in this case, after the cmdlet is invoked, the cache will be flushed on the DataCore Server before creating the rollback. To create a rollback with consistent application data, perform an application-specific flush and quiesce on the client host before invoking the cmdlet. The default behavior for the marker is to automatically expire. See example 4.

Required: true
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

-VirtualDiskGroup<Object>
VirtualDiskGroupData object, name or ID that identifies a virtual disk group. The object can be obtained using Get-DcsVirtualDiskGroup. This parameter is used to create a rollback group from a virtual disk group. The rollback group will be named using the virtual disk group name with the timestamp appended. For example, if the virtual disk group is named VDGroup1 and the timestamp is 11/2/2011 2:45:19 PM, then the snapshot group name would be named "VDGroup1 @ 11/2/2011 2:45:19 PM".

Required: true
Position: named
Default value:
Accept pipeline input: false
Accept wildcard characters: false

INPUTS

VirtualDiskData or VirtualDiskGroupData : Object that identifies and describes the virtual disk or virtual disk group.

OUTPUTS

RollbackData or RollbackGroupData : Object that identifies and describes the rollback or the rollback group that was created.

NOTES

Also see Remove-DcsRollback, Get-DcsRollback, Revert-DcsRollback, Split-DcsRollback, Get-DcsVirtualDisk, Get-DcsVirtualDiskGroup, Get-DcsRollbackGroup, Remove-DcsRollbackGroup.

EXAMPLES


-------------- Example 1 Creates a compressed rollback using a timestamp --------------
Add-DcsRollback -Server SSV1 -VirtualDisk "virtual disk 5" -Name VDisk5RB3 -Pool SSV1Pool3 -AutoExpire -TimeStamp "Thursday, July 28, 2011 01:08:00 PM"
-Compressed $True		

Creates a rollback of the virtual disk named "Virtual Disk 5" from the pool named "SSV1Pool3" on the server named "SSV1". The rollback is named "VDisk5RB3" and is an image of the data on Thursday, July 28, 2011 at 1:08 AM and will expire automatically when the restore point reaches the end of the history log. The RestorePoint field in the returned object is displayed in UTC.

SourceLogicalDiskId:LD:74EDD1B3-6682-46A7-943C-2F0168CEC699_V.{267e5c50-abd6-11e0-9515-00155d11e921}-00000018
DestinationLogicalDiskId:LD:74EDD1B3-6682-46A7-943C-2F0168CEC699_V.{b96878da-b7af-11e0-9ba8-00155d11e921}-00000009
RestorePoint:7/28/2011 5:08:00 PM
AutoExpire:True
State:Unknown
CompressedEnabled:True
Sequencenumber:2654201
Id:V.{267E5C50-ABD6-11E0-9515-00155D11E921}-00000018--V.{B96878DA-B7AF-11E0-9BA8-00155D11E921}-00000009
Caption:VDisk5RB3
ExtendedCaption:VDisk5RB3 on SSV1
Internal:False
   

-------------- Example 2 Creates a rollback group --------------
Add-DcsRollback -Server SSVVM1 -VirtualDiskGroup VDgroup1 -Pool "Disk pool 1" -AutoExpire -TimeStamp "Thursday, NoveMiBer 3, 2011 4:00:00 PM"
-Compressed $True

Creates a compressed rollback group for the virtual disk group named "VDgroup1" from the pool named "Disk pool 1" on the server named "SSVVM1". The rollback group is named "VDgroup1 @ 11/3/2011 4:07:57 PM" (which is the time that the group was created). The rollback group contains a rollback for each virtual disk in the group. Those rollbacks are an image of the data on Thursday, NoveMiBer 3, 2011 at 4:00 PM and will expire automatically when the restore point reaches the end of the history log.

Total Capacity:150 GiB
ParentGroupId:{827c0546-a101-4115-8a8f-b07ab87272dd}
Alias:VDgroup1 @ 11/3/2011 4:07:57 PM
Description:
StorageDomainSettings:0 B/sec|0 IO/sec|False
Sequencenumber:530287
Id:{33b3686c-06e2-4067-9c2e-aca0f794d4ec}
Caption:VDgroup1 @ 11/3/2011 4:07:57 PM UTC
ExtendedCaption:VDgroup1 @ 11/3/2011 4:07:57 PM UTC
Internal:False
   

-------------- Example 3 Creates a rollback group using a time span --------------
Add-DcsRollback -Server SSVVM1 -VirtualDiskGroup VDgroup1 -Pool "Disk pool 1" -AutoExpire -TimeSpan "00.00:30:00"
		

Creates a rollback group for the virtual disk group named "VDgroup1" from the pool named "Disk pool 1" on the server named "SSVVM1". The rollback group is named "VDgroup1 @ 11/3/2011 4:45:24 PM" (which is the time that the group was created). The rollback group contains a rollback for each virtual disk in the group. The rollbacks are an image of the data on as it was 30 minutes in the past. The rollbacks will expire automatically when the restore point reaches the end of the history log.

ParentGroupId:{827c0546-a101-4115-8a8f-b07ab87272dd}
Alias:VDgroup1 @ 11/3/2011 4:45:24 PM
Description:
Id:{b807ccec-4b97-400e-8936-0b9d98d09788}
Caption:VDgroup1 @ 11/3/2011 4:45:24 PM
ExtendedCaption:
Internal:False
   

-------------- Example 4 Creates a special rollback marker --------------
Add-DcsRollback -Server SSV1 -VirtualDisk "Virtual disk 1" -Name VDisk1RBMarker1 -Pool "Disk pool 1" -AutoExpire -TimeSpan 0
		

Creates a special rollback marker of the virtual disk named "Virtual disk 1" from the pool named "Disk pool 1" on the server named "SSV1". The rollback is named "VDisk1RBMarker1". When the cmdlet is invoked, the cache is flushed on the server SSV1 and then the rollback is created on SSV1. The rollback will expire automatically when the restore point reaches the end of the history log. The RestorePoint field in the returned object is the timestamp when the rollback was created on the server SSV1 and is displayed in UTC.

SourceLogicalDiskId:e75bf8bd-6dc4-4237-a867-5d4844f87355
DestinationLogicalDiskId:c928faa7-15e3-4c9d-ac6d-49d55bcd0f18
RestorePoint:9/16/2014 5:11:34 PM
AutoExpire:True
State:Unknown
Sequencenumber:1114
Id:V.{378327E6-3D98-11E4-BD80-00155D651603}-00000001--V.{378327E6-3D98-11E4-BD80-00155D651603}-00000003
Caption:VDisk1RBNOW
ExtendedCaption:VDisk1RBNOW on SSV1
Internal:False