Windows 10 및 계층화의 저장 공간

Windows 10 및 계층화의 저장 공간

Windows 10(중요한 경우 Pro) 데스크톱에 여러 개의 디스크가 있고 저장 공간을 시험해 왔습니다. 내 사용 사례에 맞게 스토리지 볼륨을 구성하는 방법에 대한 조언을 듣고 싶습니다. Windows 10 UI가 제한되어 있다는 것을 알고 있지만 Powershell에서 계층화 기능을 얻을 수 있는 것 같습니다. 저장 공간에 대한 문서를 읽고 기능을 풀어보는 것은 기쁘지만 내 전략이 타당하다면 약간의 의견도 듣고 싶습니다.

현재 내가 가지고 있는 것은 다음과 같습니다.

  • 2x256GB SSD - 할당되지 않음, 기존 RAID0 부팅+앱 볼륨임
  • 1x5TB HDD - 미디어+게임+앱(이 드라이브를 폐기하고 싶습니다)
  • 1x8TB HDD - 미디어+문서+사진
  • 2x8TB HDD - 새로운 미사용 디스크
  • CPU: Z97 칩셋 mobo의 i7 4790k, 때가 되면 아마도 Ryzen3으로 업그레이드할 것입니다.
  • 내 부팅 드라이브는 512GB NVMe 디스크입니다.

위의 드라이브로 두 권의 볼륨을 구성하고 싶습니다. 이상적으로는 이것이 내가 원하는 것입니다:

  • 게임+스크래치 볼륨: 256GB 스트라이프 SSD 계층 + 3TB 스트라이프 HDD 계층
  • 미디어+문서+사진 볼륨: 256GB 미러링 SSD 계층 + 14TB '패리티' HDD 계층

게임과 스크래치 볼륨의 모든 항목은 데이터를 다시 다운로드할 수 있으므로 잃을 수도 있습니다. 예를 들어 내 VM '메모리' 파일, 플렉스 데이터베이스 등을 스크래치 디스크에 넣습니다. 민감한 내용은 다른 볼륨에 백업하겠습니다.

미디어+문서+사진 볼륨에 하나 이상의 드라이브 중복성을 원합니다. 문서+사진을 오프사이트에 백업해 두었습니다. 그래서 이것은 내가 드라이브를 잃어버릴 경우 두통을 덜 수 있게 해줍니다.

이 설정이 합리적이고 Windows 10 Pro 시스템에서 달성할 수 있는 것입니까?

또한 이전 버전의 Windows에서는 저장 공간의 '패리티' 풀 성능이 매우 좋지 않다는 내용도 읽었습니다. 이건가?아직진실? HDD 4개 중 2개가 사용되었기 때문에 패리티 구성에 대한 실제 테스트를 수행할 수 없었습니다. 누군가가 이전에 이 작업을 수행한 경험이 있는 경우 여기에 물어볼 것이라고 생각했습니다.

어떤 다른 솔루션을 조사해야 합니까?

답변1

Windows 10 계층형 스토리지 공간을 만들려면 다음 참조를 참조하세요.

여기에서는 SSD 및 HDD용 2계층 스토리지 공간을 생성하는 Nils Schimmelmann의 PowerShell 스크립트를 재현합니다.

#Variables
$StoragePoolName = "My Storage Pool"
$TieredSpaceName = "My Tiered Space"
$ResiliencySetting = "Simple"
$SSDTierName = "SSDTier"
$HDDTierName = "HDDTier"

#List all disks that can be pooled and output in table format (format-table)
Get-PhysicalDisk -CanPool $True | ft FriendlyName,OperationalStatus,Size,MediaType

#Store all physical disks that can be pooled into a variable, $PhysicalDisks
$PhysicalDisks = (Get-PhysicalDisk -CanPool $True | Where MediaType -NE UnSpecified)       

#Create a new Storage Pool using the disks in variable $PhysicalDisks with a name of My Storage Pool
$SubSysName = (Get-StorageSubSystem).FriendlyName
New-StoragePool -PhysicalDisks $PhysicalDisks -StorageSubSystemFriendlyName $SubSysName -FriendlyName $StoragePoolName

#View the disks in the Storage Pool just created
Get-StoragePool -FriendlyName $StoragePoolName | Get-PhysicalDisk | Select FriendlyName, MediaType

#Create two tiers in the Storage Pool created. One for SSD disks and one for HDD disks
$SSDTier = New-StorageTier -StoragePoolFriendlyName $StoragePoolName -FriendlyName $SSDTierName -MediaType SSD
$HDDTier = New-StorageTier -StoragePoolFriendlyName $StoragePoolName -FriendlyName $HDDTierName -MediaType HDD

#Identify tier sizes within this storage pool
$SSDTierSizes = (Get-StorageTierSupportedSize -FriendlyName $SSDTierName -ResiliencySettingName $ResiliencySetting).TierSizeMax
$HDDTierSizes = (Get-StorageTierSupportedSize -FriendlyName $HDDTierName -ResiliencySettingName $ResiliencySetting).TierSizeMax 

#Create a new virtual disk in the pool with a name of TieredSpace using the SSD and HDD tiers
New-VirtualDisk -StoragePoolFriendlyName $StoragePoolName -FriendlyName $TieredSpaceName -StorageTiers $SSDTier, $HDDTier -StorageTierSizes $SSDTierSizes, $HDDTierSizes -ResiliencySettingName $ResiliencySetting  -AutoWriteCacheSize -AutoNumberOfColumns

