Solaris Container Manager 1.1 설치 및 관리

자원 관리

일반적으로 자원은 바인드 가능한 프로세스의 OS 엔티티를 표시합니다. 자원은 일부 파티셔닝 형태를 제공하는 커널 하위 시스템이 구조한 객체를 자주 참조합니다. 또한 자원은 응용 프로그램 작동에 영향을 줄 목적으로 조작될 수 있는 컴퓨팅 시스템의 양상으로 고려될 수도 있습니다. 자원의 예는 물리적 메모리, CPU 또는 네트워크 대역폭이 포함됩니다.

컨테이너 관리자는 Solaris 8, Solaris 9 및 Solaris 10 릴리스의 자원 관리 유틸리티와 함께 작동합니다. Solaris 8 릴리스에서 자원 관리는 Solaris Resource Manager 1.3에 의해 제공되며 모든 서비스는 lnode에 의해 표시됩니다. lnode는 자원 할당 정책 및 발생한 자원 이용률 데이터를 기록하는 데 사용됩니다. lnodes는 UNIX 사용자 ID(UID)에 대응합니다. UID는 기본적으로 개별 사용자 및 응용 프로그램을 표시할 수 있습니다. lnodes 및 자원 관리에 대한 자세한 정보는 Solaris Resource Manager 1.3 System Administration GuideLimit Node Overview를 참조하십시오.

Resource Manager는 Solaris 9 및 Solaris 10 릴리스의 자원 관리를 제공합니다. 본 릴리스에서 프로젝트 lnode와 유사합니다. 프로젝트는 관련 작업에 전체 네트워크 관리 식별자를 제공합니다. 컨테이너에서 실행되는 모든 프로세스에는 프로젝트 ID로도 알려진 동일한 프로젝트 식별자가 있습니다. Solaris 커널은 프로젝트 ID를 통해 자원 이용률을 추적합니다. 내역 데이터는 동일한 추적 방법을 사용하는 확장된 계정을사용하여 수집될 수 있습니다. 컨테이너 관리자에서 프로젝트는 컨테이너를 표시합니다.

그림 1–3 호스트의 프로젝트 예

호스트의 프로젝트 예를 표시하는 그림. 주위 텍스트는 컨텍스트를 설명합니다.

컨테이너에서 실행되는 프로세스에 대한 정보는 컨테이너 관리자 GUI에서 얻어집니다. 데이터 수집은 소프트웨어를 사용하여 컨테이너를 작성 및 관리할 때 사용자에게 투명합니다.

컨테이너 경계를 작성하는 데 다양한 방법이 사용될 수 있습니다. 한 가지 방법은 자원 풀을 사용하여 시스템을 분할하는 것입니다. 또 다른 방법은 자원 제어를 통해 프로젝트에 대한 제한 사항을 설정하는 것입니다.

자원 풀

자원 풀 또는 은 호스트의 자원을 분할하는 데 사용되는 Solaris 9 및 Solaris 10 소프트웨어 구성 기술입니다. 자원 세트는 바인드 가능한 프로세스 자원입니다. 메모리 세트 및 프로세서 세트는 자원 세트의 예입니다. 프로세서 세트만 Solaris 9 및 Solaris 10 릴리스에서 현재 사용 가능합니다. 풀은 호스트에서 사용 가능한 다양한 자원 세트를 바인드합니다.

자원 풀은 하나 이상의 프로젝트를 보유할 수 있습니다. 한 프로젝트의 경우, 풀에 링크된 자원은 해당 프로젝트 전용입니다. 다중 프로젝트의 경우, 풀에 링크된 자원은 해당 프로젝트와 공유됩니다.

Solaris 10 운영 체제에서 제품에는 동적 자원 풀로 불리는 기능이 있습니다. 동적 자원 풀을 사용하면 사용자가 시스템 이벤트 및 로드 변경 사항에 답하여 각 풀의 자원 할당을 조정할 수 있도록 하여 성능을 향상시킬 수 있습니다. 이 기능은 동적 자원 풀에서 설명됩니다.

Solaris 8 운영 체제를 실행중일 때, 호스트는 한 개의 자원 풀만 가질 수 있습니다. 이 풀은 pool_default로 불립니다. 자원 풀이 이 OS 버전에 존재하지 않기 때문에 pool_default은 인위적으로 작성됩니다. Solaris 8 릴리스를 실행하는 호스트의 모든 CPU는 규칙에 따라 단일 풀에 있는 것으로 간주됩니다.

컨테이너 관리자를 사용한 자원 풀 관리에 대한 자세한 내용은 5 장, 자원 풀 관리를 참조하십시오.

자원 제어

두 개 이상의 프로젝트가 단일 풀에 바운드된 경우, 단일 프로젝트에 대한 보증 또는 제한 사항을 설정할 수 있습니다. 이러한 제한 사항은 자원 제어로 불립니다. 제어의 예는 FSS를 사용하는 경우와 마찬가지로 최소 CPU 제한 사항입니다. 또 다른 예는 rcapd 데몬을 사용하는 경우와 마찬가지로 물리적 메모리 캡의 설정입니다. 최소 CPU 보증을 설정할 때, 한 프로젝트의 유휴 CPU 주기는 다른 프로젝트의 응용 프로그램에 의해 사용될 수 있습니다.