May 8, 2015

SCDPM 2012 R2 - Deduplication

Prepare volume:
Format-Volume -Partition <volume> -FileSystem NTFS -AllocationUnitSize 64KB –UseLargeFRS -Force

Install File and Storage services with Data Deduplication feature:  
Install-WindowsFeature -Name FileAndStorage-Services,FS-Data-Deduplication

Enable deduplication on volume:
Enable-DedupVolume –Volume <volume> -UsageType HyperV
Set-DedupVolume -Volume <volume> -MinimumFileAgeDays 0 -OptimizePartialFiles:$false

Deduplication processing optimization:
Set-ItemProperty -Path HKLM:\Cluster\Dedup -Name DeepGCInterval -Value 0xFFFFFFFF

Deduplication performance optimization:
Set-ItemProperty -Path HKLM:\Cluster\Dedup -Name HashIndexFullKeyReservationPercent -Value 70
Set-ItemProperty -Path HKLM:\Cluster\Dedup -Name EnablePriorityOptimization -Value 1

Changing default schedule:  
Set-DedupSchedule * -Enabled:$false
$DDuration = 16
$DStart = "6:00am"
$ShortDuration = $DDuration - 1
$DShortStart = "7:00am"
if ((Get-DedupSchedule -name PriorityOptimization -ErrorAction SilentlyContinue) -ne $null) {Set-DedupSchedule -Name PriorityOptimization -Enabled:$true}
New-DedupSchedule -Name DailyOptimization -Type Optimization -DurationHours $DDuration -Memory 50 -Priority Normal -InputOutputThrottleLevel None -Start $DStart -Days Monday,Tuesday,Wednesday,Thursday,Friday
New-DedupSchedule -Name WeekendOptimization -Type Optimization -DurationHours $ShortDuration -Memory 50 -Priority Normal -InputOutputThrottleLevel None -Start $DShortStart -Days Saturday,Sunday
Set-DedupSchedule -Name WeeklyScrubbing -Enabled:$true -Memory 50 -DurationHours $DDuration -Priority Normal -InputOutputThrottleLevel None -Start $DStart -StopWhenSystemBusy:$false -Days Sunday
Set-DedupSchedule -Name WeeklyGarbageCollection -Enabled:$true -Memory 50 -DurationHours $DDuration -Priority Normal -InputOutputThrottleLevel None -Start $DStart -StopWhenSystemBusy:$false -Days Saturday
if ((Get-DedupSchedule -name BackgroundOptimization -ErrorAction SilentlyContinue) -ne $null) {Set-DedupSchedule -Name BackgroundOptimization -Enabled:$false}

Place vhdx files on volume.

Monitoring:
Get-DedupStatus
Get-DedupVolume
Get-DedupMetadata
Get-DedupSchedule

No comments:

Post a Comment