Oracle® Solaris 영역 만들기 및 사용

인쇄 보기 종료

업데이트 날짜: 2015년 5월
 
 

영역 구성 방법

비전역 영역을 만드는 데 필요한 필수 요소는 rootzpool 리소스가 있는 영역에 대한 zonename 등록 정보와 zonepath 등록 정보입니다. 기타 리소스 및 등록 정보는 선택 사항입니다. 또한 일부 선택적 리소스는 옵션을 선택해야 합니다. 예를 들어 dedicated-cpu 리소스를 사용할 것인지, 아니면 capped-cpu 리소스를 사용할 것인지를 결정해야 합니다. 사용 가능한 zonecfg 등록 정보 및 리소스에 대한 자세한 내용은 Oracle Solaris 영역 소개 의 영역 구성 데이터를 참조하십시오.

이 절차를 수행하려면 전역 관리자이거나 전역 영역에서 적합한 권한을 부여 받은 사용자여야 합니다.

  1. 관리자가 됩니다.

    자세한 내용은 Oracle Solaris 11.2의 사용자 및 프로세스 보안 의 지정된 관리 권한 사용을 참조하십시오.

  2. 선택한 영역 이름을 사용하여 영역 구성을 설정합니다.

    이 예제 절차에서는 my-zone이라는 이름을 사용합니다.

    global# zonecfg -z my-zone

    이 영역을 처음으로 구성한 경우 다음 시스템 메시지가 표시됩니다.

    my-zone: No such zone configured
    Use 'create' to begin configuring a new zone.
  3. 새 영역 구성을 만듭니다.

    이 절차에서는 기본 설정을 사용합니다.

    zonecfg:my-zone> create
    create: Using system default template 'SYSdefault'
  4. 이 절차에서는 영역 경로 /zones/my-zone을 설정합니다.
    zonecfg:my-zone> set zonepath=/zones/my-zone

    영역이 ZFS 데이터 세트에 있어야 합니다. ZFS 데이터 세트는 영역을 설치하거나 연결할 때 자동으로 생성됩니다. ZFS 데이터 세트를 만들 수 없을 경우 영역이 설치되거나 연결되지 않습니다. 영역 경로의 상위 디렉토리가 존재할 경우 해당 상위 디렉토리가 마운트된 데이터 세트의 마운트 지점이어야 합니다.

    zonepath에서 영역 이름을 명시적으로 지정하지 않고 %{zonename} 토큰을 사용한 경우 영역이 복제될 때 Unified Archive 및 영역 도구를 통해 기존 영역 이름이 새 영역 이름으로 바뀝니다.

    zonecfg:my-zone> set zonepath=/zones/%{zonename}

    Oracle Solaris 영역 소개 의 zonecfg template 등록 정보를 참조하십시오.

  5. 자동 부트 값을 설정합니다.

    true로 설정하는 경우, 전역 영역이 부트될 때 영역이 자동으로 부트됩니다. 기본값은 false입니다. 자동 부트 영역의 경우 영역 서비스 svc:/system/zones:default도 사용으로 설정해야 합니다. 이 서비스는 기본적으로 사용으로 설정됩니다.

    zonecfg:my-zone> set autoboot=true
  6. 영역에 대한 지속 부트 인수를 설정합니다.
    zonecfg:my-zone> set bootargs="-m verbose"
  7. 이 영역에 하나의 CPU를 전용으로 지정합니다.
    zonecfg:my-zone> add dedicated-cpu
    1. CPU 수를 설정합니다.
      zonecfg:my-zone:dedicated-cpu> set ncpus=1-2
    2. (옵션) 중요도를 설정합니다.
      zonecfg:my-zone:dedicated-cpu> set importance=10

      기본값은 1입니다.

    3. 지정을 종료합니다.
      zonecfg:my-zone:dedicated-cpu> end
  8. 기본 권한 세트를 수정합니다.
    zonecfg:my-zone> set limitpriv="default,sys_time"

    이 행은 기본 권한 세트에 시스템 시계를 설정할 수 있는 권한을 추가합니다.

  9. 예약 클래스를 FSS로 설정합니다.
    zonecfg:my-zone> set scheduling-class=FSS
  10. 메모리 상한값을 추가합니다.
    zonecfg:my-zone> add capped-memory
    1. 메모리 상한값을 설정합니다.
      zonecfg:my-zone:capped-memory> set physical=1g
    2. 스왑 메모리 상한값을 설정합니다.
      zonecfg:my-zone:capped-memory> set swap=2g
    3. 고정 메모리 상한값을 설정합니다.
      zonecfg:my-zone:capped-memory> set locked=500m
    4. 메모리 상한값 지정을 완료합니다.
      zonecfg:my-zone:capped-memory> end

    주 -  capped-memory 리소스를 사용하려면 resource-cap 패키지를 전역 영역에 설치해야 합니다.
  11. 파일 시스템을 추가합니다.
    zonecfg:my-zone> add fs
    1. 이 절차에서는 파일 시스템의 마운트 지점을 /usr/local로 설정합니다.
      zonecfg:my-zone:fs> set dir=/usr/local
    2. 전역 영역의 /opt/local이 구성 중인 영역의 /usr/local로 마운트되도록 지정합니다.
      zonecfg:my-zone:fs> set special=/opt/local

      비전역 영역에서 /usr/local 파일 시스템은 읽기 및 쓰기가 가능하게 설정됩니다.

    3. 이 절차에서는 파일 시스템 유형을 lofs로 지정합니다.
      zonecfg:my-zone:fs> set type=lofs

      이 유형은 커널이 파일 시스템과 상호 작용하는 방식을 지정합니다.

    4. 파일 시스템 지정을 완료합니다.
      zonecfg:my-zone:fs> end

    이 단계를 두 번 이상 수행하여 둘 이상의 파일 시스템을 추가할 수 있습니다.

  12. 필요할 경우 hostid를 설정합니다.
    zonecfg:my-zone> set hostid=80f0c086
  13. sales라는 ZFS 데이터 세트를 tank 저장소 풀에 추가합니다.
    zonecfg:my-zone> add dataset
    1. ZFS 데이터 세트 sales에 대한 경로를 지정합니다.
      zonecfg:my-zone> set name=tank/sales
    2. 데이터 세트 지정을 종료합니다.
      zonecfg:my-zone> end

    영역 관리자는 데이터 세트 내에서 스냅샷, 파일 시스템 및 볼륨을 만들고 삭제할 수 있습니다. 영역 관리자는 데이터 세트의 등록 정보를 수정하고 압축 및 암호화를 제어할 수 있습니다.

  14. 자동 VNIC를 사용하여 배타적 IP 영역을 만듭니다.
    zonecfg:my-zone> set ip-type=exclusive
    zonecfg:my-zone> add anet
    1. 생성될 링크의 기본 링크로 auto를 지정합니다.
      zonecfg:my-zone:anet> set lower-link=auto

      zoneadmd 데몬은 영역이 부트될 때마다 VNIC를 생성하는 링크를 자동으로 선택합니다. 데이터 링크를 선택할 경우 IPoIB 링크를 건너뜁니다.

    2. 지정을 종료합니다.
      zonecfg:my-zone:anet> end
  15. 장치를 추가합니다.
    zonecfg:my-zone> add device
    1. 이 절차에서는 장치 일치를 /dev/sound/*로 설정합니다.
      zonecfg:my-zone:device> set match=/dev/sound/*
    2. 장치 지정을 완료합니다.
      zonecfg:my-zone:device> end

    둘 이상의 장치를 추가하기 위해 이 단계를 여러 번 수행할 수 있습니다.

  16. IB 진단 도구 외의 OFUV 구성 요소에 대해 OFUV(Open Fabrics User Verbs) 장치를 추가합니다.
    zonecfg:my-zone> add device
    1. 이 절차에서는 장치 일치를 infiniband/ofs/*로 설정합니다.
      zonecfg:my-zone:device> set match=infiniband/ofs/*
    2. 장치 지정을 완료합니다.
      zonecfg:my-zone:device> end

    IB 진단 도구는 비전역 영역에서 지원되지 않습니다. 추가된 장치는 verbs 및 rdma_cm과 같은 OFUV의 구성 요소에서 사용할 수 있습니다.

    둘 이상의 장치를 추가하기 위해 이 단계를 여러 번 수행할 수 있습니다.

  17. IB 진단 도구 외의 OFUV 구성 요소에 대해 OFUV 장치를 추가합니다.
    zonecfg:my-zone> add device
    1. 이 절차에서는 장치 일치를 infiniband/hca/*로 설정합니다.
      zonecfg:my-zone:device> set match=infiniband/hca/*
    2. 장치 지정을 완료합니다.
      zonecfg:my-zone:device> end

    IB 진단 도구는 비전역 영역에서 지원되지 않습니다. 추가된 장치는 verbs 및 rdma_cm과 같은 OFUV의 구성 요소에서 사용할 수 있습니다.

    둘 이상의 장치를 추가하기 위해 이 단계를 여러 번 수행할 수 있습니다.

  18. format 명령을 사용한 디스크 레이블 지정을 허용하려면 전체 disk/LUN을 영역에 위임하고 allow-partition 등록 정보를 설정해야 합니다.
    zonecfg:my-zone> add device
    1. 이 절차에서는 장치 일치를 /dev/*dsk/c2t40d3*로 설정합니다.
      zonecfg:my-zone:device> set match=/dev/*dsk/c2t40d3*
    2. allow-partitiontrue로 설정합니다.
      zonecfg:my-zone:device> set allow-partition=true
    3. 장치 지정을 완료합니다.
      zonecfg:my-zone:device> end

    둘 이상의 장치를 추가하기 위해 이 단계를 여러 번 수행할 수 있습니다.

  19. 디스크에서 uscsi 작업을 허용하려면 allow-raw-io 등록 정보를 설정해야 합니다.
    zonecfg:my-zone> add device
    1. 이 절차에서는 장치 일치를 /dev/*dsk/c2t40d3*로 설정합니다.
      zonecfg:my-zone:device> set match=/dev/*dsk/c2t40d3*
    2. allow-raw-iotrue로 설정합니다.
      zonecfg:my-zone:device> set allow-raw-io=true
    3. 장치 지정을 완료합니다.
      zonecfg:my-zone:device> end

      Caution

      주의  -  디스크의 영역에서 uscsi 작업을 수행할 수 있도록 허용하면 영역에서 디스크와 동일한 버스에 연결된 다른 장치에도 액세스할 수 있게 됩니다. 따라서 이 기능을 사용으로 설정하면 보안 위험이 발생할 수 있고 전역 영역 및 동일한 버스의 리소스를 사용하는 다른 영역이 외부 공격에 노출될 수 있습니다. 자세한 내용은 uscsi(7I)를 참조하십시오.


    둘 이상의 장치를 추가하기 위해 이 단계를 여러 번 수행할 수 있습니다.

  20. 등록 정보 이름을 사용하여 영역 전체의 리소스 제어를 추가합니다.
    zonecfg:my-zone> set max-sem-ids=10485200

    둘 이상의 리소스 제어를 추가하기 위해 이 단계를 여러 번 수행할 수 있습니다.

  21. attr 리소스 유형을 사용하여 설명을 추가합니다.
    zonecfg:my-zone> add attr
    1. 이름을 comment로 설정합니다.
      zonecfg:my-zone:attr> set name=comment
    2. 유형을 string으로 설정합니다.
      zonecfg:my-zone:attr> set type=string
    3. 값을 해당 영역을 나타내는 설명으로 설정합니다.
      zonecfg:my-zone:attr> set value="This is my work zone."
    4. attr 리소스 유형 지정을 완료합니다.
      zonecfg:my-zone:attr> end
  22. 영역에 대한 영역 구성을 확인합니다.
    zonecfg:my-zone> verify
  23. 영역에 대한 영역 구성을 커밋합니다.
    zonecfg:my-zone> commit
  24. zonecfg 명령을 종료합니다.
    zonecfg:my-zone> exit

    프롬프트에서 명시적으로 commit를 입력하지 않은 경우에도 exit를 입력하거나 EOF가 발생할 때 commit가 자동으로 시도됩니다.

명령줄에서 여러 하위 명령 사용


팁  -  zonecfg 명령은 여러 하위 명령을 지원합니다. 동일한 셸 호출에서 각 명령을 따옴표로 묶고 세미콜론으로 구분하여 입력하면 됩니다.
global# zonecfg -z my-zone "create ; set zonepath=/zones/my-zone"
공유 IP 영역의 경우 zonecfg net 리소스에 고정 주소만 지정할 수 있습니다. 명령줄에서 제공할 수 없습니다.