이 절에서는 Oracle VM Server for SPARC 환경에서 볼륨 관리자를 사용하는 방법에 대해 설명합니다.
ZFS, Solaris Volume Manager 또는 VxVM(Veritas Volume Manager) 볼륨은 서비스 도메인에서 가상 디스크로 게스트 도메인에 내보낼 수 있습니다. 볼륨은 단일 슬라이스 디스크(slice 옵션이 ldm add-vdsdev 명령과 함께 지정된 경우) 또는 전체 디스크로 내보낼 수 있습니다.
다음 예에서는 볼륨을 단일 슬라이스 디스크로 내보내는 방법을 보여줍니다.
게스트 도메인의 가상 디스크(예: /dev/dsk/c0d2s0)는 연결된 볼륨(예: /dev/md/dsk/d0)에 직접 매핑되고, 게스트 도메인에서 가상 디스크에 저장되는 데이터는 추가 메타데이터 없이 연결된 볼륨에 직접 저장됩니다. 게스트 도메인에서 가상 디스크에 저장된 데이터는 연관된 볼륨을 통해 서비스 도메인에서 직접 액세스할 수도 있습니다.
예
Solaris Volume Manager 볼륨 d0을 primary 도메인에서 domain1로 내보낸 경우 domain1의 구성을 위해서는 일부 추가 단계가 필요합니다.
primary# metainit d0 3 1 c2t70d0s6 1 c2t80d0s6 1 c2t90d0s6 primary# ldm add-vdsdev options=slice /dev/md/dsk/d0 vol3@primary-vds0 primary# ldm add-vdisk vdisk3 vol3@primary-vds0 domain1
domain1이 바인드되고 시작된 후 내보낸 볼륨은 /dev/dsk/c0d2s0(예)으로 나타나고 사용할 수 있습니다.
domain1# newfs /dev/rdsk/c0d2s0 domain1# mount /dev/dsk/c0d2s0 /mnt domain1# echo test-domain1 > /mnt/file
domain1이 중지되고 바인드 해제된 후 domain1에서 가상 디스크에 저장된 데이터는 Solaris Volume Manager 볼륨 d0을 통해 기본 도메인에서 직접 액세스할 수 있습니다.
primary# mount /dev/md/dsk/d0 /mnt primary# cat /mnt/file test-domain1
RAID 또는 미러 Solaris Volume Manager 볼륨이 다른 도메인에서 가상 디스크로 사용되는 경우 배타적(excl) 옵션 설정 없이 내보내야 합니다. 그렇지 않으면 Solaris Volume Manager 볼륨 구성 요소 중 하나에서 오류가 발생할 경우 metareplace 명령 또는 핫 스페어를 사용한 Solaris Volume Manager 볼륨 복구가 시작되지 않습니다. metastat 명령은 볼륨을 재동기화 중으로 인식하지만 재동기화가 진행되지 않습니다.
예를 들어, /dev/md/dsk/d0은 excl 옵션을 사용하여 다른 도메인에 가상 디스크로 내보낸 RAID Solaris Volume Manager 볼륨이고, d0은 몇 가지 핫 스페어 장치로 구성되어 있습니다. d0의 구성 요소가 실패할 경우 Solaris Volume Manager는 실패한 구성 요소를 핫 스페어로 교체하고 Solaris Volume Manager 볼륨을 재동기화합니다. 하지만 재동기화가 시작되지 않습니다. 볼륨이 재동기화 중으로 보고되지만 재동기화가 진행되지 않습니다.
primary# metastat d0 d0: RAID State: Resyncing Hot spare pool: hsp000 Interlace: 32 blocks Size: 20097600 blocks (9.6 GB) Original device: Size: 20100992 blocks (9.6 GB) Device Start Block Dbase State Reloc c2t2d0s1 330 No Okay Yes c4t12d0s1 330 No Okay Yes /dev/dsk/c10t600C0FF0000000000015153295A4B100d0s1 330 No Resyncing Yes
이러한 경우 Solaris Volume Manager 볼륨을 가상 디스크로 사용하는 도메인을 중지하고 바인드 해제하여 재동기화를 완료해야 합니다. 그런 다음 metasync 명령을 사용하여 Solaris Volume Manager 볼륨을 재동기화할 수 있습니다.
# metasync d0
VxVM이 시스템에 설치되어 있고 DMP(Veritas Dynamic Multipathing)가 가상 디스크로 내보낼 물리적 디스크 또는 분할 영역에서 사용으로 설정된 경우 excl 옵션 설정 없이(기본값 아님) 해당 디스크 또는 분할 영역을 내보내야 합니다. 그렇지 않으면 해당 디스크를 사용하는 도메인을 바인드할 때 /var/adm/messages에 오류가 나타납니다.
vd_setup_vd(): ldi_open_by_name(/dev/dsk/c4t12d0s2) = errno 16 vds_add_vd(): Failed to add vdisk ID 0
vxdisk list 출력에서 다중 경로 정보를 확인하여 Veritas DMP가 사용으로 설정되었는지 여부를 확인할 수 있습니다. 예를 들어, 다음과 같습니다.
# vxdisk list Disk_3 Device: Disk_3 devicetag: Disk_3 type: auto info: format=none flags: online ready private autoconfig invalid pubpaths: block=/dev/vx/dmp/Disk_3s2 char=/dev/vx/rdmp/Disk_3s2 guid: - udid: SEAGATE%5FST336753LSUN36G%5FDISKS%5F3032333948303144304E0000 site: - Multipathing information: numpaths: 1 c4t12d0s2 state=enabled
또는 excl 옵션이 설정된 상태에서 가상 디스크로 내보낼 디스크 또는 슬라이스에서 Veritas DMP가 사용으로 설정된 경우 vxdmpadm 명령을 사용하여 DMP를 사용 안함으로 설정할 수 있습니다. 예를 들어, 다음과 같습니다.
# vxdmpadm -f disable path=/dev/dsk/c4t12d0s2
이 절에서는 가상 디스크에서 Volume Manager를 사용하는 방법에 대해 설명합니다.
모든 가상 디스크는 ZFS로 사용할 수 있습니다. ZFS 저장소 풀(zpool)은 이 zpool의 일부인 저장소 장치를 인식(도메인에서 이러한 장치를 가상 장치 또는 실제 장치로 인식하는지 상관없이)하는 모든 도메인에서 가져올 수 있습니다.
모든 가상 디스크는 Solaris Volume Manager 로컬 디스크 세트에서 사용할 수 있습니다. 예를 들어, 가상 디스크는 로컬 디스크 세트의 Solaris Volume Manager 메타 장치 상태 데이터베이스 metadb를 저장하고 로컬 디스크 세트에서 Solaris Volume Manager 볼륨을 만드는 데 사용할 수 있습니다.
백엔드가 SCSI 디스크인 모든 가상 디스크는 Solaris Volume Manager 공유 디스크 세트 metaset에서 사용할 수 있습니다. 백엔드가 SCSI 디스크가 아닌 가상 디스크는 Solaris Volume Manager 공유 디스크 세트에 추가할 수 없습니다. 백엔드가 SCSI 디스크가 아닌 가상 디스크를 Solaris Volume Manager 공유 디스크 세트에 추가하려고 시도하면 다음과 같은 오류와 함께 실패합니다.
# metaset -s test -a c2d2 metaset: domain1: test: failed to reserve any drives
게스트 도메인에서 VxVM 지원은 Symantec의 VxVM 설명서를 참조하십시오.