Estou tentando obter alguns resultados sensatos do recurso de desduplicação do Server 2012 R2 e falhando repetidamente. Eu tenho dois volumes grandes (4 + 2 TB) expostos como D: e E: respectivamente. Os volumes são atribuídos como armazenamento de cluster para dois recursos de cluster de servidor de arquivos diferentes (não sei se isso muda alguma coisa) e os discos estão online na máquina que estou tentando habilitar deduplicação.
Enable-DedupVolume D:
Enable-DedupVolume E:
Set-DedupVolume -Volume D: -MinimumFileAgeDays 0
Set-DedupVolume -Volume E: -MinimumFileAgeDays 0
Start-DedupJob D: -Type Optimization
Start-DedupJob E: -Type Optimization
Após alguns minutos, ambos os trabalhos de otimização são concluídos. Enquanto isso, há alguma carga de leitura de disco para ambos os discos. No final, os eventos que estou obtendo no log de desduplicação indicam que nada foi desduplicado:
Log Name: Microsoft-Windows-Deduplication/Operational
Source: Microsoft-Windows-Deduplication
Date: 12/2/2015 11:36:02 AM
Event ID: 6153
Task Category: None
Level: Information
Keywords:
User: SYSTEM
Computer: wss-01.example.com
Description:
Optimization job has completed.
Volume: D: (\\?\Volume{73180747-4bf5-4292-86fd-8e8fc4d076c4}\)
Error code: 0x0
Error message:
Savings rate: 0
Saved space: 0
Volume used space: 2867461320704
Volume free space: 1530452017152
Optimized file count: 0
In-policy file count: 0
Job processed space (bytes): 0
Job elapsed time (seconds): 37
Job throughput (MB/second): 0
Log Name: Microsoft-Windows-Deduplication/Operational
Source: Microsoft-Windows-Deduplication
Date: 12/2/2015 11:38:26 AM
Event ID: 6153
Task Category: None
Level: Information
Keywords:
User: SYSTEM
Computer: wss-01.example.com
Description:
Optimization job has completed.
Volume: E: (\\?\Volume{a3f85da5-283e-4ed4-81c0-2c0fd163b1c3}\)
Error code: 0x0
Error message:
Savings rate: 0
Saved space: 0
Volume used space: 2068610711552
Volume free space: 130142007296
Optimized file count: 0
In-policy file count: 0
Job processed space (bytes): 0
Job elapsed time (seconds): 686
Job throughput (MB/second): 0
Os volumes de dados são bem preenchidos - D: são principalmente imagens ISO e instaladores de diferentes tipos, enquanto E: são dados típicos da casa do usuário, então eu esperaria alguma economia (pelo menos mais de 0) para mostrar. A invocação de Update-DedupStatus
qualquer um dos volumes não está fazendo muito. O get-dedupstatus
resultado indica que nenhum arquivo é considerado "na política" para desduplicação:
PS C:\> get-dedupstatus | select-object -Property *
ObjectId : \\?\Volume{a3f85da5-283e-4ed4-81c0-2c0fd163b1c3}\
Capacity : 2198752718848
FreeSpace : 130142007296
InPolicyFilesCount : 0
InPolicyFilesSize : 0
LastGarbageCollectionResult :
LastGarbageCollectionResultMessage :
LastGarbageCollectionTime :
LastOptimizationResult : 0
LastOptimizationResultMessage : The operation completed successfully.
LastOptimizationTime : 12/2/2015 11:45:10 AM
LastScrubbingResult :
LastScrubbingResultMessage :
LastScrubbingTime :
OptimizedFilesCount : 0
OptimizedFilesSavingsRate : 0
OptimizedFilesSize : 0
SavedSpace : 0
SavingsRate : 0
UnoptimizedSize : 2068610711552
UsedSpace : 2068610711552
Volume : E:
VolumeId : \\?\Volume{a3f85da5-283e-4ed4-81c0-2c0fd163b1c3}\
PSComputerName :
CimClass : ROOT/Microsoft/Windows/Deduplication:MSFT_DedupVolumeStatus
CimInstanceProperties : {Capacity, FreeSpace, InPolicyFilesCount, InPolicyFilesSize...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
ObjectId : \\?\Volume{73180747-4bf5-4292-86fd-8e8fc4d076c4}\
Capacity : 4397913337856
FreeSpace : 1530452013056
InPolicyFilesCount : 0
InPolicyFilesSize : 0
LastGarbageCollectionResult : 5657346
LastGarbageCollectionResultMessage : There are no actions associated with this job.
LastGarbageCollectionTime : 12/2/2015 11:58:12 AM
LastOptimizationResult : 0
LastOptimizationResultMessage : The operation completed successfully.
LastOptimizationTime : 12/2/2015 11:45:10 AM
LastScrubbingResult : 0
LastScrubbingResultMessage : The operation completed successfully.
LastScrubbingTime : 11/28/2015 3:45:07 AM
OptimizedFilesCount : 0
OptimizedFilesSavingsRate : 0
OptimizedFilesSize : 0
SavedSpace : 0
SavingsRate : 0
UnoptimizedSize : 2867461324800
UsedSpace : 2867461324800
Volume : D:
VolumeId : \\?\Volume{73180747-4bf5-4292-86fd-8e8fc4d076c4}\
PSComputerName :
CimClass : ROOT/Microsoft/Windows/Deduplication:MSFT_DedupVolumeStatus
CimInstanceProperties : {Capacity, FreeSpace, InPolicyFilesCount, InPolicyFilesSize...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
e a configuração está praticamente em suas configurações padrão:
PS C:\> get-dedupvolume | select-object -Property *
ObjectId : \\?\Volume{a3f85da5-283e-4ed4-81c0-2c0fd163b1c3}\
UsageType : Default
Capacity : 2198752718848
ChunkRedundancyThreshold : 100
DataAccessEnabled : True
Enabled : True
ExcludeFileType :
ExcludeFileTypeDefault : {edb, jrs}
ExcludeFolder :
FreeSpace : 130142007296
MinimumFileAgeDays : 0
MinimumFileSize : 32768
NoCompress : False
NoCompressionFileType : {asf, mov, wma, wmv...}
OptimizeInUseFiles : False
OptimizePartialFiles : False
SavedSpace : 0
SavingsRate : 0
UnoptimizedSize : 2068610711552
UsedSpace : 2068610711552
Verify : False
Volume : E:
VolumeId : \\?\Volume{a3f85da5-283e-4ed4-81c0-2c0fd163b1c3}\
PSComputerName :
CimClass : ROOT/Microsoft/Windows/Deduplication:MSFT_DedupVolume
CimInstanceProperties : {Capacity, ChunkRedundancyThreshold, DataAccessEnabled, Enabled...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
ObjectId : \\?\Volume{73180747-4bf5-4292-86fd-8e8fc4d076c4}\
UsageType : Default
Capacity : 4397913337856
ChunkRedundancyThreshold : 100
DataAccessEnabled : True
Enabled : True
ExcludeFileType :
ExcludeFileTypeDefault : {edb, jrs}
ExcludeFolder :
FreeSpace : 1530452013056
MinimumFileAgeDays : 0
MinimumFileSize : 32768
NoCompress : False
NoCompressionFileType : {asf, mov, wma, wmv...}
OptimizeInUseFiles : False
OptimizePartialFiles : False
SavedSpace : 0
SavingsRate : 0
UnoptimizedSize : 2867461324800
UsedSpace : 2867461324800
Verify : False
Volume : D:
VolumeId : \\?\Volume{73180747-4bf5-4292-86fd-8e8fc4d076c4}\
PSComputerName :
CimClass : ROOT/Microsoft/Windows/Deduplication:MSFT_DedupVolume
CimInstanceProperties : {Capacity, ChunkRedundancyThreshold, DataAccessEnabled, Enabled...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
Eu já tentei desanexar os respectivos discos da função Cluster Service (ou seja, apenas os tornei discos autônomos com volumes "simples" e sistemas de arquivos NTFS), desativando e reativando a desduplicação e fazendo execuções de otimização sem nenhuma alteração significativa no resultado geral.
Então, por que está quebrado e como posso corrigi-lo?
Meu problema parece ser que os dados que estou tentando desduplicar foram originados de um arquivador NetApp que expõe o armazenamento SMB. Todos os arquivos copiados de lá (via
robocopy
with/COPYALL
) parecem ter um Atributo Estendido ".NETAPP" anexado. E a desduplicação está ignorando arquivos com atributos estendidos de acordo com a documentação :Verificar a hipótese foi fácil, basta criar dois arquivos com conteúdo (quase) idêntico:
execute o trabalho de otimização e veja
InPolicyFilesCount
o aumento para 2. Outros relataram problemas semelhantes nos fóruns de usuários da NetApp .Eu só precisava descobrir como remover os EAs em ~ 10 milhões de arquivos em tempo decente - felizmente, a Veritas publicou o EVEARemovalUtility para realizar essa mesma tarefa, pois sua solução de arquivamento sofre com a incompatibilidade entre EAs e pontos de junção que eles estão criando como ponteiros aos dados arquivados. A ferramenta é um download gratuito, o uso é direto:
EVEARemovalUtility.exe \\server\Share -d -s
para criar uma lista de arquivos com seus respectivos atributos estendidosEVEARemovalUtility.exe \\server\Share -r -s
para remover todos os arquivos de EAsProvavelmente pela idade, pela forma como está instalado e pela falta de documentação atualizada, não roda no Server 2012 R2 pronto para uso, reclamando da falta de DLLs. Eu usei uma máquina Server 2008 R2 para execução como uma solução alternativa.
Depois que os EAs foram removidos, a desduplicação está sendo executada conforme o esperado.