Ignorar Links de Navegao | |
Sair do Modo de Exibio de Impresso | |
![]() |
Guia de administração do sistema: gerenciamento de recursos do Oracle Solaris Containers e Oracle Solaris Zones Oracle Solaris 10 1/13 Information Library (Português (Brasil)) |
Parte I Gerenciamento de Recursos
1. Introdução ao gerenciador de recursos do Solaris 10
2. Projetos e tarefas (visão geral)
3. Administração de projetos e tarefas
4. Contabilidade estendida (Visão geral)
5. Administração da contabilidade estendida (tarefas)
6. Controles de Recursos (Visão Geral)
7. Administração de controles de recursos (Tarefas)
8. Fair share scheduler (visão geral)
9. Administração do fair share scheduler (tarefas)
10. Controle da memória física usando o resource capping daemon (visão geral)
11. Administração do resource capping daemon (tarefas)
12. Pools de recursos (Visão geral)
13. Criação e administração de pools de recursos (Tarefas)
14. Exemplo de configuração de gerenciamento de recurso
15. Funcionalidade do controle de recursos no Console de gerenciamento Solaris
16. Introdução ao Solaris Zones
17. Configuração de zona não global (Visão geral)
18. Planejamento e configuração de zonas não globais (Tarefas)
19. Sobre instalação, parada, clonagem e desinstalação de zonas não globais (Visão geral)
20. Instalação, inicialização, parada, desinstalação e clonagem de zonas não globais (Tarefas)
21. Login na zona não global (Visão geral)
22. Login em zonas não globais (Tarefas)
23. Movendo e migrando zonas não globais (Tarefas)
24. Oracle Solaris 10 9/10: migrando de um sistema Oracle Solaris físico para uma zona (Tarefas)
25. Sobre pacotes e patches em um sistema do Oracle Solaris com zonas instaladas (Visão geral)
27. Administração do Oracle Solaris Zones (Visão geral)
28. Administração do Oracle Solaris Zones (Tarefas)
29. Atualização de um sistema Oracle Solaris 10 com zonas não globais instaladas
30. Soluções diversas de problemas do Oracle Solaris Zones
Parte III 1x}Zonas não nativas
31. Sobre zonas não nativas e zonas não nativas do Linux
32. Planejamento da configuração da zona não nativa lx (Visão geral)
33. Configuração de zonas não nativas lx (Tarefas)
Planejamento e configuração de uma zona não nativa lx (Mapa de tarefas)
Como configurar a zona não nativa lx
Como configurar, verificar e comprometer a zona não nativa lx.
Modificação, reversão ou remoção de configurações de zonas
36. Login em zonas não nativas lx (Tarefas)
37. Movendo e migrando zonas não nativas lx (Tarefas)
38. Administração e execução de aplicativos em zonas não nativas lx (Tarefas)
Você usa o comando zonecfg descrito na página man zonecfg(1M) para executar as ações a seguir.
Criar a configuração da zona
Verificar se todas as informações necessárias estão presentes
Comprometer a configuração da zona não global
Dica - Se você souber que irá usar CDs ou DVDs para instalar aplicativos em zonas não nativas lx, use add fs para adicionar acesso somente leitura à mídia CD ou DVD na zona global quando configurar inicialmente a zona não nativa. Um CD ou um DVD pode ser usado para instalar um produto na zona não nativa.
Ao configurar uma zona com o utilitário zonecfg, você pode usar o subcomando revert para desfazer a configuração de um recurso. Consulte Como reverter uma configuração de zona.
Um script para configurar várias zonas no sistema é fornecido em Script para configurar várias zonas não nativas lx.
Para exibir uma configuração de zona não global, consulte Como exibir a configuração de uma zona não nativa.
Dica - Depois de configurar a zona não nativa, é recomendável fazer uma cópia da configuração da zona. Você pode usar esse backup para restaurar a zona no futuro. Como superusuário ou administrador principal, imprima a configuração da zona lx-zone em um arquivo. Este exemplo usa um arquivo nomeado lx-zone.config.
global# zonecfg -z lx-zone export > lx-zone.config
Para obter mais informações, consulte Como restaurar uma zona não global individual.
Observe que não é possível usar zonas não nativas lx em um sistema Trusted Oracle Solaris em que rótulos estão ativados. O comando zoneadm não verificará a configuração.
É necessário ser administrador global na zona global para executar este procedimento.
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 .
O nome lx-zone é usado neste procedimento de exemplo.
global# zonecfg -z lx-zone
Se esta for a primeira vez que você configurou esta zona, será exibida a seguinte mensagem do sistema:
lx-zone: No such zone configured Use 'create' to begin configuring a new zone.
zonecfg:lx-zone> create -t SUNWlx
Como alternativa, você pode criar uma zona em branco e definir a marca explicitamente:
zonecfg:lx-zone> create -b zonecfg:lx-zone> set brand=lx
zonecfg:lx-zone> set zonepath=/export/home/lx-zone
Se definido para true, a zona será inicializada automaticamente quando a zona global for inicializada. Observe que, para as zonas serem inicializadas automaticamente, as zonas de serviço svc:/system/zones:default devem também estar ativadas. O valor padrão é false.
zonecfg:lx-zone> set autoboot=true
zonecfg:lx-zone> set bootargs="-i=altinit"
Este exemplo usa o pool padrão, chamado pool_default.
zonecfg:lx-zone> set pool=pool_default
Uma vez que um pool de recursos pode ter uma atribuição opcional da classe de agendamento, você pode usar o recurso de pool para definir um agendador padrão que não seja o padrão do sistema para uma zona não global. Para obter instruções, consulte Como associar um pool a uma classe de agendamento e Criação da configuração.
zonecfg:lx-zone> set limitpriv="default,proc_priocntl"
O privilégio proc_priocntl é usado para executar processos na classe em tempo real.
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
Na zona não global, o sistema de arquivos /export/linux/local será legível e gravável.
zonecfg:lx-zone:fs> set type=lofs
O tipo indica como o kernel interage com o sistema de arquivos.
zonecfg:lx-zone:fs> end
Esta etapa pode ser executada mais de uma vez para adicionar mais de um sistema de arquivos.
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
Esta etapa pode ser executada mais de uma vez para adicionar mais de uma interface de rede.
zonecfg:lx-zone> add attr
zonecfg:lx-zone> verify
zonecfg:lx-zone> commit
zonecfg:lx-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.
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 lx-zone "create -t SUNWlx; set zonepath=/export/home/lx-zone"
Consulte Instalação e inicialização de zonas não nativas lx para instalar a configuração de zona confirmada.
Você pode usar este script para configurar e inicializar várias zonas no sistema. O script toma os seguintes parâmetros:
O número de zonas a serem criadas
O prefixo zonename
O diretório a ser usado como o diretório base
É necessário ser administrador global na zona global para executar o script. O administrador global tem privilégios de superusuário na zona global ou assume a função de administrador principal.
#!/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
É necessário ser administrador global na zona global para executar este procedimento.
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 .
global# zonecfg -z zonename info