#Alternatively try adjusting the sizes manually:
#New-VirtualDisk -StoragePoolFriendlyName $StoragePoolName -FriendlyName $TieredSpaceName -StorageTiers @($SSDTier,$HDDTier) -StorageTierSizes @(228GB,1.816TB) -ResiliencySettingName $ResiliencySetting -AutoWriteCacheSize -AutoNumberOfColumns

답변2

다음 예에서는 SSD 계층이 미러링되고 HDD 계층이 패리티로 구성된 다중 복원 볼륨을 생성하는 방법을 보여줍니다.

New-StorageTier -StoragePoolFriendlyName Pool1 -FriendlyName SSD_Tier -MediaType SSD -ResiliencySettingName Mirror
New-StorageTier -StoragePoolFriendlyName Pool1 -FriendlyName HDD_Tier -MediaType HDD -ResiliencySettingName Parity
$ssd_tier = Get-StorageTier -FriendlyName SSD_Tier
$hdd_tier = Get-StorageTier -FriendlyName HDD_Tier
New-VirtualDisk -StoragePoolFriendlyName Pool1 -FriendlyName "VirtualDisk" -StorageTiers @($ssd_tier,$hdd_tier) -StorageTierSizes 100GB, 300GB

원천:https://www.starwindsoftware.com/blog/configure-a-resilient-volume-on-windows-server-2016-using-storage-spaces

답변3

@harrymc의 답변이 효과가 없었습니다.

두 크기를 모두 조금 줄여야 했습니다(여기서는 "제수"만큼).

또한 계층에서 복원력을 "미러"로 보고하는 것을 확인하여 "단순"으로 설정했지만 이것이 필요한지 확실하지 않습니다.

#Variables
$StoragePoolName = "MyPool"
$TieredSpaceName = "MySpace"
$ResiliencySetting = "Simple"
$SSDTierName = "SSDTier"
$HDDTierName = "HDDTier"

#List all disks that can be pooled and output in table format (format-table)
Get-PhysicalDisk -CanPool $True | ft FriendlyName,OperationalStatus,Size,MediaType

#Store all physical disks that can be pooled into a variable, $PhysicalDisks
$PhysicalDisks = (Get-PhysicalDisk -CanPool $True | Where MediaType -NE UnSpecified)       

#Create a new Storage Pool using the disks in variable $PhysicalDisks with a name of My Storage Pool
$SubSysName = (Get-StorageSubSystem).FriendlyName
New-StoragePool -PhysicalDisks $PhysicalDisks -StorageSubSystemFriendlyName $SubSysName -FriendlyName $StoragePoolName

#View the disks in the Storage Pool just created
Get-StoragePool -FriendlyName $StoragePoolName | Get-PhysicalDisk | Select FriendlyName, MediaType

#Create two tiers in the Storage Pool created. One for SSD disks and one for HDD disks
$SSDTier = New-StorageTier -StoragePoolFriendlyName $StoragePoolName -FriendlyName $SSDTierName -MediaType SSD -ResiliencySettingName $ResiliencySetting
$HDDTier = New-StorageTier -StoragePoolFriendlyName $StoragePoolName -FriendlyName $HDDTierName -MediaType HDD -ResiliencySettingName $ResiliencySetting

#Identify tier sizes within this storage pool
$SSDTierSizes = (Get-StorageTierSupportedSize -FriendlyName $SSDTierName -ResiliencySettingName $ResiliencySetting)
$HDDTierSizes = (Get-StorageTierSupportedSize -FriendlyName $HDDTierName -ResiliencySettingName $ResiliencySetting)

#Create a new virtual disk in the pool with a name of TieredSpace using the SSD and HDD tiers
New-VirtualDisk -StoragePoolFriendlyName $StoragePoolName -FriendlyName $TieredSpaceName -StorageTiers $SSDTier, $HDDTier -StorageTierSizes @(($SSDTierSizes.TierSizeMax - $SSDTierSizes.TierSizeDivisor * 8), ($HDDTierSizes.TierSizeMax - $HDDTierSizes.TierSizeDivisor * 10)) -ResiliencySettingName $ResiliencySetting  -AutoWriteCacheSize -AutoNumberOfColumns

답변4

RAID 중복성은 드라이브 오류에 도움이 될 수 있지만 랜섬웨어 바이러스가 파일을 암호화하는 경우 또는 연결된 모든 하드 드라이브를 날려버릴 수 있는 전원 공급 장치의 치명적인 오류에는 도움이 될 수 없습니다(본 적이 있음). 내 접근 방식은 전체 하드 드라이브 세트 사본을 서랍에 오프라인으로 두고 두 달에 한 번씩 업데이트하여 작업 세트와 교환하는 것입니다. 그런 식으로 사용 시간이 분배됩니다. 중요한 데이터에는 추가 백업이 있습니다. 빠른 동기화를 위해 Total Commander를 사용합니다. 또한 모든 콘텐츠의 전체 MD5 텍스트 파일은 가능한 손상을 감지하는 데 유용합니다. 손상 또는 삭제 시 복구하기 위해 백업에 추가하는 데 매우 유용한 중복 파일 메이커는 다음과 같습니다.http://www.ice-graphics.com/ICEECC/IndexE.html

관련 정보