태그 보관물: raid

Windows10 – Raid 0 Configuration using Storage Space

저장소 공간을 이용한 Raid 0은(단순-Simple 유형) 구성을해도 속도 향상이 거의 없어

스팬 볼륨일 거라는 말이 많았죠.

구글링을 해보니 저장소 공간 GUI에서는 제대로된 Raid 0 설정을 할 수 없고 파워쉘을 통해 구성

해야만 되는 거였습니다.

 

저장소 공간의 “Columns”라는 “열” 설정이 동시에 읽기/쓰기를 할수 있는 피지컬 드라이브 숫자

설정인데 GUI에서 2개의 디스크로 단순(Simple) 유형을 만들면 “Columns”이 “1”로 설정되어 속도

향상이 없던거였습니다.  GUI에는 바꿀수있는 옵션이 없습니다.

파워쉘로 “Columns” 를 설정해 만들어주면 Raid 0으로 아주 잘되고 속도 또한 좋습니다.

저장소 공간 Raid 0의 장점은 SSD 트림을 확실하게 지원합니다.

 

디스크관리자와 작업관리자에서 보드내장 Raid 처럼 하나의 드라이브만 표시 되어 관리가 쉽습니다.

데이터 삭제 없이 디스크를 추가할 수 있습니다.

** 디스크 추가는 처음 설정된 “Columns(열)” 수의 배수로 추가해야 되고 “Columns”수는 고정으로 변하지 않습니다.

예를들어 “2열” 설정으로 디스크 2개를 묶었으면 나중에 추가할때 디스크 2개를 추가해야하고(2,4,6,8…)

디스크 4개가 되도 열수는 “2열” 고정이라 2개 묶은 속도만 나옵니다.

속도는 상관 없고 추가 용량만 필요한 상황일때 좋겠죠.

 

이제 만드는 방법입니다.

처음부터 끝까지 파워쉘로만 만드는 방법이 있으나 어려우니 저장소 풀 까지는 GUI에서 만듭니다.

1. 디스크관리자를 실행해 Raid 0으로 묶을 디스크들의 볼륨을 삭제 합니다.

2. 제어판 – 저장소공간 – 새 풀 및 저장소 공간 만들기로 들어갑니다.

e3fd12641178cb89c00b4589ca2d69ce9b7b9006.png

 

3. 드라이브를 선택하고 풀 만들기를 합니다.

9decc1eca47a0227e615d944ac75e70b2473b71f.png

 

* 생성 오류가 나는 경우 디스크 초기화를 합니다. 방법은 관리자모드 파워쉘을 실행하고

Get-PhysicalDisk | ft FriendlyName, SerialNumber, UniqueId -auto

하면 드라이브 목록이 뜹니다.

Reset-PhysicalDisk -FriendlyName “WDC WD20 EZRZ-00Z5HB0”

목록에서  초기화할 디스크의 FriendlyName 을 “WDC WD20 EZRZ-00Z5HB0” 에 적어 초기화합니다.

 

4. 저장소 풀은 만들어 졌으니  “취소” 를 누르고 나갑니다.

6e05bacf1462fb1e65c00fd870ce6c70bb21fc36.png

“저장소 공간 만들기” 누르면 “Columns” “1” 설정으로 바로 만들어져서 전부 삭제하고 다시 해야 됩니다.

 

5. 오른쪽에 “풀 이름 바꾸기”에 들어갑니다. 활성화가 안되어 있으면 “확인” 위에있는 설정변경을 누르면 됩니다.

f7d7964864811c9400b7e002a7d04d7d7a4cb832.png

 

6. 원하는 이름으로 바꾸고 “풀 이름 바꾸기”

bf22a860ee296d552a1086640e4c34ebf1e8a55b.png

 

7. 관리자모드 파워쉘을 열고

New-VirtualDisk -FriendlyName WriteBack -StoragePoolFriendlyName  “NVME”  -NumberOfColumns 2 -Interleave 32768 -ResiliencySettingName simple -UseMaximumSize

입력합니다.

-FriendlyName WriteBack : 만들어질 가상 드라이브(Raid0)의 이름인데 나중에 초기화 해야되니 아무거나 해도 됩니다.

-StoragePoolFriendlyName  “NVME” : 6번에서 바꿔준 이름을 넣습니다.

-Interleave 32768 : 스트라이프 사이즈입니다. 이 옵션을 빼면 저장소 기본 256K로 됩니다. 일반환경에선 64K나 128K 정도가 성능이 가장 좋습니다. 1024를 곱해서 넣어주면 됩니다. 잔파일이 많을수록 작게, 큰파일이 많을수록 크게 잡는게 좋습니다.

저는 잔파일이 아주 많은 스크래치 디스크라 32K로 했습니다.

-NumberOfColumns 2 :  가장 중요한 2열을 쓴다는 설정입니다. 디스크가 3개면 3을 넣어야겠죠.

