탐색 링크 건너뛰기 | |
인쇄 보기 종료 | |
시스템 관리 설명서: Oracle Solaris Containers-리소스 관리 및 Oracle Solaris 영역 Oracle Solaris 10 1/13 Information Library (한국어) |
8. FSS(Fair Share Scheduler)(개요)
9. FSS(Fair Share Scheduler) 관리(작업)
10. 리소스 상한값 지원 데몬을 사용한 물리적 메모리 제어(개요)
15. Solaris Management Console의 리소스 제어 기능
19. 비전역 영역 설치, 정지, 복제 및 제거 정보(개요)
20. 비전역 영역 설치, 부트, 정지, 제거 및 복제(작업)
24. Oracle Solaris 10 9/10: 물리적 Oracle Solaris 시스템을 영역으로 마이그레이션(작업)
25. 영역이 설치된 Oracle Solaris 시스템의 패키지 및 패치 정보(개요)
26. 영역이 설치된 Oracle Solaris 시스템에서 패키지 및 패치 추가 및 제거(작업)
29. 비전역 영역이 설치된 Oracle Solaris 10 시스템 업그레이드
30. 그 밖의 기타 Oracle Solaris 영역 문제 해결
34. lx 브랜드 영역 설치, 부트, 정지, 복제 및 제거 정보(개요)
35. lx 브랜드 영역 설치, 부트, 정지, 제거 및 복제(작업)
zonecfg(1M) 매뉴얼 페이지에 설명된 zonecfg 명령을 사용하여 다음 작업을 수행할 수 있습니다.
영역 구성 만들기
필요한 모든 정보가 있는지 확인
비전역 영역 구성 커밋
참고 - CD 또는 DVD를 사용하여 lx 브랜드 영역에 응용 프로그램을 설치할 경우, 브랜드 영역을 처음 구성할 때 add fs를 사용하여 CD 또는 DVD 매체에 대한 읽기 전용 액세스 권한을 전역 영역에 추가합니다. 그러면 CD 또는 DVD를 사용하여 브랜드 영역에 제품을 설치할 수 있습니다.
zonecfg 유틸리티를 사용하여 영역을 구성할 때 revert 하위 명령을 사용하여 리소스에 대한 설정을 실행 취소할 수 있습니다. 영역 구성을 되돌리는 방법을 참조하십시오.
시스템에 여러 영역을 구성하는 스크립트는 여러 lx 브랜드 영역을 구성하는 스크립트에 나와 있습니다.
비전역 영역의 구성을 표시하려면 브랜드 영역의 구성을 표시하는 방법을 참조하십시오.
참고 - 브랜드 영역을 구성한 후 영역 구성의 사본을 만들어 두는 것이 좋습니다. 이 백업을 사용하여 나중에 영역을 복원할 수 있습니다. 수퍼 유저 또는 기본 관리자의 경우 lx-zone 영역의 구성을 파일로 인쇄하십시오. 이 예에서는 lx-zone.config라는 파일이 사용됩니다.
global# zonecfg -z lx-zone export > lx-zone.config
자세한 내용은 개별 비전역 영역을 복원하는 방법을 참조하십시오.
레이블이 사용으로 설정된 Trusted Oracle Solaris 시스템에서는 lx 브랜드 영역을 사용할 수 없습니다. zoneadm 명령으로 구성을 확인할 수 없습니다.
이 절차를 수행하려면 전역 영역의 전역 관리자여야 합니다.
역할을 만든 다음 사용자에게 지정하려면 시스템 관리 설명서: 기본 관리의 RBAC와 함께 Solaris 관리 도구 사용(작업 맵)을 참조하십시오.
이 예제 절차에서는 lx-zone이라는 이름이 사용됩니다.
global# zonecfg -z lx-zone
이 영역을 처음으로 구성한 경우 다음 시스템 메시지가 표시됩니다.
lx-zone: No such zone configured Use 'create' to begin configuring a new zone.
zonecfg:lx-zone> create -t SUNWlx
또는 빈 영역을 만든 다음 명시적으로 브랜드를 설정할 수 있습니다.
zonecfg:lx-zone> create -b zonecfg:lx-zone> set brand=lx
zonecfg:lx-zone> set zonepath=/export/home/lx-zone
true로 설정하는 경우, 전역 영역이 부트될 때 영역이 자동으로 부트됩니다. 자동 부트 영역의 경우 영역 서비스 svc:/system/zones:default도 사용으로 설정해야 합니다. 기본값은 false입니다.
zonecfg:lx-zone> set autoboot=true
zonecfg:lx-zone> set bootargs="-i=altinit"
이 예에서는 pool_default라는 기본 풀이 사용됩니다.
zonecfg:lx-zone> set pool=pool_default
리소스 풀에 선택적 예약 클래스 지정이 있을 수 있으므로 풀 기능을 사용하여 비전역 영역에 대해 시스템 기본값이 아닌 기본 스케줄러를 설정할 수 있습니다. 지침은 풀과 예약 클래스를 연결하는 방법 및 구성 만들기를 참조하십시오.
zonecfg:lx-zone> set limitpriv="default,proc_priocntl"
proc_priocntl 권한은 실시간 클래스에서 프로세스를 실행하는 데 사용됩니다.
zonecfg:lx-zone> set cpu-shares=5
zonecfg:lx-zone> add capped-memory
zonecfg:lx-zone:capped-memory> set physical=50m
zonecfg:lx-zone:capped-memory> set swap=100m
zonecfg:lx-zone:capped-memory> set locked=30m
zonecfg:lx-zone:capped-memory> end
zonecfg:lx-zone> add fs
zonecfg:lx-zone:fs> set dir=/export/linux/local
zonecfg:lx-zone:fs> set special=/opt/local
비전역 영역에서 /export/linux/local 파일 시스템이 읽기 및 쓰기 가능 시스템이 됩니다.
zonecfg:lx-zone:fs> set type=lofs
이 유형은 커널이 파일 시스템과 상호 작용하는 방식을 지정합니다.
zonecfg:lx-zone:fs> end
이 단계를 두 번 이상 수행하여 둘 이상의 파일 시스템을 추가할 수 있습니다.
zonecfg:lx-zone> add net
zonecfg:lx-zone:net> set address=10.6.10.233/24
zonecfg:lx-zone:net> set physical=bge0
zonecfg:lx-zone:net> end
이 단계를 두 번 이상 수행하여 둘 이상의 네트워크 인터페이스를 추가할 수 있습니다.
zonecfg:lx-zone> add attr
zonecfg:lx-zone> verify
zonecfg:lx-zone> commit
zonecfg:lx-zone> exit
프롬프트에서 명시적으로 commit를 입력하지 않은 경우에도 exit를 입력하거나 EOF가 발생할 때 commit가 자동으로 시도됩니다.
참고 - zonecfg 명령은 여러 하위 명령을 지원합니다. 동일한 셸 호출에서 각 명령을 따옴표로 묶고 세미콜론으로 구분하여 입력하면 됩니다.
global# zonecfg -z lx-zone "create -t SUNWlx; set zonepath=/export/home/lx-zone"
커밋한 영역 구성을 설치하려면 lx 브랜드 영역 설치 및 부트를 참조하십시오.
이 스크립트를 사용하여 시스템에서 여러 영역을 구성하고 부트할 수 있습니다. 이 스크립트는 다음 매개변수를 사용합니다.
만들 영역의 수
zonename 접두어
기본 디렉토리로 사용할 디렉토리
스크립트를 실행하려면 전역 영역의 전역 관리자여야 합니다. 전역 관리자는 전역 영역에서 수퍼 유저 권한을 갖거나 기본 관리자 역할을 수행합니다.
#!/bin/ksh # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # #ident "%Z%%M% %I% %E% SMI" if [[ -z "$1" || -z "$2" || -z "$3" || -z "$4" ]]; then echo "usage: $0 <#-of-zones> <zonename-prefix> <basedir> <template zone>" exit 2 fi if [[ ! -d $3 ]]; then echo "$3 is not a directory" exit 1 fi state=`zoneadm -z $4 list -p 2>/dev/null | cut -f 3 -d ":"` if [[ -z "$state" || $state != "installed" ]]; then echo "$4 must be an installed, halted zone" exit 1 fi template_zone=$4 nprocs=`psrinfo | wc -l` nzones=$1 prefix=$2 dir=$3 ip_addrs_per_if=`ndd /dev/ip ip_addrs_per_if` if [ $ip_addrs_per_if -lt $nzones ]; then echo "ndd parameter ip_addrs_per_if is too low ($ip_addrs_per_if)" echo "set it higher with 'ndd -set /dev/ip ip_addrs_per_if <num>" exit 1 fi i=1 while [ $i -le $nzones ]; do zoneadm -z $prefix$i clone $template_zone > /dev/null 2>&1 if [ $? != 0 ]; then echo configuring $prefix$i F=$dir/$prefix$i.config rm -f $F echo "create -t SUNWlx" > $F echo "set zonepath=$dir/$prefix$i" >> $F zonecfg -z $prefix$i -f $dir/$prefix$i.config 2>&1 | \ sed 's/^/ /g' else echo "skipping $prefix$i, already configured" fi i=`expr $i + 1` done i=1 while [ $i -le $nzones ]; do j=1 while [ $j -le $nprocs ]; do if [ $i -le $nzones ]; then if [ `zoneadm -z $prefix$i list -p | \ cut -d':' -f 3` != "configured" ]; then echo "skipping $prefix$i, already installed" else echo installing $prefix$i mkdir -pm 0700 $dir/$prefix$i chmod 700 $dir/$prefix$i zoneadm -z $prefix$i install -s -d /path/to/ISOs > /dev/null 2>&1 & sleep 1 # spread things out just a tad fi fi i=`expr $i + 1` j=`expr $j + 1` done wait done i=1 para=`expr $nprocs \* 2` while [ $i -le $nzones ]; do date j=1 while [ $j -le $para ]; do if [ $i -le $nzones ]; then echo booting $prefix$i zoneadm -z $prefix$i boot & fi j=`expr $j + 1` i=`expr $i + 1` done wait done
이 절차를 수행하려면 전역 영역의 전역 관리자여야 합니다.
역할을 만든 다음 사용자에게 지정하려면 시스템 관리 설명서: 기본 관리의 RBAC와 함께 Solaris 관리 도구 사용(작업 맵)을 참조하십시오.
global# zonecfg -z zonename info