탐색 링크 건너뛰기 | |
인쇄 보기 종료 | |
Oracle Solaris 관리: 장치 및 파일 시스템 Oracle Solaris 11 Information Library (한국어) |
15. Oracle Solaris iSNS(Internet Storage Name Service) 구성 및 관리
Oracle Solaris ZFS 루트 환경에서 스왑 공간 추가 및 변경
다음 사항을 결정하려면 SunOS 스왑 방식의 기능을 이해하고 있어야 합니다.
스왑 공간 요구 사항
스왑 공간과 TMPFS 파일 시스템 간의 관계
스왑 공간과 관련된 오류 메시지에서 복구하는 방법
Oracle Solaris OS 소프트웨어 및 응용 프로그램 소프트웨어는 파일 시스템이 아니라 임시 저장소의 일부 디스크 공간을 사용할 수 있습니다. 디스크의 예약 영역을 스왑 공간이라고 합니다. 스왑 공간은 시스템에서 현재 프로세스를 처리하기에 충분한 물리적 메모리가 부족할 경우 가상 메모리 저장소로 사용됩니다. ZFS 루트 파일 시스템에서 스왑을 위해 예약된 디스크 공간이 ZFS 볼륨입니다.
가상 메모리 시스템은 디스크에 있는 파일의 물리적 사본을 메모리의 가상 주소에 매핑합니다. 이러한 매핑에 대한 데이터가 포함된 물리적 메모리 페이지는 파일 시스템의 정규 파일 또는 스왑 공간으로 지원할 수 있습니다. 메모리가 스왑 공간으로 지원되면 메모리를 지원하는 디스크 공간에 할당된 ID가 없기 때문에 익명 메모리라고 합니다.
Oracle Solaris OS는 이러한 페이지를 실제로 지원하는 익명 메모리 페이지와 물리적 저장소(또는 디스크로 지원되는 스왑 공간) 간의 계층인 가상 스왑 공간이라는 개념을 사용합니다. 시스템의 가상 스왑 공간은 시스템의 모든 물리적(디스크 지원) 스왑 공간과 현재 사용 가능한 물리적 메모리 부분의 합과 동일합니다.
가상 스왑 공간에는 다음과 같은 이점이 있습니다.
가상 스왑 공간에는 물리적(디스크) 저장소에 상응하는 공간이 필요하지 않기 때문에 많은 물리적 스왑 공간에 대한 필요성이 줄어듭니다.
SWAPFS라는 의사 파일 시스템은 익명 메모리 페이지에 주소를 제공합니다. 메모리 페이지의 할당을 제어하기 때문에 SWAPFS는 더욱 유연하게 페이지에 대해 발생하는 활동을 결정할 수 있습니다. 예를 들어 SWAPFS는 디스크 지원 스왑 저장소에 대한 페이지의 요구 사항을 변경할 수 있습니다.
TMPFS 파일 시스템은 Oracle Solaris 환경에서 /etc/vfstab 파일의 항목에 의해 자동으로 활성화됩니다. TMPFS 파일 시스템은 디스크가 아닌 메모리(/tmp 디렉토리)에 파일 및 파일 관련 정보를 저장하므로 이러한 파일에 더욱 빠르게 액세스할 수 있습니다. 이 기능은 /tmp를 많이 사용하는 컴파일러 및 DBMS 제품과 같은 응용 프로그램의 성능을 크게 향상시킵니다.
TMPFS 파일 시스템은 시스템 스왑 리소스의 /tmp 디렉토리에서 공간을 할당합니다. 이 기능을 사용하면 /tmp 디렉토리의 공간을 모두 사용 시 스왑 공간도 모두 사용하게 됩니다. 따라서 응용 프로그램이 /tmp 디렉토리를 많이 사용하는 상태에서 스왑 공간의 사용을 모니터하지 않으면 시스템에서 스왑 공간이 부족할 수 있습니다.
스왑 리소스가 제한되어 있더라도 TMPFS를 사용하려면 다음과 같이 사용하십시오.
TMPFS가 사용할 수 있는 스왑 리소스의 양을 제어하는 크기 옵션(-o size)을 사용하여 TMPFS 파일 시스템을 마운트합니다.
컴파일러의 TMPDIR 환경 변수를 사용하여 다른 큰 디렉토리를 가리킵니다.
컴파일러의 TMPDIR 변수를 사용하는 경우에만 컴파일러의 /tmp 디렉토리 사용 여부를 제어할 수 있습니다. 이 변수는 /tmp 디렉토리를 사용하는 다른 프로그램에는 영향을 미치지 않습니다.
덤프 장치는 일반적으로 시스템 충돌 덤프 정보를 저장하기 위해 예약된 디스크 공간입니다. 시스템이 설치되면 ZFS 스왑 볼륨 및 덤프 볼륨이 자동으로 만들어집니다. dumpadm 명령을 사용하여 시스템의 덤프 볼륨을 변경할 수 있습니다. 자세한 내용은 Oracle Solaris 관리: 일반 작업의 17 장, 시스템 충돌 정보 관리(작업)를 참조하십시오.
ZFS 루트 환경에서 스왑 및 덤프는 별도의 ZFS 볼륨으로 구성됩니다. 이 모델의 장점은 다음과 같습니다.
스왑 및 덤프 영역을 포함하기 위해 디스크를 분할할 필요가 없습니다.
스왑 및 덤프 장치에서 기본 ZFS I/O 파이프라인 아키텍처의 이점이 활용됩니다.
스왑 및 덤프 장치에서 압축과 같은 특성을 설정할 수 있습니다.
스왑 및 덤프 장치의 크기를 재설정할 수 있습니다. 예를 들면 다음과 같습니다.
# zfs set volsize=2G rpool/dump # zfs get volsize rpool/dump NAME PROPERTY VALUE SOURCE rpool/dump volsize 2G -
대용량 덤프 장치를 재할당하는 프로세스의 경우 많은 시간이 걸립니다.
활성 시스템에서 보조 스왑 볼륨을 추가하여 전체 스왑 크기를 늘릴 수 있습니다.
ZFS 스왑 및 덤프 장치의 사용에 대한 자세한 내용은 Oracle Solaris 관리: ZFS 파일 시스템의 ZFS 스왑 및 덤프 장치 관리를 참조하십시오.
좋은 실례로 충분한 스왑 공간을 할당하여 동적으로 재구성하는 동안 오류가 발생한 CPU 및 시스템 보드를 지원하는 것을 들 수 있습니다. 그렇지 않으면 CPU 또는 시스템 보드 오류로 인해 메모리가 부족한 상태에서 호스트 또는 도메인이 재부트될 수 있습니다.
이와 같이 추가 스왑 공간을 사용 가능하도록 설정하지 않으면 메모리 부족으로 인해 한 개 이상의 응용 프로그램이 시작하지 못할 수 있습니다. 이러한 문제 발생 시 스왑 공간을 추가하거나 이러한 응용 프로그램의 메모리 사용을 재구성하려면 수동적인 개입이 필요할 수 있습니다.
재부트 시 메모리의 잠재적인 손실을 처리하도록 추가 스왑 공간을 할당한 경우 모든 핵심 응용 프로그램이 정상적으로 실행될 수 있습니다. 이는 사용자가 시스템을 사용할 수 있고 일부 추가 스왑으로 인해 시스템이 느려질 수 있음을 의미합니다.
자세한 내용은 하드웨어 동적 재구성 설명서를 참조하십시오.
SAN 환경과 같은 네트워크 연결 디스크에서 스왑 공간을 구성할 수 있는지 확인하려면 다음 항목을 검토합니다.
로컬로 연결된 디스크에서 스왑 공간 문제를 진단하는 것은 네트워크 연결 디스크에서 스왑 공간 문제를 진단하는 것보다 쉽습니다.
SAN을 통한 스왑 공간 성능은 로컬로 연결된 디스크에서 구성된 스왑 공간 성능에 필적해야 합니다.
로컬로 연결된 디스크로 스왑을 이동하는 것보다는 성능 데이터 분석 후에 성능 문제가 있는 시스템에 메모리를 추가하는 것이 SAN를 통한 스왑 성능 문제를 해결하는 데 더 낫습니다.