Guia de administração do sistema: gerenciamento de recursos Oracle Solaris Containers e Oracle Solaris Zones

ProcedureComo configurar a região

Observe que os únicos elementos necessários para criar uma região não global nativa são as propriedades zonename e zonepath. Outros recursos e propriedades são opcionais. Alguns recursos opcionais também requerem escolhas entre alternativas, tal como a decisão de usar o recurso dedicated-cpu ou o recurso capped-cpu. Consulte Dados de configuração de região para obter informações disponíveis sobre as propriedades e recursos de zonecfg.

É necessário ser administrador global na região global para executar este procedimento.

  1. Torne-se superusuário ou assuma a função de administrador principal.

    Para criar a função e atribuí-la a um usuário, consulte Using the Solaris Management Tools With RBAC (Task Map) no System Administration Guide: Basic Administration .

  2. Defina uma configuração de região com o nome de região escolhido.

    O nome my-zone é usado neste procedimento de exemplo.


    global# zonecfg -z my-zone
    

    Se esta for a primeira vez que você configurou esta região, será exibida a seguinte mensagem do sistema:


    my-zone: No such zone configured
    Use 'create' to begin configuring a new zone.
  3. Crie a configuração de uma nova região.

    Este procedimento usa as configurações padrão da


    zonecfg:my-zone> create
    
  4. Defina o caminho para a região, /export/home/my-zone neste procedimento.


    zonecfg:my-zone> set zonepath=/export/home/my-zone
    

    Não coloque zonepath no ZFS em versões anteriores ao Solaris 10 10/08.

  5. Defina o valor de inicialização automática.

    Se definido para true , a região é inicializada automaticamente quando a região global é inicializada. Observe que, para as regiões serem inicializadas automaticamente, as regiões de serviço svc:/system/zones:default devem também estar ativadas. O valor padrão é false.


    zonecfg:my-zone> set autoboot=true
    
  6. Defina argumentos de inicialização persistentes para uma região.


    zonecfg:my-zone> set bootargs="-m verbose"
    
  7. Dedique uma CPU a esta região.


    zonecfg:my-zone> add dedicated-cpu
    
    1. Defina o número de CPUs.


      zonecfg:my-zone:dedicated-cpu> set ncpus=1-2
      
    2. (Opcional) Defina a importância.


      zonecfg:my-zone:dedicated-cpu> set importance=10
      

      O padrão é 1.

    3. Finalize a especificação.


      zonecfg:my-zone:dedicated-cpu> end
      
  8. Revise o conjunto padrão de privilégios.


    zonecfg:my-zone> set limitpriv="default,sys_time"
    

    Esta linha adiciona a capacidade de definir o relógio do sistema como o conjunto de privilégios padrão.

  9. Defina a classe de agendamento como FSS.


    zonecfg:my-zone> set scheduling-class=FSS
    
  10. Adicione um limite de memória.


    zonecfg:my-zone> add capped-memory
    
    1. Defina o limite de memória.


      zonecfg:my-zone:capped-memory> set physical=50m
      
    2. Defina o limite da memória de permuta.


      zonecfg:my-zone:capped-memory> set swap=100m
      
    3. Defina o limite da memória bloqueada.


      zonecfg:my-zone:capped-memory> set locked=30m
      
    4. Finalize a especificação do limite da memória.


      zonecfg:my-zone:capped-memory> end
      
  11. Adicione um sistema de arquivos.


    zonecfg:my-zone> add fs
    
    1. Defina um ponto de montagem para o sistema de arquivos, /usr/local neste procedimento.


      zonecfg:my-zone:fs> set dir=/usr/local
      
    2. Especifique que /opt/zones/my-zone/local na região global deve ser montado como /usr/local na região que está sendo configurada.


      zonecfg:my-zone:fs> set special=/opt/zones/my-zone/local
      

      Na região não global, o sistema de arquivos /usr/local será legível e gravável.

    3. Especifique o tipo de sistema de arquivos, lofs neste procedimento.


      zonecfg:my-zone:fs> set type=lofs
      

      O tipo indica como o kernel interage com o sistema de arquivos.

    4. Finalize a especificação do sistema de arquivos.


      zonecfg:my-zone:fs> end
      

    Esta etapa pode ser executada mais de uma vez para adicionar mais de um sistema de arquivos.

  12. (Opcional) Configure ohostid.


    zonecfg:my-zone> set hostid=80f0c086
    
  13. Adiciona o conjunto de dados do ZFS nomeado sales no grupo de armazenamento tank.


    zonecfg:my-zone> add dataset
    
    1. Especifique o caminho para o conjunto de dados sales do ZFS.


      zonecfg:my-zone> set name=tank/sales
      
    2. Finalize a especificação de dataset.


      zonecfg:my-zone> end
      
  14. (Somente zona raiz esparsa) Adicione um sistema de arquivos compartilhado que seja montado com auto-retorno a partir da região global.

    Não execute esta etapa para criar uma zona raiz inteira, que não tem quaisquer sistemas de arquivos compartilhados. Consulte a discussão para zonas raiz inteiras em Requisitos de espaço em disco.


    zonecfg:my-zone> add inherit-pkg-dir
    
    1. Especifique que /opt/sfw na região global seja montado no modo somente leitura na região que está sendo configurada.


      zonecfg:my-zone:inherit-pkg-dir> set dir=/opt/sfw
      

      Observação –

      O banco de dados de empacotamento da região é atualizado para refletir os pacotes. Estes recursos não podem ser modificados ou removidos após a região ter sido instalada usando-se zoneadm.


    2. Finalize a especificação inherit-pkg-dir.


      zonecfg:my-zone:inherit-pkg-dir> end
      

    Esta etapa pode ser executada mais de uma vez para adicionar mais de um sistema de arquivos compartilhado.


    Observação –

    Se desejar criar uma zona raiz inteira, mas sistemas de arquivos compartilhados padrão foram adicionados usando-se inherit-pkg-dir, é necessário remover esses recursos inherit-pkg-dir padrão usando-se zonecfg antes da instalação da região:

    • zonecfg:my-zone> remove inherit-pkg-dir dir=/lib

    • zonecfg:my-zone> remove inherit-pkg-dir dir=/platform

    • zonecfg:my-zone> remove inherit-pkg-dir dir=/sbin

    • zonecfg:my-zone> remove inherit-pkg-dir dir=/usr


  15. (Opcional) Se estiver criando uma região com IP exclusivo, defina ip-type.


    zonecfg:my-zone> set ip-type=exclusive
    

    Observação –

    Somente o tipo de dispositivo físico será especificado na etapa add net.


  16. Adicione uma interface de rede.


    zonecfg:my-zone> add net
    
    1. (Somente IP compartilhado) Defina o endereço IP para a interface de rede, 192.168.0.1 neste procedimento.


      zonecfg:my-zone:net> set address=192.168.0.1
      
    2. Defina o tipo de dispositivo físico para a interface de rede, o dispositivo hme neste procedimento.


      zonecfg:my-zone:net> set physical=hme0
      
    3. Solaris 10 10/08: (opcional, somente IP compartilhado) defina o roteador padrão da interface de rede, 10.0.0.1 nesse procedimento.


      zonecfg:my-zone:net> set defrouter=10.0.0.1
      
    4. Finalize a especificação.


      zonecfg:my-zone:net> end
      

    Esta etapa pode ser executada mais de uma vez para adicionar mais de uma interface de rede.

  17. Adicione um dispositivo.


    zonecfg:my-zone> add device
    
    1. Defina a correspondência do dispositivo, /dev/sound/* neste procedimento.


      zonecfg:my-zone:device> set match=/dev/sound/*
      
    2. Finalize a especificação do dispositivo.


      zonecfg:my-zone:device> end
      

    Esta etapa pode ser executada mais de uma vez para adicionar mais de um dispositivo.

  18. Adicione um controle de recursos de região geral usando o nome da propriedade.


    zonecfg:my-zone> set max-sem-ids=10485200
    

    Esta etapa pode ser executada mais de uma vez para adicionar mais de um controle de recursos.

  19. Adicione um comentário usando o tipo de recurso attr.


    zonecfg:my-zone> add attr
    
    1. Defina o nome como comment.


      zonecfg:my-zone:attr> set name=comment
      
    2. Defina o tipo como string.


      zonecfg:my-zone:attr> set type=string
      
    3. Defina o valor como um comentário que descreve a região.


      zonecfg:my-zone:attr> set value="This is my work zone."
      
    4. Finalize a especificação do tipo de recurso attr.


      zonecfg:my-zone:attr> end
      
  20. Verifique a configuração da região para a região.


    zonecfg:my-zone> verify
    
  21. Comprometa a configuração da região para a região.


    zonecfg:my-zone> commit
    
  22. Saia do comando zonecfg.


    zonecfg:my-zone> exit
    

    Observe que mesmo que você não tenha digitado commit explicitamente no prompt, há uma tentativa automática de commit quando você digita exit ou um EOF ocorre.

Uso de vários subcomandos da linha de comando

Dica –

O comando zonecfg também oferece suporte a vários subcomandos, citados e separados por ponto-e-vírgula, a partir da mesma chamada de shell.


global# zonecfg -z my-zone "create ; set zonepath=/export/home/my-zone"