Solaris 11.2는 ZFS 파일 시스템을 기반으로 합니다. 디스크 I/O, 디스크 분할 및 디스크 미러링(또는 RAID)은 전적으로 ZFS에 의해 처리됩니다. 따라서 UFS 파일 시스템에서 일반적으로 수행되었으므로 디스크를 분할할 필요가 없습니다. 전체 시스템 디스크는 단일 파티션으로 제공되어야 합니다.
스토리지 배열은 이미 RAID로 구성되었으므로 ACSLS 파일 시스템에 대해 ZFS를 사용해서 추가 RAID 레벨을 구성할 필요가 없습니다. ZFS RAID는 간단한 JBOD 디스크를 사용하는 경우에 필수지만 정규화된 디스크 배열을 사용할 경우 추가 RAID는 선택사항입니다. 아래 예제에서는 각 접근 방법을 보여줍니다.
Solaris 플랫폼은 2개의 물리적 디스크 드라이브로 구성되어야 합니다. 최적의 ZFS 성능을 위해서는 시스템 디스크 및 해당 미러 드라이브를 분할합니다.
운영체제 설치 이전에 새 시스템에서 파티션 0에 전체 디스크 공간 중 대부분(아니면 전체)이 포함되도록 각 시스템 디스크 드라이브를 분할할 수 있습니다. ZFS는 전체 디스크에 액세스할 수 있는 경우 더 빠르고 안정적으로 작동합니다. 두번째 디스크에서 ZFS에 대해 정의된 파티션 크기가 주 디스크에 정의된 크기와 동일한지 확인합니다.
Solaris 11.2가 이미 설치된 시스템에서 root
파티션 크기를 보려면 주 시스템 디스크에서 format
또는 fdisk
를 사용합니다. 같은 크기의 파티션으로 두번째 시스템 디스크를 포맷합니다. 포맷이 완료되면 디스크 레이블을 지정합니다.
시스템이 작동되면 zpool
status
명령으로 rpool
을 확인합니다.
# zpool status pool: rpool state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 c0t5000C5000EA48903d0s0 ONLINE 0 0 0
두번째 시스템 디스크를 식별하고 해당 장치 ID를 확인합니다.
# echo | format AVAILABLE DISK SELECTIONS: 0. c0t5000C5000EA48893d0 <SUN146G cyl 14087 alt 2 hd 24 sec 848> /scsi_vhci/disk@g5000c5000ea48893 1. c0t5000C5000EA48903d0 <SUN146G cyl 14087 alt 2 hd 24 sec 848> /scsi_vhci/disk@g5000c5000ea48903
2단계에 나와 있는 장치와 거의 비슷한 크기의 대체 장치를 선택합니다. 이 예제에서 두번째 디스크 ID는 c0t5000C5000EA48893d0s입니다.
두번째 디스크를 rpool
에 추가합니다.
# zpool attach -f rpool \ c0t5000C5000EA48903d0 \ c0t5000C5000EA48893d0
시스템이 미러링된 드라이브에 대한 리실버링을 시작하여 부트 드라이브의 내용을 두번째 드라이브로 복사합니다. 이 작업은 몇 분 정도 걸리며 중간에 재부트를 통해 중단되지 않아야 합니다.
다음을 사용해서 진행 상황을 모니터할 수 있습니다.
zpool status -v
주 1: 리실버링이 완료될 때까지 모든 상태 표시에는 해당 디스크가 성능 저하 모드로 표시됩니다. 주 디스크에서 미러로 정보를 복사하는 중에는 디스크가 성능 저하 상태로 유지됩니다.
주 2: 디스크 레이블이 EFI 디스크로 표시되어 zpool
attach
가 실패하면 Solaris 관리: 장치 및 파일 시스템(http://docs.oracle.com/cd/E23824_01/pdf/821-1459.pdf
) 문서에 설명된 프로세스를 따릅니다. 이 프로세스는 다음과 같이 EFI 디스크를 SMI로 전환합니다.
# format -e (select the drive to serve as the rpool mirror). format> partition partition> print partition> label (specify label type "0") Ready to label? y partition> modify (select "1" All free Hog) Do you wish to continue ... yes Free Hog Partition[6]? (specify partition "0") (Specify a size of "0" to the remaining partitions) Okay to make this current partition table? yes Enter table name: "c1t1d0" Ready to label disk? y partition> quit format> quit
미러링된 rpool
구성을 확인합니다.
# zpool status pool: rpool state: ONLINE scan: resilvered 6.89G in 0h3m with 0 errors config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t5000C5000EA48903d0 ONLINE 0 0 0 c0t5000C5000EA48893d0 ONLINE 0 0 0
인접한 노드에서 이 작업을 반복합니다.
ACSLS 파일 시스템은 외부 공유 스토리지 배열의 zpool
에 상주합니다. 아래 예제에서는 2개의 디스크만 사용하는 간단한 미러링된 배열(RAID 1)이 사용됩니다. 이러한 드라이브는 실제 드라이브일 수 있지만 대부분의 경우 연결된 스토리지 배열과 별개의 드라이브로 표시되는 가상 장치입니다.
스토리지 배열은 이미 RAID로 구성되었으므로 ACSLS 파일 시스템에 대해 ZFS를 사용해서 추가 RAID 레벨을 구성할 필요가 없습니다. ZFS RAID는 간단한 JBOD 디스크를 사용하는 경우에 필수지만 정규화된 디스크 배열을 사용할 경우 추가 RAID는 선택사항입니다. 아래 예제에서는 각 접근 방법을 보여줍니다.
공유 스토리지 배열을 준비합니다.
표준 구성에서는 디스크 배열에서 단일 가상 드라이브를 사용합니다. 그렇지 않으면 ZFS RAID 미러링 구성에 같은 크기의 가상 드라이브 2개가 사용됩니다. 디스크 배열 또는 Solaris 포맷 유틸리티와 함께 관리 도구를 사용해서 2개의 가상 드라이브를 같은 크기가 되도록 분할할 수 있습니다.
ACSLS 설치의 기본 디렉토리를 결정합니다.
ACSLS 8.4는 모든 파일 시스템에 설치할 수 있습니다. 선택한 기본 파일 시스템은 시스템 rpool
에 존재하지 않아야 합니다. 이미 존재하는 경우 기존 파일 시스템을 먼저 삭제해야 새 zpool
아래에 파일 시스템을 만들 수 있습니다.
ACSLS에 대해 기본값인 /export/home
기본 디렉토리를 사용하려는 경우 Solaris 11.2의 기본 root
풀에서 /expor
t 파일 시스템을 삭제해야 합니다.
/export/home
이 rpool
에 연결되었는지 확인하려면 다음 명령을 실행합니다.
# zfs list
rpool
에서 /export/home
을 분리하려면 먼저 보존하려는 파일 또는 디렉토리를 저장합니다. 사용자의 홈 디렉토리가 현재 /export/home
에서 활성 상태가 아닌지 확인합니다. 그런 후 zfs
destroy
를 사용해서 /export
아래의 모든 항목을 제거합니다.
# zfs destroy -r rpool/export
이 단계를 반복해서 인접한 노드에서 rpool/export
를 분리합니다.
format
을 사용해서 연결된 디스크 배열에 있는 드라이브의 장치 이름을 식별합니다.
# echo | format AVAILABLE DISK SELECTIONS: 0. c0t5000C5000EA48893d0 <FUJITSU-MAY2073RCSUN72G-0501-68.37GB> /pci@0,0/pci1022,7450@2/pci1000,3060@3/sd@0,0 /dev/chassis/SYS/HD0/disk 1. c0t5000C5000EA48893d0 <FUJITSU-MAY2073RCSUN72G-0501-68.37GB> /pci@0,0/pci1022,7450@2/pci1000,3060@3/sd@1,0 /dev/chassis/SYS/HD1/disk 3. c0t600A0B800049EDD600000C9952CAA03Ed0 <SUN-LCSM100_F-50.00GB> /scsi_vhci/disk@g600a0b800049edd600000c9952caa03e 4. c0t600A0B800049EE1A0000832652CAA899d0 <SUN-LCSM100_F-50.00GB> /scsi_vhci/disk@g600a0b800049ee1a0000832652caa899
이 예제에서는 장치 이름이 c0t600A...
로 시작하는 디스크 배열에서 2개의 시스템 디스크와 2개의 가상 디스크가 제공되어 있습니다.
acslspool
을 만듭니다.
정규화된 디스크 배열을 사용하는 표준 구성의 경우 다음과 같이 acslspool
을 만듭니다.
# zpool create -m /export/home acslspool\ /dev/dsk/c0t600A0B800049EDD600000C9952CAA03Ed0
1단계에서 제안한 대로 ZFS RAID를 추가한 경우 다음과 같이 미러링된 구성을 만듭니다.
# zpool create -m /export/home acslspool mirror \ /dev/dsk/c0t600A0B800049EDD600000C9952CAA03Ed0 \ /dev/dsk/c0t600A0B800049EE1A0000832652CAA899d0
새 acslspool
을 확인합니다.
# zpool status acslspool pool: acslspool state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM acslspool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t600A0B800049EDD600000C9952CAA03Ed0 ONLINE 0 0 0 c0t600A0B800049EE1A0000832652CAA899d0 ONLINE 0 0 0
주:
RAID 디스크 배열을 사용할 경우, 미러링된 ZFS 구성은 선택사항입니다.새 풀에서 테스트 파일을 만들고 확인합니다.
# cd /export/home # date > test # ls test # cat test Tue Jan 7 11:48:05 MST 2015
풀을 내보냅니다.
# cd / # zpool export acslspool
인접 노드에 로그인합니다(이하 '새 현재 노드'라 함).
새 현재 노드에서 /export/home
(또는 ACSLS에 대한 파일 시스템)이 root
풀의 어디에도 마운트되지 않았는지 확인합니다.
# zfs list
파일 시스템이 rpool
에 존재할 경우 이 현재 노드에서 위의 2단계를 반복합니다.
새 현재 노드에서 acslspool
을 가져오고 acslspool
이 이 노드에 있는지 확인합니다.
# zpool import acslspool # zpool status pool: acslspool state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM acslspool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t600A0B800049EDD600000C9952CAA03Ed0 ONLINE 0 0 0 c0t600A0B800049EE1A0000832652CAA899d0 ONLINE 0 0 0
zpool import
가 실패했으면 zpool import -f
로 작업을 시도할 수 있습니다.
주:
RAID 디스크 배열을 사용할 경우, 미러링된 ZFS 구성은 선택사항입니다.테스트 파일이 새 현재 노드에 있는지 확인합니다.
# cd /export/home # ls test # cat test Tue Jan 7 11:48:05 MST 2015