-ResiliencySettingName simple -UseMaximumSize : 유형을 단순(Raid0)으로, 디스크 크기는 적용할수있는 최대 사이즈로 만듭니다.

 

8. 또 다른 내 경우 4개의 NVMe disk Raid 0 으로 설정하기 위해 아래 설정을 이용

New-VirtualDisk -FriendlyName WriteBack -StoragePoolFriendlyName “NVME” -NumberOfColumns 4 -Interleave 131072 -ResiliencySettingName simple -UseMaximumSize

 

9.제대로 만들어지면 이렇게 나옵니다.

b3f16072b98141be884d50edfab0489fa3d50999.png

 

10. 디스크 관리자를 실행해서 초기화하고 포맷하고 쓰면 됩니다.

9789c1e3cb973b5c127c530acd310fdba43a1253.png

길어보여도 중간에 파워쉘 명령어만 잘 입력하면 쉽게 만들어 집니다.

 

참고 링크

https://answers.microsoft.com/en-us/windows/forum/windows_10-files/storage-spaces-trying-to-create-a-raid-0-with/c440086c-4bb6-410d-9e92-fd98ce6626cc

https://social.technet.microsoft.com/Forums/en-US/322755f0-6a38-49b5-9158-49ae04031098/storage-spaces-only-supports-jbod-and-not-raid0?forum=win10itprovirt

https://www.dell.com/support/manuals/ko-kr/storage-md1420-dsms/dsms_bpg_pub-v2/microsoft-storage-spaces-best-practices?guid=guid-8d032e58-86f2-4d36-9617-7a82596848f5

– 델의 마소 저장소 공간 설명서 인데 여러개의 하드를 묶고 SSD로 캐시를 구성하는 방법까지 잘 나와 있습니다.

———————————————————————————————————————————–

<추가합니다.>

** GUI로 풀생성시 물리섹터가 4K인 디스크들을 묶으면 논리섹터가 4K로 잡힙니다.

데이터 입출력에는 문제가 없으나 프로그램이나 게임 실행시 오류가 날수있습니다.

이럴땐 GUI가 아닌 파워쉘에서 논리섹터를 강제로 512로 잡아 풀을 생성해야 합니다.

물리섹터가 512인 디스크들은 자동 논리섹터 512로 잡힙니다.

 

관리자모드 파워쉘을 실행합니다.

Get-PhysicalDisk | sort-object SlotNumber | select SlotNumber, FriendlyName, Manufacturer, Model, PhysicalSectorSize, LogicalSectorSize | ft

연결된 디스크들의 물리와 논리 섹터를 보여주는 파워쉘 명령어 입니다.

묶을 디스크의 물리섹터가 4K(4096)이고 게임이나 프로그램을 실행한다면 파워쉘로 논리섹터 512로

저장소 풀을 생성합니다.

$PhysicalDisks = (Get-PhysicalDisk -CanPool $True)

풀생성 가능한 디스크들을 보여주고 “$PhysicalDisks” 항목으로 설정.

여기서 보이는 디스크들이 전부 저장소 풀이 됩니다.

New-StoragePool -FriendlyName NVME -StorageSubsystemFriendlyName “Windows Storage*” -PhysicalDisks $PhysicalDisks -LogicalSectorSizeDefault 512

“NVME”라는(원하시는거로 바꿔 주세요.) 새로운 풀을 생성합니다.

-LogicalSectorSizeDefault 512 : 논리섹터 사이즈 512로 설정.

이후 7번 항목 “New-VirtualDisk” 로 저장소 공간을 만들어 주면 됩니다.

프로그램 실행 안하면 물리4k, 논리4K로 쓰는게 속도가 더 빠릅니다.

프로그램이나 게임을 실행한다면 논리섹터 512로 풀을 생성해야 합니다.

전부 그런건 아니지만 일부 게임이나 프로그램에서 논리섹터 4K를 쓰면 오류가 납니다.

물리섹터가 512인 디스크는 논리섹터 4K는 안되고 512만 됩니다.

하드,SSD의 물리섹터는 제품마다 4K, 512 제각각입니다 ㅡㅡ;

 

Synology RAID Volume 단일 Volume으로 변경하기

시놀로지는 볼륨 관리를 위해 md라고 불리는 software raid를 사용합니다.
raid를 관리하기 위해 사용하는 명령어가 mdadm 입니다.

보통은, /dev/md0가 OS 파티션, /dev/md1이 swap 파티션, 그리고 사용자가 사용하는 첫번째 볼륨 파티션이 /dev/md2로 생성되는데요..

“cat /proc/mdstat” 명령을 치시면 현재 사용하고 있는 md raid 정보가 출력됩니다.

?? ??2.png

이중 md 구성 별 blocks 수를 대략 비교 해보며 Disk Size 별로 어떤 Volume 인지 확인합니다.

mdadm –grow –raid-devices=1 –force /dev/[md2] <— 분리 하고자 하는 md 번호

상기 명령을 통해 원하는 Volume Raid를 분리 할 수 있습니다.