1. Stripping (RAID 0)
RAID level 0은 장애 발생에 대비한 여분의 저장공간을 갖지 않는다. 그러므로 엄밀히 이야기하자면 RAID의 정의에 부합된다고 볼
수 없다. 그러나 Level 0에서 데이터는 빠른 입출력이 가능하도록 여러 드라이브에 분산되도록 구성되고, 그에 따라 각 디스크의 디
스크 암이 동시에 데이터의 I/O를 분담하므로 2개의 디스크에서는 보통의 디스크와 비슷한 성능을 발휘하지만 여러 개로 구성된 경우
에는 충분히 성능을 향상할 수 있다. 또한 분산된 디스크와 디스크의 Interface Card의 종류,속도가 동일할 수록 좋은 성능을 보인다.
하지만 RAID Level 0의 경우 성능은 매우 뛰어나지만 여분의 정보를 기록하지 않기 때문에 어느 한 드라이브에서 장애가 발생하게
되면 데이터는 손실되며,이 레벨을 striping이라고 부른다.
최적 스트라이프 크기 결정
스트라이프 크기는 4, 8, 16, 32 또는 64KB로 설정이 가능하며, 기본 값으로 8KB를 사용한다.논리 볼륨의 스트라이프 크기는 그 사용
용도에 따라 적절히 구성해야 하고 스트라이프를 구성하는 각 데이터 블록의 크기와 같게 맞춰주는 것이 좋다. 표 14.1은 사용용도에
따른 적정 스트라이프 크기를 나타낸다. 그러나 상황에 따른 스트라이프 크기 결정은 관리자의 몫이라 할 수 있다.
용 도 | Description |
hfs |
HFS 파일 시스템에 스트라이프된 논리 볼륨을 사용할 경우, 4, 8, 16, 32, 64KB 크기 중 파일 시스템의 블록 크기를 가장 가깝게 반영하는 스트라이프 크기를 선택한다. newfs 명령을 사용하면 파일 시스템을 만들 때 블록 크기 지정이 가능하며 HFS에 기본 블록 크기는 8KB이다. |
JFS |
JFS(VxFS) 파일 시스템에 스트라이프된 논리 볼륨을 사용할 경우, 스트라이프로 사용 가능한 가장 큰 크기인 64KB를 사용한다. I/O에 사용할 목적으로 JFS는 데이터 블록을 확장 영역으로 결합하기 때문에 기본 값인 1KB에서 계속적으로 증가될 수 있기 때문에 가장 큰 블록 크기를 사용해야 I/O의 효율을 높일 수 있다. |
Swap |
스트라이프된 논리 볼륨을 스왑 공간으로 사용할 경우, 성능을 가장 좋게 하려면 스트라이프 크기를 16KB로 설정한다.
|
Raw device |
스트라이프된 논리 볼륨을 Raw 데이터 파티션으로 사용할 경우, 스트라이프 크기는 응용 프로그램의 기본 I/O 크기와 같게 한다. |
<표 14.1> 용도에 따른 적정 스트라이프 크기
그림 14.1은 새로운 볼륨 그룹 vg01을 생성하고 두 개의 디스크에 스트라이핑 된 lvol1을 생성하는 예제이다. 그림에서 보는 바와 같이
우선 준비된 디스크에 PV 정보를 생성한 후 vg01의 볼륨 그룹을 생성한 후 lvol1을 2개의 볼륨에 스트라이핑하여 생성한다.
㉠ pvcreate -f /dev/rdsk/c0t3d0 : 준비된 디스크에 PV정보를 생성한다.
㉡ pvcreate -f /dev/rdsk/c0t4d0 : 준비된 디스크에 PV정보를 생성한다.
㉢ mkdir /dev/vg01 : vg01 볼륨그룹 생성을 위해 vg01의 정보가 저장될 디렉토리 생성
㉣ mknod /dev/vg01/group c 64 0x010000 : vg01의 볼륨그룹 생성을 위해 LVM group파일을 생성한다.
㉤ vgcreate /dev/vg01 /dev/dsk/c0t3d0 /dev/dsk/c0t4d0 : 준비된 두 개의 물리볼륨으로 vg01 볼륨그룹을 생성한다.
㉥ lvcreate -i 2 -I 64 -l 20 /dev/vg01 : lvcreate명령으로 논리볼륨을 생성한다. -i 옵션은 스트라이핑 할 디스크의 개수를
말하며, 대문자 -I 옵션은 각 스트라이프의 크기를 말한다. 스트라이프의 크기는 앞
서 말한 바와 같이 2, 4, 8, 16, 32, 64KB중 하나이어야 한다. 마지막 -l 옵션은 lvol
생성 시 extend 개수를 20개 할당한다는 것이다.
<그림 14.1> lvol 스트라이핑 설정의 예
그림 14.1에서 보는 바와 같이 스트라이핑이 설정된 lvol1의 생성이 정상적으로 이루어 졌다. 아래 그림 14.2는 스트라이핑 설정 후
lvdisplay 명령으로 /dev/vg01/lvol1을 디스플레이 한 것이다.
그림을 보면 lvol1은 20개의 extend가 할당되어 80MB의 용량으로 설정되었다. 그리고 Stripes란에 2개의 볼륨에 stripping되었다는
정보가 출력되며, 각 스트라이프 사이즈는 64KB로 생성되었음을 알 수 있다. 그리고 제일 하단에 있는 Logical extents를 보면 ex
tent가 /dev/dsk/c0t3d0와 /dev/dsk/c0t4d0 두 개의 물리볼륨에 번갈아 가며 할당 된 것을 알 수 있다.
<그림 14.2> 스트라이핑 설정 후 lvol의 정보