Esta parte introduz a tecnologia de partição do software do Solaris Zones, que fornece um meio de virtualizar serviços do sistema operacional para criar um ambiente isolado para executar aplicativos. Este isolamento impede que processos executados em uma região monitorem ou afetem processos executados em outras regiões.
A facilidade do Solaris Zones no Solaris Operating System oferece um ambiente isolado no qual executar aplicativos no sistema. Solaris Zones é um componente do ambiente de recipiente do Solaris.
Este capítulo aborda os seguintes tópicos:
Se você estiver pronto para começar a criar regiões no sistema, passe para o Capítulo 17Configuração de região não global (visão geral).
A tecnologia de partição do Solaris Zones é usada para virtualizar serviços de sistemas operacionais e oferece um ambiente isolado e seguro para executar aplicativos. Uma região é ambiente de sistema operacional virtualizado, criado dentro de uma única instância do Solaris Operating System. Ao criar uma região, você produz um ambiente de execução de aplicativo em que processos são isolados do resto do sistema. Este isolamento impede que processos executados em uma região monitorem ou afetem processos executados em outras regiões. Mesmo um processo executado com credenciais de superusuário não pode visualizar ou afetar atividades em outras regiões.
Uma região também oferece uma camada abstrata que separa aplicativos dos atributos físicos da máquina em que eles são implantados. Exemplos desses atributos incluem caminhos de dispositivos físicos.
As regiões podem ser usadas em qualquer máquina que execute como mínimo a versão Solaris 10. O limite máximo para o número de regiões em um sistema é 8192. O número de regiões que podem ser hospedadas efetivamente em um único sistema é determinado pelo total de requisitos de recursos do software de aplicativo executado em todas as regiões.
Há dois tipos de modelos de sistema de arquivos raiz de região não global no Solaris 10: raiz esparsa e inteira. O modelo de zona raiz esparsa otimiza o compartilhamento de objetos. O modelo de zona raiz inteira fornece a configurabilidade máxima. Estes conceitos são tratados no Capítulo 18Planejamento e configuração de regiões não globais (tarefas).
Solaris 10 9/10: os produtos que são instalados, chamados de recursos do sistema, são controlados por um recurso de registro automático. Durante a instalação, o usuário fornece credenciais ou registros anonimamente. Quando o sistema for reinicializado, os marcadores de serviço para os novos produtos são carregados para o servidor My Oracle Support. Esse recurso funciona apenas na região global. Consulte o System Administration Guide: Basic Administration para mais informações.
Regiões com marca (BrandZ) fornecem o fluxo para criar containers que contêm conjuntos alternativos de comportamento de executáveis. O termo marca pode se referir a uma ampla gama de ambientes operacionais. Por exemplo, a região não global pode emular os sistema operacional Solaris 8 ou um ambiente operacional como o Linux.
A marca define o ambiente operacional que pode ser instalado na região e determina como o sistema irá se comportar dentro da região, para que o software instalado na região funcione corretamente. Além disso, a marca da região é usada para identificar o tipo de aplicativo correto no momento de iniciar o aplicativo. Todo o gerenciamento da região de marca é feito através de extensões para os comandos padrão da região. A maioria dos procedimentos administrativos são idênticos para todas as regiões.
As seguintes duas marcas são suportadas nas máquinas SPARC executando o sistema operacional Solaris 10 8/07 ou uma versão posterior do Solaris 10:
A marca solaris8, Containers do Solaris 8, documentada em System Administration Guide: Solaris 8 Containers
A marca solaris9, Containers do Solaris 9, documentada em System Administration Guide: Solaris 9 Containers
Outras marcas suportadas no sistema operacional Solaris, incluem:
A marca Linux lx para os sistemas x86 e x64, documentada em Parte III, 1x}Regiões com marca
A marca cluster, documentada em Coleção de Software Sun Cluster 3.2 1/09 para o SO Solaris em docs.sun.com.
Embora você possa configurar e instalar regiões com marca em um sistema Solaris confiável, que tenha legendas ativadas, não é possível inicializar regiões com marca na configuração deste sistema.
Regiões são ideais para ambientes que consolidam diversos aplicativos em um único servidor. O custo e a complexidade de gerenciar inúmeras máquinas tornam vantajoso consolidar vários aplicativos em servidores maiores e mais escalonáveis.
A figura abaixo mostra um sistema com quatro regiões. Cada uma das regiões apps, users e work está executando uma carga de trabalho não relacionada com as cargas de trabalho das outras regiões, em uma amostra de ambiente consolidado. Este exemplo ilustra que diferentes versões do mesmo aplicativo podem ser executadas sem conseqüências negativas em diferentes regiões, para atender os requisitos de consolidação. Cada região pode oferecer um conjunto personalizado de serviços.
As regiões permitem uma utilização de recursos mais eficiente no sistema. A realocação dinâmica de recursos permitem que recursos não usados possam ser transferidos para outros recipientes, conforme necessário. O isolamento de falhas e segurança significa que aplicativos que se comportam incorretamente não requerem um sistema dedicado e subutilizado. Com o uso de regiões, esses aplicativos podem ser consolidados com outros aplicativos.
As regiões permitem que você delegue algumas funções administrativas enquanto mantém a segurança geral do sistema.
Pode-se pensar em uma região não global como uma caixa. Um ou mais aplicativos podem ser executados nesta caixa sem interagirem com o resto do sistema. As regiões do Solaris isolam aplicativos de software ou serviços usando limites flexíveis e definidos pelo software. Aplicativos executados na mesma instância do Solaris Operating System podem então ser gerenciados independentemente um do outro. Assim, diferentes versões do mesmo aplicativo podem ser executados em diferentes regiões, para atender os requisitos de sua configuração.
Um processo atribuído a uma região pode manipular, monitorar e se comunicar diretamente com outros processos que estão atribuídos à mesma região. Os processos não podem executar essas funções com processos atribuídos a outras regiões no sistema ou com processos atribuídos à região. Os processos atribuídos a diferentes regiões podem se comunicar somente através de APIs de rede.
A partir do Solaris 10 8/07, a rede IP pode ser configurada de duas formas diferentes, dependendo de a região estar atribuída a uma instância de IP exclusivo ou de compartilhar o estado e a configuração da camada IP com a região global. Para obter mais informações sobre tipo de IP em regiões, consulte Interfaces de rede de região. Para obter informações sobre configuração, consulte Como configurar a região.
Todo sistema do Solaris contém uma região global. A região global tem uma função dupla. A região global é tanto a região padrão para o sistema como a região usada para o controle administrativo do sistema geral. Todos os processos executados na região global, se não regiões não globais, conhecidas simplesmente como regiões, são criados pelo administrador global.
A região global é a única região a partir da qual uma região não global pode ser configurada, instalada, gerenciada ou desinstalada. Somente a região global é inicializável a partir do hardware do sistema. A administração da infra-estrutura do sistema, como dispositivos físicos, roteamento em uma região de IP compartilhado ou reconfiguração dinâmica (DR), é somente possível na região global. Processos apropriadamente privilegiados executados na região global podem acessar objetos associados a outras regiões.
Processos não privilegiados na região global podem executar operações não permitidas a processos privilegiados em uma região não global. Por exemplo, usuários na região global podem visualizar informações sobre cada processo no sistema. Se esta capacidade apresentar um problema para seu site, você pode restringir acesso à região global.
A cada região, incluindo a região global, é atribuído um nome de região. A região global sempre tem o nome global. Cada região também recebe um identificador numérico exclusivo, que é atribuído pelo sistema quando a região é inicializada. A região global é sempre mapeada para o ID 0. Os nomes de região e os IDs numéricos são tratados em Uso do comando zonecfg .
Cada região também pode ter um nome de nó que é completamente independente do nome de região. O nome de nó é atribuído pelo administrador da região. Para obter mais informações, consulte Nome do nó em região não global.
Cada região tem um caminho para seu diretório raiz que é relacionado ao diretório raiz da região global. Para obter mais informações, consulte Uso do comando zonecfg .
A classe de agendamento para uma região não global é definida como a classe de agendamento para o sistema por padrão. Consulte Classe de agendamento em uma região para uma discussão dos métodos usados para definir a classe de agendamento em uma região.
Você pode usar o priocntl descrito na página do manual priocntl(1) para mover processos em execução para uma classe de agendamento diferente sem alterar a classe de agendamento padrão e sem reinicializar.
A tabela abaixo resume as características de regiões globais e não globais.
Um administrador global tem privilégios de superusuário ou a função de administrador principal. Quando conectado à região global, o administrador global pode monitorar e controlar o sistema como um todo.
Uma região não global pode ser administrada por um administrador de região. O administrador global atribuir o perfil de gerenciamento de região ao administrador de região. Os privilégios de um administrador de regiões limitam-se a uma região não global.
O administrador global usa o comando zonecfg para configurar uma região especificando vários parâmetros para a plataforma virtual da região e o ambiente de aplicativo. A região é em seguida instalada pelo administrador global, que usa o comando de administração de região zoneadm para instalar software no nível de pacotes na hierarquia do sistema de arquivos estabelecida para a região. O administrador global pode efetuar login na região instalada usando o comando zlogin. No primeiro login, a configuração interna para a região é completada. O comando zoneadm é então usado para inicializar a região.
Para obter informações configuração de região, consulte o Capítulo 17Configuração de região não global (visão geral). Para obter informações sobre instalação de região, consulte o Capítulo 19Sobre instalação, parada, clonagem e desinstalação de regiões não globais (visão geral). Para obter informações sobre login em região, consulte o Capítulo 21Login na região não global (visão geral).
Uma região não global pode estar em um dos seis estados seguintes:
A configuração da região está completa e comprometida no armazenamento. No entanto, esses elementos do ambiente de aplicativo da região que devem ser especificados após a inicialização inicial ainda não estão presentes.
Durante uma operação de instalação ou desinstalação, zoneadm define o estado da região de destino como incompleto. Após a conclusão bem-sucedida da operação, o estado ß definido para o estado correto.
A configuração da região é instanciada no sistema. O comando zoneadm é usado para verificar se a configuração pode ser usada com êxito no sistema do Solaris designado. Pacotes são instalados sob o caminho raiz da região. Neste estado, a região não tem plataforma virtual associada.
A plataforma virtual para a região é estabelecida. O kernel cria o processo zsched, interfaces de rede são configuradas disponibilizadas para a rede, sistemas de arquivos são montados e dispositivos são configurados. Um ID de região exclusivo é atribuído pelo sistema. Neste estágio, nenhum processo associado à região foi iniciado.
Processos de usuário associados ao ambiente de aplicativo da região estão em execução. A região entra no estado de execução assim que o primeiro processo de usuário associado ao ambiente de aplicativo (init) é criado.
Estes estados são estados de transição que são visíveis enquanto a região está sendo parada. No entanto, a região que não pode desligar por alguma razão irá parar em um destes estados.
O Capítulo 20Instalação, inicialização, parada, desinstalação e clonagem de regiões não globais (tarefas) e a página do manual zoneadm(1M) descrevem como usar o comando zoneadm para iniciar transições entre estes estados.
Tabela 16–1 Comandos que afetam o estado da região
Estado atual da região |
Comandos aplicáveis |
---|---|
Configurado |
zonecfg -z zonename verify zonecfg -z zonename commit zonecfg -z zonename delete zoneadm -z zonename attach zoneadm -z zonename verify zoneadm -z zonename install zoneadm -z zonename clone Você pode também usar zonecfg para renomear uma região no estado de configurado ou instalado. |
Incompleto |
zoneadm -z zonename uninstall |
Instalado |
zoneadm -z zonename ready (opcional) zoneadm -z zonename boot zoneadm -z zonename uninstall desinstala do sistema a configuração da região especificada. zoneadm -z zonename move path zoneadm -z zonename detach zonecfg -z zonename podem ser usados para adicionar ou remover uma propriedade de attr, bootargs, capped-memory, dataset, dedicated-cpu, device, fs, ip-type, limitpriv , net, rctl,ou scheduling-class . Você pode também renomear uma região no estado de instalado. Os recursos inherit-pkg-dir não podem ser alterados. |
Preparado |
zoneadm -z zonename boot zoneadm halt e reinicialização do sistema retornam uma região no estado de preparado para o estado de instalado. zonecfg -z zonename podem ser usados para adicionar ou remover uma propriedade de attr, bootargs, capped-memory, dataset, dedicated-cpu, device, fs, ip-type, limitpriv , net, rctl,ou scheduling-class . Os recursos inherit-pkg-dir não podem ser alterados. |
Execução |
zlogin options zonename zoneadm -z zonename reboot zoneadm -z zonename halt retorna uma região preparada para o estado de instalada. zoneadm halt e a reinicialização do sistema retorna uma região no estado de execução para o estado de instalada. zonecfg -z zonename podem ser usados para adicionar ou remover uma propriedade de attr, bootargs, capped-memory, dataset, dedicated-cpu, device, fs, ip-type, limitpriv , net, rctl,ou scheduling-class . Os recursos zonepath e inherit-pkg-dir não podem ser alterados. |
Parâmetros alterados através de zonecfg não afetam uma região em execução. A região deve ser reinicializada para as alterações entrarem em vigor.
Uma região fornece isolamento em quase qualquer nível de granularidade de que você necessita. Uma região não precisa de uma CPU dedicada, de um dispositivo físico ou de uma parte da memória física. Esses recursos podem ser multiplexados entre diversas regiões executadas dentro de um único domínio ou sistema, ou alocados em uma base por região usando as facilidades de gerenciamento de recurso disponíveis no sistema operacional.
Cada região pode oferecer um conjunto personalizado de serviços. Para aplicar isolamento básico de processo, um processo pode ver ou sinalizar somente os processos que existem na mesma região. A comunicação básica entre regiões é realizada dando-se a cada região conectividade de rede IIP. Um aplicativo executado em uma região não pode observar o tráfego de rede de outra região. Este isolamento é mantido mesmo através de fluxos respectivos de percursos de pacotes através da mesma interface física.
Cada região recebe uma parte da hierarquia do sistema de arquivos. Uma vez que cada região é confinada a sua sub-árvore da hierarquia do sistema de arquivos, uma carga de trabalho em execução em uma determinada região não pode acessar os dados em disco de outra carga de trabalho em execução em uma região diferente.
Arquivos usados por serviços de identificação residem dentro de uma vista do sistema de arquivos raiz da região. Assim, serviços de identificação em regiões diferentes são isolados uns dos outros e os serviços podem ser configurados diferentemente.
Se usar as facilidades do gerenciamento de recurso, você deve alinhar os limites dos controles de gerenciamento de recurso com os das regiões. Esse alinhamento cria um modelo mais completo de uma máquina virtual, onde acesso a espaço de nome, isolamento de segurança e uso de recursos são controlados.
Quaisquer requisitos especiais para o uso de várias facilidades de gerenciamento de recurso com regiões são tratados em capítulos individuais deste manual que documentam essas facilidades.
Regiões não globais oferece as seguintes facilidades:
Quando o processo foi colocado em uma região diferente da região global, nem o processo nem qualquer um de seus filhos subseqüentes podem alterar regiões.
Serviços de rede podem ser executados em uma região. Ao executar serviços de rede em uma região, você limita o dano possível no caso de uma violação de segurança. Um intruso que explore com êxito uma falha de segurança em software executado dentro de uma região é confinado ao conjunto restrito de ações possíveis dentro dessa região. Os privilégios disponíveis dentro de uma região são um subconjunto dos disponíveis no sistema como um todo.
As regiões permitem a implantação de vários aplicativos na mesma máquina, mesmo se esses aplicativos operarem em diferentes domínios de confiança, requererem acesso exclusivo a um recurso global ou apresentem dificuldades com configurações globais. Por exemplo, vários aplicativos em execução em diferentes regiões com IP compartilhado no mesmo sistema podem se vincular à mesma porta da rede usando os diferentes endereços IP associados a cada região ou usando o endereço curinga. Os aplicativos também são impedidos de monitorarem ou interceptarem o tráfego de rede uns dos outros, dados do sistema de arquivos ou atividades de processo.
Se uma região precisar ser isolada na camada IP na rede, por exemplo sendo conectada a diferentes VLANs ou diferentes LANs da região global e outras regiões não globais, por motivos de segurança a região poderá ter um IP exclusivo. A região de IP exclusivo pode ser usada para consolidar aplicativos que devem se comunicar em sub-redes diferentes que estão em VLANs ou LANs diferentes.
As regiões também podem ser configuradas como regiões de IP compartilhado. Essas regiões se conectam com as mesmas VLANs ou LANs como a região global e compartilham a configuração de roteamento de IP com a região global. Regiões com IP compartilhado têm endereços IP separados, mas compartilham as outras partes do IP.
As regiões fornecem um ambiente virtualizado que pode ocultar de outros aplicativos detalhes como dispositivos físicos e o endereço IP primário do sistema e o nome do host. O mesmo ambiente de aplicativo pode ser mantido em diferentes máquinas físicas. O ambiente virtualizado permite a administração separada de cada região. As ações tomadas por um administrador de região em uma região não global não afetam o resto do sistema.
Uma região pode fornecer isolamento em quase qualquer nível de granularidade. Para obter mais informações, consulte Características da região não global.
As regiões não alteram o ambiente no qual aplicativos são executados, exceto quando necessário para atingir objetivos de segurança e isolamento. As regiões não apresentam uma nova API ou ABI a cujas portas os aplicativos devem ser conectados. Em vez disso, as regiões fornecem as interfaces e o ambiente de aplicativo padrão do Solaris, com algumas restrições. As restrições afetam primeiramente aplicativos que tentam executar operações privilegiadas.
Aplicativos na região global são executados sem modificação, estejam regiões adicionais configuradas ou não.
A tabela abaixo fornece uma visão geral básica das tarefas que estão envolvidas na configuração de regiões no sistema pela primeira vez.
Tarefa |
Descrição |
Para instruções |
---|---|---|
Identificar os aplicativos que você gostaria de executar em regiões. |
Revisar os aplicativos em execução no sistema:
|
Consultar seus objetivos comerciais e a documentação do sistema, se necessário. |
Determinar quantas regiões devem ser configuradas. |
Avaliar:
| |
Determinar se você usará grupos de recursos com a região para criar um recipiente. |
Se também estiver usando facilidades de gerenciamento de recursos no sistema, determine como alinhar as regiões com os limites de gerenciamento de recursos. Configurar grupos de recursos antes de configurar regiões. A partir da versão Solaris 10 8/07, observe que você pode adicionar rapidamente controles de recursos de região geral e a funcionalidade de grupo a uma região usando as propriedades de zonecfg. |
Consulte Como configurar a região e o Capítulo 13Criação e administração de grupos de recursos (tarefas). |
Desempenhar as tarefas de pré-configuração. |
Determinar o nome da região e o caminho da região. Determinar se a região será uma região com IP compartilhado ou uma região com IP exclusivo, e obter endereços IP ou o nome do link de dados. Determinar os sistemas de arquivos e os dispositivos necessários para cada região. Determinar a classe de agendamento para a região. Determina o conjunto de privilégios aos quais se limitem os processos no interior da região, se o conjunto padrão não for suficiente. Observe que algumas definições de zonecfg adicionam automaticamente os privilégios. Por exemplo, ip-type=exclusive adiciona automaticamente vários privilégios necessários para configurar e gerenciar pilhas de rede. |
Para obter informações sobre o nome e o caminho da região, tipos de IP, endereços IP, sistemas de arquivos, dispositivos, classe de agendamento e privilégios, consulte o Capítulo 17Configuração de região não global (visão geral) e Avaliação da configuração atual do sistema. Para uma lista de privilégios padrão e privilégios que podem ser configurados em uma região não global, consulte Privilégios em uma região não global. Para obter informações sobre a disponibilidade do recurso IP, consulte Conexão à rede em regiões não globais com IP compartilhado e Solaris 10 8/07: conexão à rede em regiões não globais com IP exclusivo. |
Desenvolver configurações. |
Configurar regiões não globais. |
Consulte Configuração, verificação e comprometimento de uma região e a página do manual zonecfg(1M). |
Como administrador global, verificar e instalar regiões configuradas. |
As regiões devem ser verificadas e instaladas antes do login. |
Consulte o Capítulo 19Sobre instalação, parada, clonagem e desinstalação de regiões não globais (visão geral) e o Capítulo 20Instalação, inicialização, parada, desinstalação e clonagem de regiões não globais (tarefas). |
Como administrador global, efetuar login em cada região não global usando o comando zlogin com a opção -C ou colocar o arquivo sysidcfg no diretório /etc da região. |
|
Consulte o Capítulo 21Login na região não global (visão geral) e o Capítulo 22Login em regiões não globais (tarefas). |
Como administrador global, inicializar a região não global. |
Inicializar cada região para colocar a região no estado de execução. |
Consulte o Capítulo 19Sobre instalação, parada, clonagem e desinstalação de regiões não globais (visão geral) e o Capítulo 20Instalação, inicialização, parada, desinstalação e clonagem de regiões não globais (tarefas). |
Preparar a nova região para uso de produção. |
Crie contas do usuário, adicione software adicional e personalize a configuração da região. |
Consulte a documentação que você usa para configurar uma máquina recém-instalada. Considerações especiais aplicáveis ao ambiente das regiões são abordadas neste guia. |
Este capítulo apresenta uma introdução à configuração de uma região global.
Os tópicos a seguir são tratados neste capítulo:
Após se informar sobre configuração de região, vá para o Capítulo 18Planejamento e configuração de regiões não globais (tarefas) para configurar regiões não globais para instalação em seu sistema.
Para obter informações sobre a configuração de região com marca lx, consulte o Capítulo 32Planejamento da configuração da região com marca lx (visão geral) e o Capítulo 33Configuração da região com marca lx (tarefas).
Solaris 10 6/06: Foi adicionado suporte ao sistema de arquivos ZFS, incluindo a capacidade de adicionar um recurso de conjunto de dados em uma região não global nativa. Para obter mais informações, consulte Propriedades de tipo de recursos.
Solaris 10 11/06: Foi adicionado suporte a privilégios configuráveis. Consulte Solaris 10 11/06 e versões posteriores: Privilégios configuráveis.
Solaris 10 8/07: Suporte para os seguintes recursos foi adicionado ao comando zonecfg:
Melhor integração das funções de gerenciamento de recurso e regiões. O comando zonecfg agora pode ser usado para configurar grupos temporários, limites de memória, a classe de agendamento padrão para a região e alias do controle de recursos. Não é mais necessário realizar etapas manuais para definir o gerenciamento de recursos. Novos controles de recursos foram adicionados:
zone.max-locked-memory
zone.max-msg-ids
zone.max-sem-ids
zone.max-shm-ids
zone.max-shm-memory
zone.max-swap
Capacidade de usar o comando zonecfg na região global.
Capacidade de especificar um tipo de IP para uma região. Os dois tipos de IP disponíveis para regiões não globais são IP compartilhado e IP exclusivo.
Capacidade de usar DTrace em uma região adicionando-se privilégios necessários através da propriedade limitpriv.
Capacidade de usar argumentos de inicialização em uma região através da propriedade bootargs .
Solaris 10 10/08: A propriedade defrouter foi adicionada ao recurso net no utilitário zonecfg para regiões não globais com IP compartilhado. Você pode definir o roteador padrão da interface de rede neste procedimento.
Para obter uma lista completa dos novos recursos do Solaris 10 e uma descrição das versões do Solaris, consulte Novidades no Oracle Solaris 10 9/10.
Uma região que inclui funções de gerenciamento de recursos é chamada de recipiente. Os recursos que podem ser controlados em um recipiente incluem os seguintes:
Grupos de recursos ou CPUs atribuídas, que são usadas para a partição de recursos de máquinas
Controles de recursos, que fornecem um mecanismo para a restrição dos recursos do sistema.
Classe de agendamento, que permite que você controle a alocação de recursos de COU disponíveis entre regiões através de compartilhamentos relativos. Você pode expressa a importância das cargas de trabalho em uma dada região através do número de compartilhamentos dos recursos de CPU atribuídos a essa região.
Antes de poder instalar uma região não global e usá-la no sistema, a região deve ser configurada.
O comando zonecfg é usado para criar a configuração e para determinar se os recursos e as propriedades especificados são válidos em um sistema hipotético. A verificação realizada por zonecfg para uma dada configuração examina o seguinte:
Assegurar que o caminho da região esteja especificado
Assegurar que todas as propriedades necessárias para cada recurso estejam especificadas
Para obter mais informações sobre o comando zonecfg, consulte a página do manual zonecfg(1M).
Esta seção aborda os componentes de região necessários e opcionais que podem ser configurados. Informações adicionais são fornecidas em Dados de configuração de região.
É necessário escolher um nome e um caminho para a região.
A configuração da propriedade autoboot determina se a região é inicializada automaticamente quando uma região global é inicializada. Os serviços de região svc:/system/zones:default também devem ser ativados.
Se você configurou grupos de recursos no sistema como descrito no Capítulo 13Criação e administração de grupos de recursos (tarefas), pode usar a propriedade pool para associar a região a um dos grupos de recursos ao configurar a região.
A partir da versão Solaris 10 8/07, se grupos de recursos não estiverem configurados, você ainda pode especificar que um subconjunto dos processadores do sistema seja dedicado a uma região não global quando estiver em execução ao usar o recurso dedicated-cpu. O sistema criará dinamicamente um grupo temporário para uso enquanto a região estiver em execução. Com a especificação através de zonecfg, as configurações de pool se propagam durante as migrações.
Uma configuração de região que use um grupo persistente definido através da propriedade pool é incompatível com um grupo temporário configurado através do recurso dedicated-cpu. Você pode definir somente uma destas duas propriedades.
O recurso dedicated-cpu especifica que um subconjunto dos processadores do sistema devem ser dedicados a uma região não global enquanto estiver em execução. Quando a região for inicializada, o sistema criará dinamicamente um grupo temporário para uso enquanto a região estiver em execução.
Com a especificação em zonecfg, as configurações de pool se propagam durante as migrações.
O recurso dedicated-cpu define limites para ncpus e, opcionalmente, para importance.
Especifique o número de CPUs ou especifique um intervalo, como 2 – 4 CPUs. Se você especificar um intervalo porque deseja um comportamento dinâmico do grupo de recursos, faça também o seguinte:
Defina a propriedade importance.
Ative o serviço poold. Para instruções, consulte Solaris 10 11/06 e posterior: como ativar o serviço de grupos de recursos dinâmicos usando svcadm.
Se estiver usando um intervalo de para obter o comportamento dinâmico, defina também a propriedade importance. A propriedade importance, que é opcional, define a importância relativa do grupo. Esta propriedade é necessária somente quando você especifica um intervalo para ncpus e usa grupos de recursos dinâmicos gerenciados por poold. Se poold não estiver em execução, importance será ignorado. Se poold estiver em execução e importance não estiver definido, importance assumirá 1 como padrão. Para obter mais informações, consulte Restrição da propriedade pool.importance.
O recurso capped-cpu e o recurso dedicated-cpu são incompatíveis. O controle de recursos cpu-shares rctl e o recurso dedicated-cpu são incompatíveis.
O recurso capped-cpu oferece um limite absoluto na quantidade de recursos da CPU que podem ser consumidos por um projeto ou uma região. Quando usado em conjunto com conjuntos de processadores, os caps de CPU limitam o uso da CPU dentro de um conjunto. O recurso capped-cpu possui uma única propriedade ncpus que é um decimal positivo com dois dígitos à direita do decimal. Esta propriedade corresponde a unidades de CPUs. O recurso não aceita um intervalo. O recurso não aceita um número decimal. Ao especificar ncpus, um valor 1 significa 100% de uma CPU. Um valor 1,25 significa 125% pois 100% corresponde a uma CPU completa no sistema.
O recurso capped-cpu e o recurso dedicated-cpu são incompatíveis.
Você pode usar o fair share scheduler (FSS) para controlar a alocação dos recursos de CPU disponíveis entre regiões, com base na importância das cargas de trabalho na região. Essa importância da carga de trabalho é expressa pelo número de compartilhamentos de recursos de CPU que você atribui a cada região. Mesmo que não esteja usando o FSS para gerenciar alocação de recursos de CPU entre regiões, você pode definir a classe de agendamento da região para usar o FSS, de modo que possa definir compartilhamentos em projetos dentro da região.
Quando você define explicitamente a propriedade cpu-shares, o fair share scheduler (FSS) é usado como a classe de agendamento para essa região. No entanto, a forma preferida de usar o FSS neste caso é definir o FSS para ser a classe de agendamento padrão do sistema com o comando dispadmin. Desta forma todas as regiões irão se beneficiar de um compartilhamento justo dos recursos de CPU do sistema. Se cpu-shares não estiver definido para uma região, a região usará a classe de agendamento padrão do sistema. As ações a seguir definem a classe de agendamento para uma região:
Na versão Solaris 10 8/07, você pode usar a propriedade scheduling-class em zonecfg para definir a classe de agendamento para a região.
Você pode definir a classe de agendamento para uma região através do procedimento de grupos de recursos. Se a região estiver associada a um grupo cuja propriedade pool.scheduler esteja definida como uma classe de agendamento válida, os processos executados na região serão executados nessa classe de agendamento por padrão. Consulte Introdução a grupos de recursos e Como associar um grupo a uma classe de agendamento.
Se o controle de recurso cpu-shares estiver definido e o FSS não foi definido como a classe de agendamento para a região através de outro ação, zoneadmd definirá a classe de agendamento como FSS quando a região for inicializada.
Se a classe de agendamento não estiver definida através de qualquer outra ação, a região herdará a classe de agendamento padrão do sistema.
Observe que você pode usar o priocntl descrito na página do manual priocntl(1) para mover processos em execução para uma classe de agendamento diferente sem alterar a classe de agendamento padrão e sem reinicializar.
O recurso capped-memory define limites para a memória física, de permuta e bloqueada. Cada limite é opcional, mas pelo menos um deve ser definido.
Determine valores para este recurso, se planejar limitar memória para a região usando rcapd da região global. A propriedade physical do recurso capped-memory é usada por rcapd como valor max-rss para a região.
A propriedade swap do recurso capped-memory é a forma preferida de definir o controle de recurso zone.max-swap.
A propriedade locked do recurso capped-memory é a forma preferida de definir o controle de recurso zone.max-locked-memory.
Os aplicativos geralmente não bloqueiam significativas quantidades de memória, mas você pode decidir definir a memória bloqueada caso os aplicativos da região bloqueiem memória. Se a segurança da região for preocupante, você também pode optar por definir o limite de memória bloqueada como 10 por cento da memória física do sistema ou 10 por cento do limite de memória física da região.
Para obter mais informações, consulte o Capítulo 10Controle da memória física usando o resource capping daemon (visão geral), Capítulo 11Administração do resource capping daemon (tarefas) e Como configurar a região. Para definir provisoriamente o limite de recurso de uma região, consulte Como especificar um limite de recurso provisório de uma região.
Interfaces de rede de região configuradas pelo comando zonecfg para fornecer conectividade de rede serão configuradas automaticamente e colocadas na região quando esta for inicializada.
A camada Internet Protocol (IP) aceita e entrega pacotes para a rede. Esta camada inclui roteamento de IP, o Address Resolution Protocol (ARP), a arquitetura de segurança IP (IPsec) e filtro de IP.
Há dois tipos de IP disponíveis para regiões não globais são IP compartilhado e IP exclusivo. A região com IP compartilhado compartilha a interface de rede e a região com IP exclusivo deve ter uma interface de rede dedicada.
Para obter informações sobre recursos de IP em cada tipo, consulte Conexão à rede em regiões não globais com IP compartilhado e Solaris 10 8/07: conexão à rede em regiões não globais com IP exclusivo.
A região com IP compartilhado é o tipo padrão. A região deve ter um ou mais endereços IP dedicados. Uma região com IP compartilhado compartilha a configuração da camada IP e o estado com a região global. A região deve usar a instância de IP compartilhado se ambos que se segue for verdadeiro:
A região deve estar conectada ao link de dados, ou seja, deve estar na mesma sub-rede ou sub-redes de IP que a região global.
Você não deseja outras capacidades que a região com IP exclusivo fornece.
Regiões com IP compartilhado recebem um ou mais endereços IP usando-se o comando zonecfg . Os nomes do link de dados devem também ser configurados na região global.
Esses endereços são associados a interfaces de rede lógica. O comando ifconfig pode ser usado a partir da região global para adicionar ou remover interfaces lógicas em uma região em execução. Para obter mais informações, consulte Interfaces de rede com IP compartilhado.
A funcionalidade total no nível de IP é uma região com IP exclusivo.
Uma região com IP exclusivo tem seu próprio estado relacionado a IP.
Isto inclui a capacidade de usar os seguintes recursos em uma região com IP exclusivo:
Autoconfiguração de endereço sem informações de estado de DHCPv4 e IPv6
Filtro de IP, incluindo a funcionalidade de conversão de endereço de rede (NAT)
ndd para definir TCP/UDP/SCTP, assim como botões no nível de IP/ARP
Segurança de IP (IPsec) e Internet Key Exchange (IKE), que automatiza a provisão de material de entrada autenticado para a associação de segurança IPsec
Uma região com IP exclusivo recebe seu pr≤prio conjunto de links de dados usando-se o comando zonecfg. A região recebe um nome de link de dados como xge0 , e1000g1, ou bge32001, usando-se a propriedadephysical do recurso net. A propriedade address do recurso net não é definida.
Observe que o link de dados atribuído permite que o comando snoop seja usado.
O comando dladm pode ser usado com o subcomando show-linkprop para mostrar a atribuição de links de dados a regiões com IP exclusivo em execução. O comando dladm pode ser usado com o subcomando set-linkprop para atribuir links de dados adicionais a regiões em execução. Para exemplos de uso, consulte Solaris 10 8/07: administração de links de dados em regiões não globais com IP exclusivo.
No interior de uma região com IP exclusivo em execução, o comando ifconfig pode ser usado para configurar IP, que inclui a capacidade de adicionar ou remover interfaces lógicas. A configuração de IP em uma região pode ser definida da mesma forma que para a região global, usando-se o sysidtools descrito em sysidcfg(4).
A configuração de IP de uma região com IP exclusivo pode somente ser visualizada a partir da região global usando-se o comando zlogin. Segue-se um exemplo.
global# zlogin zone1 ifconfig -a |
Em uma região com IP compartilhado, aplicativos na região, inclusive o superusuário, não podem enviar pacotes com endereços IP de origem que não sejam os atribuídos à região através do utilitário zonecfg. Este tipo de região não tem acesso para enviar e receber pacotes de link de dados arbitrário (camada 2).
Para uma região com IP exclusivo, zonecfg em vez disso concede à região o link de dados especificado inteiro. Como resultado, o superusuário em uma região com IP exclusivo pode enviar pacotes spoof nesses links de dados, assim como isso pode ser feito na região global.
As regiões com IP compartilhado sempre compartilham a camada IP com a região global, e as regiões com IP exclusivo sempre têm sua própria instância na camada IP. As regiões com IP compartilhado e as regiões com IP exclusivo pode ser usadas na mesma máquina.
Geralmente, os sistemas de arquivos montados em uma região incluem o seguinte:
O conjunto de sistemas de arquivos montados quando a plataforma virtual é inicializada
O conjunto de sistemas de arquivos montados a partir do próprio ambiente do aplicativo
Isso pode incluir, por exemplo, os seguintes sistemas de arquivos:
Sistemas de arquivos especificados em um arquivo /etc/vfstab da região
Montagens acionadas por AutoFS e AutoFS
Montagens executadas explicitamente por um administrador de regiões
Determinadas restrições são colocadas em montagens executadas a partir do ambiente do aplicativo. Essas restrições impedem que o administrador de regiões negue serviços ao resto do sistema, de outra forma exercendo impacto negativo sobre outras regiões.
Há restrições de segurança associadas à montagem de determinados sistemas de arquivos a partir de uma região. Outros sistemas de arquivos expõem comportamento especial quando montados em uma região. Para obter mais informações, consulte Sistemas de arquivos e regiões não globais.
O comando zonecfg usa um sistema de coincidência de regras para especificar quais dispositivos devem aparecer em uma determinada região. Os dispositivos que atendem a uma das regras são incluídos no sistema de arquivos /dev da região. Para obter mais informações, consulte Como configurar a região.
Você pode configurar uma propriedade hostid para uma região não global diferente a partir do hostid da região global. Isso seria feito se uma máquina física fosse consolidada em uma região utilizando a capacidade física para virtual. Os aplicativos, agora dentro da região, podem depender do hostid original e não seria possível atualizar a configuração do aplicativo. Consulte Tipos de recurso e propriedade para mais informações.
O administrador global pode definir controles de recursos de região geral privilegiados para uma região. Os controles de recursos gerais de região limitam o uso total de recursos de todas as entidades de processamento dentro de uma região.
Esses limites são especificados para regiões globais e não globais usando-se o comando zonecfg. Consulte Como configurar a região.
A partir da versão Solaris 10 8/07, o método preferido, mais simples, para definir o controle de recurso de região geral é usar o nome da propriedades em vez do recurso rctl.
Solaris 10 5/08: O controle de recursos zone.cpu-cap define um limite absoluto na quantidade de recursos da CPU que podem ser consumidos por uma região. Um valor 100 significa 100% de uma CPU como a definição project.cpu-cap. Um valor 125 é 125% pois 100% corresponde a uma CPU completa no sistema durante o uso de caps de CPU.
Ao definir o recurso capped-cpu, você pode usar um número decimal para a unidade. O valor se correlaciona ao controle de recursos zone.capped-cpu, mas a definição é diminuída por 100. A definição 1 é equivalente a uma definição 100 para o controle de recursos.
O controle de recurso zone.cpu-shares define um limite para o número de compartilhamentos de CPU do fair share scheduler (FSS) para uma região. Os compartilhamentos de CPU são primeiro alocados para a região e, em seguida, subdivididos entre projetos dentro da região como especificado nas entradas project.cpu-shares. Para obter mais informações, consulte Uso do fair share scheduler em um sistema do Solaris com regiões instaladas. O nome da propriedade global para este controle é cpu-shares.
O controle de recurso zone.max-locked-memory limita a quantidade de memória física bloqueada disponível para uma região. A alocação do recurso de memória entre projetos dentro da região pode ser controlada usando-se o controle de recurso project.max-locked-memory. Para obter mais informações, consulte a Tabela 6–1
O controle de recurso zone.max-lwps aprimora o isolamento do recurso impedindo que demasiadas LWPs em uma região afetem outras regiões. A alocação do recurso LWP entre projetos dentro da região pode ser controlada usando-se o controle de recurso project.max-lwps. Para obter mais informações, consulte a Tabela 6–1 O nome da propriedade global para este controle é max-lwps.
Os controles de recurso zone.max-msg-ids, zone.max-sem-ids , zone.max-shm-ids e zone.max-shm-memory são usados para limitar os recursos V de sistema usados por todos os processos dentro de uma região. A alocação de recursos V de sistema entre projetos dentro da região pode ser controlada usando-se as versões de projeto desses controles de recursos. Os nomes da propriedade global para esses controles são max-msg-ids, max-sem-ids, max-shm-ids e max-shm-memory.
O controle de recurso zone.max-swap limita permuta consumida por mapeamentos de espaço de endereço de processos do usuário e montagens tmpfs dentro de uma região. A saída de prstat -Z exibe uma coluna SWAP. A permuta relatada é a permuta total consumida pelos processos da região e pelas montagens tmpfs. Esse valor auxiliar na monitoração da permuta reservada por região, que pode ser usada para escolher uma configuração de zone.max-swap apropriada.
Tabela 17–1 Controles de recursos gerais de região
Nome do controle |
Nome da propriedade global |
Descrição |
Unidade padrão |
Valor usado para |
---|---|---|---|---|
zone.cpu-cap |
Solaris 10 5/08: Limite absoluto na quantidade de recursos de CPU dessa região. |
Quantidade (número de CPUs), expressa como uma porcentagem Observação – Ao definir o recurso capped-cpu, você pode usar um número decimal para a unidade. | ||
zone.cpu-shares |
cpu-shares |
Número de partilhas de CPU do fair share scheduler (FSS) para esta região. |
Quantidade (compartilhamentos) | |
zone.max-locked-memory |
Quantidade total de memória física bloqueada disponível para uma região. Se priv_proc_lock_memory for atribuído a uma região, configure também este controle de recurso para impedir que a região bloqueie a memória inteira. |
Tamanho (bytes) |
propriedade locked de capped-memory. |
|
zone.max-lwps |
max-lwps |
Número máximo de LWPs disponíveis simultaneamente para esta região. |
Quantidade (LWPs) | |
zone.max-msg-ids |
max-msg-ids |
Número máximo de IDs de fila de mensagens permitido para esta região. |
Quantidade (IDs de fila de mensagens) | |
zone.max-sem-ids |
max-sem-ids |
Número máximo de IDs de semáforo permitido para esta região. |
Quantidade (IDs de semáforo) | |
zone.max-shm-ids |
max-shm-ids |
Número máximo de IDs de memória compartilhada permitido para esta região. |
Quantidade (IDs de memória compartilhada) | |
zone.max-shm-memory |
max-shm-memory |
Quantidade total de memória compartilhada V de sistema para esta região. |
Tamanho (bytes) | |
zone.max-swap |
Quantidade total de permuta que pode ser consumida por mapeamentos de espaço de endereço de processamento de usuário e por montagens tmpfs para esta região. |
Tamanho (bytes) |
propriedade swap de capped-memory |
Esses limites podem ser especificados para processos em execução usando-se o comando prctl . Um exemplo é fornecido em Como definir compartilhamentos FSS na região global usando o comando prctl. Limites especificados através do comando prctl não são persistentes. Os limites estão em vigor somente até o sistema ser reinicializado.
Quando uma região é inicializada, um conjunto padrão de privilégios safe é incluído na configuração. Esses privilégios são considerados seguros porque eles impedem que um processo privilegiado na região afete processos em outras regiões não globais no sistema ou na região global. Você também pode usar o comando zonecfg para fazer o seguinte:
Adicionar ao conjunto de privilégios padrão, tendo em conta que tais alterações podem fazer com que os processos de uma região afetem os processos de outras regiões por serem capazes de controlar um recurso global.
Remover do conjunto de privilégios padrão, tendo em conta que tais alterações podem impedir que alguns processos funcionem corretamente, se requererem que esses privilégios sejam executados.
Há alguns privilégios que não podem ser removidos do conjunto de privilégios padrão da região, e também há alguns privilégios que não podem ser adicionados ao conjunto neste momento.
Para obter mais informações, consulte Privilégios em uma região não global, Como configurar a região e privileges(5).
Você também pode adicionar um comentário para uma região usando o tipo de recurso attr. Para obter mais informações, consulte Como configurar a região.
O comando zonecfg, que é descrito na página do manual zonecfg(1M), é usado para configurar uma região não global. Na versão Solaris 10 8/07, este comando também pode ser usado para especificar persistentemente as configurações de gerenciamento de recursos para a região global.
O comando zonecfg pode ser usado no modo interativo, no modo linha de comando ou no modo arquivo de comando. As seguintes operações podem ser executadas usando-se este comando:
Criar ou excluir (destruir) uma configuração de região
Adicionar recursos a uma configuração específica
Definir propriedades para recursos adicionados a uma configuração
Remover recursos de uma configuração específica
Consultar ou verificar uma configuração
Decidir por uma configuração
Reverter para uma configuração anterior
Renomear uma região
Sair de uma sessão zonecfg
O prompt zonecfg é da seguinte forma:
zonecfg:zonename> |
Quando você configura um tipo de recurso específico, como um sistema de arquivos, esse tipo de recurso também é incluído no prompt:
zonecfg:zonename:fs> |
Para obter mais informações, incluindo procedimentos que mostram como usar os vários componentes de zonecfg descritos neste capítulo, consulte o Capítulo 18Planejamento e configuração de regiões não globais (tarefas).
O conceito de um escopo é usado para a interface do usuário. O escopo pode ser global ou específico do recurso. O escopo padrão é global.
No escopo global, o subcomando add e o subcomando select são usados para selecionar um recurso específico. O escopo depois se altera para o do tipo de recurso.
Para o subcomando add, os subcomandos end ou cancel são usados para concluir a especificação do recurso.
Para o subcomando select, os subcomandos end ou cancel são usados para concluir a modificação do recurso.
O escopo depois reverte para global.
Determinados subcomandos, como add, remove e set, têm semânticas diferentes em cada escopo.
No modo interativo, os subcomandos a seguir têm suporte. Para obter informações detalhadas sobre semântica e opções usadas com os subcomandos, consulte a página do manual zonecfg(1M) para opções. Para qualquer subcomando que possa resultar em ações destrutivas ou em perda de trabalho, o sistema solicita a confirmação do usuário antes de prosseguir. Você pode usar a opção -F (forçar) para ignorar esta confirmação.
Imprime ajuda geral ou exibe ajuda sobre um determinado recurso.
zonecfg:my-zone:inherit-pkg-dir> help |
Comece a definir a configuração de uma memória para a nova região especificada para um destes propósitos:
Aplicar as configurações padrão da a uma nova configuração. Este método é o padrão.
Com a opção -t template, para criar uma configuração que é idêntica ao modelo especificado. O nome da região é alterado do nome do modelo para o novo nome da região.
Com a opção -F, para substituir uma configuração existente.
Com a opção -b, para criar uma configuração em branco em que nada é definido.
Imprime a configuração em saída padrão, ou no arquivo de saída especificado, em uma forma que pode ser usada em um arquivo de comando.
No escopo global, adicione o tipo de recurso especificado para a configuração.
No escopo de recurso, adicione uma propriedade do nome dado com o valor dado.
Para obter mais informações, consulte Como configurar a região e a página do manual zonecfg(1M).
Define um nome de propriedade dado como o valor de propriedade dado. Observe que algumas propriedades, como zonepath, são globais, enquanto outras são específicas do recurso. Assim, este comando é aplicável nos escopos global e de recurso.
Aplicável somente no escopo global. Selecione o recurso do tipo dado que coincida com os critérios do par de valores nome-propriedade de uma dada propriedade para modificação. O escopo é alterado para esse tipo de recurso. É necessário especificar um número suficiente de pares nome-valor da propriedade para o recurso ser identificado com exclusividade.
Solaris 10 8/07: Limpa o valor para configurações opcionais. Configurações necessárias não podem ser limpas. No entanto, algumas configurações necessárias podem ser alteradas pela atribuição de um novo valor.
No escopo global, remove o tipo de recurso especificado. É necessário especificar um número suficiente de pares nome-valor da propriedade para o tipo de recurso ser identificado com exclusividade. Se nenhum par nome-valor da propriedade for especificado, todas as instâncias serão removidas. Se existir mais de uma, será necessária uma confirmação, a não ser que a opção -F seja usada.
No escopo de recurso, remova do recurso atual o valor nome-propriedade especificado da propriedade.
Aplicável somente no escopo de recurso. Finaliza a especificação do recurso.
O comando zonecfg verifica a seguir se o recurso atual está totalmente especificado.
Se o recurso estiver totalmente especificado, ele será adicionado à configuração na memória e o escopo irá reverter para global.
Se a especificação estiver incompleta, o sistema exibirá uma mensagem de erro que descreve o que é necessário fazer.
Aplicável somente no escopo de recurso. Finaliza a especificação do recurso e redefine o escopo como global. Quaisquer recursos especificados parcialmente não serão retidos.
Destrói a configuração especificada. Exclui a configuração da memória e do armazenamento. É necessário usar a opção -F (forçar) com delete.
Esta ação é instantânea. Nenhum comprometimento é necessário, e uma região excluída não pode ser revertida.
Exibe informações sobre a configuração atual ou as propriedades de recurso global zonepath, autoboot e pool. Se um tipo de recurso estiver especificado, exibe informações somente sobre recursos desse tipo. No escopo de recurso, este subcomando se aplica somente ao recurso que está sendo adicionado ou modificado.
Verifica a correção da configuração atual. Assegura que todos os recursos tenham todas as propriedades necessárias especificadas.
Envia a configuração atual da memória para o armazenamento. Até a configuração na memória ser enviada, alterações podem ser removidas com o subcomando revert. É necessário que uma configuração seja enviada para ser usada pelo zoneadm. Há uma tentativa automática desta operação quando você conclui uma sessão zonecfg. Uma vez que somente uma configuração correta pode ser comprometida, a operação de comprometimento executa automaticamente uma verificação.
Reverte a configuração para o último estado de comprometido.
Sai da sessão zonecfg. Você pode usar a opção -F (forçar) com exit.
Há uma tentativa automática de commit, se necessário. Observe que um caractere EOF também pode ser usado para sair da sessão.
No modo de comando de arquivo, a entrada é tomada de um arquivo. O subcomando export descrito em Modo interativo de zonecfg é usado para produzir este arquivo. A configuração pode ser impressa na saída padrão, ou a opção -f pode ser usada para especificar um arquivo de saída.
Os dados de configuração da região estão formados por dois tipos de entidades, recursos e propriedades. Cada recurso tem um tipo, e cada recurso também tem um conjunto ou mais de propriedades. As propriedades têm nomes e valores. O conjunto de propriedades é dependente do tipo de recurso.
Os tipos de recurso e propriedade são descritos como a seguir:
O nome da região identifica a região para o utilitário de configuração. As regras seguintes aplicam-se a nomes de regiões:
Cada região deve ter um nome exclusivo.
Um nome de região diferencia maiúsculas de minúsculas.
Um nome de região deve começar com um caractere alfanumérico.
O nome pode conter caracteres alfanuméricos, barras inferiores (_), hifens (-) e pontos (.).
O nome não pode ter mais de 64 caracteres.
O nome global e todos os nomes que começam com SUNW são reservados e não podem ser usados.
A propriedade zonepath é o caminho que contém a raiz da região. Cada região possui um diretório raiz que reside no sistema de arquivos da região global sob sua zonepath. No momento da instalação da região, a hierarquia de diretório zonepath será criada com o proprietário e modo apropriados.. O diretório zonepath é exigido para pertencer a raiz com o modo700.
O caminho para a raiz da região global é um nível inferior. O diretório raiz da região tem as mesmas posses e permissões que o diretório raiz ( /) na região global. O diretório da região deve ser pertencente a root com o modo 755. Esses diretórios são criados automaticamente com as permissões corretas e não requerem verificação pelo administrador de regiões. Esta hierarquia garante que usuários não privilegiados na região global não atravessem um sistema de arquivos da região não global.
Caminho |
Descrição |
---|---|
/home/export/my-zone |
zonecfg zonepath |
/home/export/my-zone/root |
Raiz da região |
/home/export/my-zone/dev |
Dispositivos criados para a região |
Consulte Atravessamento de sistemas de arquivos para mais discussões sobre esta questão.
Consulte Solaris 10 6/06, Solaris 10 11/06, Solaris 10 8/07 e Solaris 10 5/08: não colocar o sistema de arquivos raiz de uma região global no ZFS para restrições de ZFS nestas versões.
Se esta propriedade estiver definida para verdadeira, a região será inicializada automaticamente quando a região global for inicializada. Observe que se o serviço de regiões svc:/system/zones:default estiver desativado, a região não será inicializada automaticamente, independentemente da configuração desta propriedade. Você pode ativar o serviço de regiões com o comando svcadm descrito na página do manual svcadm(1M):
global# svcadm enable zones |
Solaris 10 8/07: Esta propriedade é usada para definir um argumento de inicialização para a zona. O argumento de inicialização é aplicado, a menos que seja ignorada pelos comando reboot, zoneadm boot ou zoneadm reboot. Consulte Solaris 10 8/07: argumentos de inicialização de região.
Esta propriedade é usada para associar a região a um grupo de recursos no sistema. Várias regiões podem compartilhar os recursos de um grupo. Consulte também Solaris 10 8/07: recurso dedicated-cpu.
Solaris 10 11/06 e posterior: Esta propriedade é usada para especificar uma máscara de privilégio diferente da padrão. Consulte Privilégios em uma região não global.
Privilégios são adicionados especificando-se o nome do privilégio, com ou sem o primeiro priv_. Privilégios são excluídos precedendo-se o nome com um traço (-) ou um sinal de exclamação (!). Os valores de um privilégio são separados por vírgulas e colocados entre aspas (“).
Como descrito em priv_str_to_set(3C), os conjuntos de privilégios especiais de none, all e basic expandem-se para as definições normais. Uma vez que a configuração de região deriva da região global, o conjunto de privilégios especiais zone não pode ser usado. Visto que um uso comum é alterar o conjunto de privilégios padrão adicionando ou removendo determinados privilégios, o conjunto especial default mapeia para o padrão, conjunto de privilégios. Quando default aparece no início da propriedade limitpriv, ele expande-se para o conjunto padrão.
A entrada seguinte adicionar a capacidade para usar programas do DTrace que somente requerem os privilégios dtrace_proc e dtrace_user na região:
global# zonecfg -z userzone zonecfg:userzone> set limitpriv="default,dtrace_proc,dtrace_user" |
Se o conjunto de privilégios da região contiver um privilégio não permitido, não tiver um privilégio necessário ou incluir um privilégio desconhecido, uma tentativa de verificação, pronto ou inicialização da região irá falhar com uma mensagem de erro.
Solaris 10 8/07: Esta propriedade define a classe de agendamento para a região. Para obter informações adicionais e dicas, consulte Classe de agendamento em uma região.
Solaris 10 8/07: É necessário que esta propriedade seja definida somente se a região for uma região com IP exclusivo. Consulte Solaris 10 8/07: regiões não globais com IP exclusivo e Como configurar a região.
Solaris 10 8/07: Este recurso dedica um subconjunto de processadores do sistema à região enquanto está em execução. O recurso dedicated-cpu fornece limites para ncpus e, opcionalmente, importância . Para obter mais informações, consulte Solaris 10 8/07: recurso dedicated-cpu.
Solaris 10 5/08: Este recurso define um limite na quantidade de recursos da CPU que podem consumidos pela região durante a sua execução. O recurso fornece um limite para ncpus.
Solaris 10 8/07: Este recurso agrupa as propriedades usadas ao se limitar a memória para a região. O recurso capped-memory fornece limites para a memória física, de permuta e bloqueada. Pelo menos uma destas propriedades deve ser especificada.
Solaris 10 6/06: A adição do recurso de conjunto de dados do sistema de arquivos do ZFS permite a delegação da administração do armazenamento a uma região não global. O administrador de região pode criar e destruir sistemas de arquivos dentro desse conjunto de dados, criar e destruir clones e modificar as propriedades do conjunto de dados. O administrador da região não pode afetar conjuntos de dados que foram adicionados à região ou excederam quaisquer cotas de nível superior no conjunto de dados atribuído à região.
Conjuntos de dados do ZFS podem ser adicionados a uma região nas seguintes maneiras.
Como um sistema de arquivos montado lofs, quando o objeto é unicamente compartilhar espaço com a região global
Como um conjunto de dados delegado
Consulte o Capítulo 10, Tópicos avançados do ZFS do Oracle Solaris, no Guia de administração do ZFS Oracle Solaris e Sistemas de arquivos e regiões não globais.
Para obter informações sobre problemas do conjunto de dados, consulte também o Capítulo 30Soluções diversas de problemas do Solaris Zones.
Cada região pode ter vários sistemas de arquivos que são montados quando a região passada do estado de instalado para o estado de pronto. O recurso do sistema de arquivos especifica o caminho para o ponto de montagem do sistema de arquivos. Para obter mais informações sobre o uso de sistemas de arquivos em regiões, consulte Sistemas de arquivos e regiões não globais.
Este recurso não deve ser configurado em uma zona raiz inteira.
Em uma zona raiz inteira, o recurso inherit-pkg-dir é usado para representar diretórios que contêm pacote de software que uma região não global compartilha com a região global.
O conteúdo dos pacotes de software transferidos para o diretório inherit-pkg-dir é herdado no modo somente leitura pela região não global. 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.
Por padrão, recursos inherit-pkg-dir são incluídos na configuração. Estes recursos de diretório indicam quais diretórios devem ter pacotes associados herdados da região global. Os recursos são implementados através de uma montagem de sistema de arquivos com auto-retorno somente leitura.
/lib
/platform
/sbin
/usr
O recurso de interface de rede é o nome da interface virtual. Cada região pode ter interfaces de rede que devem ser configuradas quando a região passa do estado de instalado para o estado de pronto.
O recurso de dispositivo é o especificador de coincidência de dispositivo. Cada região pode ter dispositivos que devem ser configurados quando a região passa do estado de instalado para o estado de pronto.
O recurso rctl é usado para controles gerais de região. Os controles são ativados quando a região passa do estado de instalado para o estado de pronto.
Um hostid que é diferente dohostid da região global pode ser configurado.
Este atributo genérico pode ser usado para comentários de usuário ou por outros subsistemas. A propriedade name de um attr deve começar com um caractere alfanumérico. A propriedade name pode conter caracteres alfanuméricos, hifens (-) e pontos (.). Nomes de atributos iniciados com zone. são reservados para uso pelo sistema.
Recursos também têm propriedades a serem configuradas. As propriedades a seguir estão associadas aos tipos de recursos mostrados.
ncpus, importance
Solaris 10 8/07: Especifica o número de CPUs e, opcionalmente, a importância relativa do grupo. O exemplo a seguir especifica um intervalo de CPU a ser usado pela região my-zone. importance é também definido.
zonecfg:my-zone> add dedicated-cpu zonecfg:my-zone:dedicated-cpu> set ncpus=1-3 zonecfg:my-zone:dedicated-cpu> set importance=2 zonecfg:my-zone:dedicated-cpu> end |
ncpus
Especifica o número de CPUs. O exemplo seguinte especifica um cap de CPU de 3,5 CPUs a ser usado pela região my-zone.
zonecfg:my-zone> add capped-cpu zonecfg:my-zone:capped-cpu> set ncpus=3.5 zonecfg:my-zone:capped-cpu> end |
physical, swap, locked
Especifica os limites de memória para a regiãomy-zone. Cada limite é opcional, mas pelo menos um deve ser definido.
zonecfg:my-zone> add capped-memory zonecfg:my-zone:capped-memory> set physical=50m zonecfg:my-zone:capped-memory> set swap=100m zonecfg:my-zone:capped-memory> set locked=30m zonecfg:my-zone:capped-memory> end |
dir, special, raw, type, options
Os parâmetros do recurso fs fornecem os valores para determinar como e onde montar sistemas de arquivos. Os parâmetros de fs são definidos como a seguir:
Especifica o ponto de montagem para o sistema de arquivos
Especifica o nome do dispositivo especial de bloco ou o diretório da região global a ser montada
Especifica o dispositivo básico no qual executar fsck antes da montagem do sistema de arquivos
Especifica o tipo de sistema de arquivos
Especifica opções de montagem semelhantes às encontradas com o comando mount
As linhas no exemplo seguinte especificam que /dev/dsk/c0t0d0s2 na região global deve ser montado como /mnt em uma região que está sendo configurada. A propriedade raw especifica um dispositivo opcional no qual o comando fsck será executado antes de se fazer uma tentativa de montar o sistema de arquivos. O tipo de sistema de arquivos a ser usado é UFS. As opções nodevices e logging são adicionadas.
zonecfg:my-zone> add fs zonecfg:my-zone:fs> set dir=/mnt zonecfg:my-zone:fs> set special=/dev/dsk/c0t0d0s2 zonecfg:my-zone:fs> set raw=/dev/rdsk/c0t0d0s2 zonecfg:my-zone:fs> set type=ufs zonecfg:my-zone:fs> add options [nodevices,logging] zonecfg:my-zone:fs> end |
Para obter mais informações, consulte A opção -o nosuid , Restrições de segurança e comportamento do sistema de arquivos, e as páginas do manual fsck(1M) e mount(1M). Observe também que as páginas do manual da seção 1M estão disponíveis para opções de montagem que são exclusivas de um sistema de arquivos específico. Os nomes dessas páginas do manual têm a forma mount_filesystem.
Para adicionar um sistema de arquivos ZFS utilizando a propriedade do recurso fs, consulte Adicionando sistemas de arquivos ZFS a uma região não global no Guia de administração do ZFS Oracle Solaris.
nome
As linhas no exemplo seguinte especificam que o conjunto de dados sales será visível e montado na região não global e não mais visível na região global.
zonecfg:my-zone> add dataset zonecfg:my-zone> set name=tank/sales zonecfg:my-zone> end |
dir
As linhas no exemplo seguinte especificam que /opt/sfwserá montado com auto-retorno a partir da região global.
zonecfg:my-zone> add inherit-pkg-dir zonecfg:my-zone:inherit-pkg-dir> set dir=/opt/sfw zonecfg:my-zone:inherit-pkg-dir> end |
address, physical, defrouter
para uma região com IP compartilhado, o endereço IP e o dispositivo são especificados. Como opção, o roteador padrão pode ser definido.
A propriedade defrouter pode ser utilizada para configurar uma rota padrão quando a região não global estiver em uma subrede que não está configurada na região global.
Qualquer região que possua o conjunto de propriedades defrouter deve estar em uma subrede que não está configurada na região global.
Quando houver regiões de IP compartilhado em subredes diferentes, não configure um link de dados na região global.
Para uma região com IP exclusivo, somente a interface física é especificada. A propriedade física pode ser uma VNIC.
No exemplo seguinte para uma região com IP compartilhado, o endereço IP 192.168.0.1 é adicionado à região. Um placa hme0 é usada para a interface física. Para determinar a interface física a ser usada, digite ifconfig - a em seu sistema. Cada linha da saída, que não linhas do driver de auto-retorno, começa com o nome de uma placa instalada em seu sistema. Linhas que contêm LOOPBACK nas descrições não se aplicam a placas.
zonecfg:my-zone> add net zonecfg:my-zone:net> set physical=hme0 zonecfg:my-zone:net> set address=192.168.0.1 zonecfg:my-zone:net> end |
No exemplo seguinte para uma região com IP exclusivo, um link bge32001 é usado para a interface física. Para determinar quais links de dados estão disponíveis, use o comando dladm show-link. O link de dados deve ser GLDv3 para ser usado com regiões com IP exclusivo, e links de dados não GLDv3 aparecem como type: legacy na saída dladm show-link. Observe que ip-type=exclusive também deve ser especificado.
zonecfg:my-zone> set ip-type=exclusive zonecfg:my-zone> add net zonecfg:my-zone:net> set physical=bge32001 zonecfg:my-zone:net> end |
match
No exemplo seguinte, um dispositivo /dev/pts é incluído em uma região.
zonecfg:my-zone> add device zonecfg:my-zone:device> set match=/dev/pts* zonecfg:my-zone:device> end |
name, value
Solaris 10 8/07: Novos controles de recursos para esta versão são zone.max-locked-memory, zone.max-msg-ids , zone.max-sem-ids, zone.max-shm-ids, zone.max-shm-memory e zone.max-swap.
Os seguintes controles de recursos de região geral estão disponíveis:
zone.cpu-shares (preferido: cpu-shares )
zone.max-locked-memory
zone.max-lwps (preferido: max-lwps)
zone.max-msg-ids (preferido: max-msg-ids )
zone.max-sem-ids (preferido: max-sem-ids )
zone.max-shm-ids (preferido: max-shm-ids )
zone.max-shm-memory (preferido: max-shm-memory )
zone.max-swap
Observe que o método preferido, mais simples, para definir um controle de recursos de região geral é usar o nome da propriedade, em vez do recurso rctl, como mostrado em Como configurar a região. Se as entradas do controle de recurso de região geral em uma região forem configuradas usando-se add rctl, o formato será diferente das entradas do controle de recurso no banco de dados de project. Na configuração de uma região, o tipo de recurso rctl consiste em três pares nome-valor. Os nomes são priv, limit e action. Cada nome tem um valor simples.
zonecfg:my-zone> add rctl zonecfg:my-zone:rctl> set name=zone.cpu-shares zonecfg:my-zone:rctl> add value (priv=privileged,limit=10,action=none)zonecfg:my-zone:rctl> end |
zonecfg:my-zone> add rctl zonecfg:my-zone:rctl> set name=zone.max-lwps zonecfg:my-zone:rctl> add value (priv=privileged,limit=100,action=deny) zonecfg:my-zone:rctl> end |
Para obter informações gerais sobre controles de recursos e atributos, consulte o Capítulo 6Controles de recursos (visão geral) e Controles de recursos em regiões não globais.
name, type, value
No exemplo a seguir, é adicionado um comentário sobre uma região.
zonecfg:my-zone> add attr zonecfg:my-zone:attr> set name=comment zonecfg:my-zone:attr> set type=string zonecfg:my-zone:attr> set value="Production zone" zonecfg:my-zone:attr> end |
Você pode usar o subcomando export para imprimir uma configuração de região para saída padrão. A configuração é salva em uma forma que pode ser usada em um arquivo de comando.
A biblioteca de edição da linha de comando tecla é incluída para uso com o comando zonecfg. A biblioteca fornece um mecanismo para histórico de linha de comando e suporte a edição.
A biblioteca de edição da linha de comando tecla é documentada nas seguintes páginas do manual:
enhance(1)
libtecla(3LIB )
ef_expand_file(3TECLA)
gl_get_line(3TECLA)
gl_io_mode(3TECLA)
pca_lookup_file(3TECLA)
tecla(5)
Este capítulo descreve o que é necessário fazer antes de você poder configurar uma região no sistema. Este capítulo também descreve como configurar uma região, modificar a configuração de uma região e excluir a configuração de uma região do sistema.
Para uma introdução ao processo de configuração de região, consulte o Capítulo 17Configuração de região não global (visão geral).
Antes de configurar o sistema para usar regiões, é necessário primeiro reunir informações e tomar decisões sobre como configurar as regiões. O mapa de tarefas a seguir resume como planejar e configurar uma região.
Tarefa |
Descrição |
Para instruções |
---|---|---|
Planeje a estratégia de região. |
|
Consulte o uso histórico. Consulte também Requisitos de espaço em disco e Grupos de recursos usados em regiões. |
Determine o nome para a região. |
Decida como chamar a região baseado nas convenções de nomes. |
Consulte Dados de configuração de região e Nome do host de região. |
Determine o caminho da região. |
Cada região tem um caminho para seu diretório raiz que é relacionado ao diretório raiz da região global. |
Consulte Dados de configuração de região. |
Avalie a necessidade de restrição de CPU, se não estiver configurando grupos de recursos. |
Revise os requisitos de aplicativo. |
Consulte Solaris 10 8/07: recurso dedicated-cpu. |
Avalie a necessidade de alocação de memória, se planejar limitar a memória para a região usando rcapd da região global. |
Revise os requisitos de aplicativo. |
Consulte o Capítulo 10Controle da memória física usando o resource capping daemon (visão geral), Capítulo 11Administração do resource capping daemon (tarefas) e Solaris 10 8/07: controle da memória física e o recurso capped-memory. |
Torne o FSS o agendador padrão no sistema. |
Dê a cada região, compartilhamentos de CPU para controlar o direito da região aos recursos de CPU. O FSS garante uma dispersão justa de recursos da CPU entre regiões que tem base em compartilhamentos alocados. |
Capítulo 8Fair share scheduler (visão geral), Classe de agendamento em uma região. |
Determine se a região será uma região com IP compartilhado ou uma região com IP exclusivo. |
Para uma região com IP compartilhado, que é o padrão, obtenha ou configura endereços IP para a região. Dependendo da configuração, é necessário obter pelo menos um endereço IP para cada região não global que você deseja que tenha acesso à rede. Para uma região com IP exclusivo, determine o link de dados que será atribuído à região. A região requer acesso exclusivo a uma ou mais interfaces de rede. A interface pode ser uma LAN separada, como bge1, ou uma VLAN separada, como bge2000. O link de dados deve ser GLDv3. Um link de dados que não seja GLDv3 é identificado como type: legacy na saída do comando dladm show-link . |
Consulte Determine o nome do host de região e obtenha o endereço de rede, Como configurar a região e System Administration Guide: IP Services . Para mais informações sobre interfaces GLDv3, consulte Oracle Solaris Interface Types no System Administration Guide: IP Services. |
Determine quais sistemas de arquivos você deseja montar na região. |
Revise os requisitos de aplicativo. |
Para obter mais informações, consulte Sistemas de arquivos montados em regiões. |
Determine quais interfaces de rede devem ser disponibilizadas na região. |
Revise os requisitos de aplicativo. |
Consulte Interfaces de rede com IP compartilhado. |
Decida se deve alterar a definição padrão das permissões da região não global. |
Verifique o conjunto de privilégios: padrão, privilégios que podem ser adicionados e removidos, e privilégios que não podem ser usados desta vez. |
Consulte Privilégios em uma região não global. |
Determine quais dispositivos devem ser configurados em cada região. |
Revise os requisitos de aplicativo. |
Consulte a documentação de seu aplicativo. |
Configure a região. |
Use zonecfg para criar uma configuração para a região. |
Consulte Configuração, verificação e comprometimento de uma região. |
Verifique e comprometa a região configurada. |
Determine se os recursos e as propriedades especificados são válidos em um sistema hipotético. |
Consulte Configuração, verificação e comprometimento de uma região. |
Regiões podem ser usadas em qualquer máquina que execute a versão Solaris 10. As considerações fundamentais sobre a máquina abaixo estão associadas ao uso de regiões.
Os requisitos de desempenho dos aplicativos em execução dentro de cada região.
A disponibilidade de espaço em disco para armazenar arquivos que são exclusivos dentro de cada região.
Não há limites para a quantidade de espaço em disco a ser consumida por uma região. O administrador global é responsável pela restrição do espaço. O administrador global deve garantir que o armazenamento local seja suficiente para conter o sistema de arquivos raiz de uma região não global. Mesmo um sistema uniprocessador pequeno pode oferecer suporte a diversas regiões em execução simultaneamente.
A natureza dos pacotes instalados na região global afeta os requisitos de espaço das regiões não globais que são criadas. O número de pacotes e requisitos de espaço são fatores.
Na versão Solaris 10, as regiões não globais que possuem recursos inherit-pkg-dir são chamadas de regiões de raiz dispersa.
O modelo de zona raiz esparsa otimiza o compartilhamento de objetos das seguintes maneiras:
Somente um subconjunto de pacotes instalados na região global é instalado diretamente na região não global.
Sistemas de arquivos de auto-retorno somente leitura, identificados como recursos inherit-pkg-dir , são usados para ganhar acesso a outros arquivos.
Neste modelo, todos os pacotes parecem estar instalados na região não global. Pacotes que não entregam conteúdo nos sistemas de arquivos montados com auto-retorno somente leitura são instalados completamente. Não há necessidade de instalar conteúdo entregue nos sistemas de arquivos montados com auto-retorno somente leitura, uma vez que esse conteúdo é herdado (e visível) da região global.
Como guia geral, uma região requer cerca de 100 megabytes de espaço em disco por região quando a região global foi instalada com todos os pacotes padrão do Solaris.
Por padrão, quaisquer pacotes adicionais instalados na região global também preenchem as regiões não globais. A quantidade de espaço em disco necessária pode ser aumentada de acordo, dependendo de pacotes adicionais entregarem arquivos que residam no espaço de recurso inherit-pkg-dir.
Sugere-se 40 megabytes adicionais de RAM por região, mas não necessários em uma máquina com espaço de permuta suficiente.
O modelo de zona raiz inteira fornece a configurabilidade máxima. Todos os pacotes necessários ou quaisquer pacotes do Solaris opcionais selecionados são instalados nos sistemas de arquivos privados da região. As vantagens deste modelo incluem a capacidade de os administradores globais personalizarem o layout do sistema de arquivos das regiões. Isso seria feito, por exemplo, para adicionar pacotes avulsos arbitrários ou de terceiros.
Os requisitos de espaço para este modelo são determinados pelo espaço em disco usado pelos pacotes atualmente instalados na região global.
Se criar uma zona raiz esparsa que contenha os seguintes diretórios inherit-pkg-dir, você deve remover esses diretórios da configuração das regiões não globais antes de a região ser instaladas para ter uma zona raiz inteira:
/lib
/platform
/sbin
/usr
Consulte Como configurar a região.
As seguintes opções podem ser usadas para restringir o tamanho de uma região:
Você coloca a região em uma partição montada em lofi. Esta ação limitará a quantidade de espaço consumida pela região à quantidade do arquivo usado por lofi. Para obter mais informações, consulte as páginas do manual lofiadm(1M) e lofi(7D).
Você pode usar partições suaves para dividir segmentos de disco ou volumes lógicos em partições. Pode usar essas partições como raízes de região e, assim, limitar o consumo de disco por região. O limite da partição suave é 8.192 partições. Para obter mais informações, consulte Capítulo 12, Soft Partitions (Overview), no Solaris Volume Manager Administration Guide .
Você pode usar as partições padrão de um disco para raízes de região e, assim, limitar o consumo de disco por região.
Você deve determinar o nome do host para a região. Em seguida, você deve atribuir um endereço IPv4 ou configurar e atribuir manualmente um endereço IPv6 para a região, se desejar que esta tenha conectividade de rede.
O nome do host que você seleciona para a região deve ser definido no banco de dados hosts ou no banco de dados /etc/inet/hosts, como especificado pelo arquivo /etc/nsswitch.conf na região global. Os bancos de dados de rede são arquivos que fornecem informações de configuração de rede. O arquivo nsswitch.conf especifica o serviço de identificação a ser usado.
Se você usar arquivos locais para o serviço de identificação, o banco de dados hosts será mantido no arquivo /etc/inet/hosts. Os nomes do host para as interfaces de rede da região são resolvidos a partir do banco de dados local hosts em /etc/inet/hosts. Como alternativa, o próprio endereço IP pode ser especificado diretamente ao se configurar uma região, de modo que a resolução do nome do host é necessária.
Para obter mais informações, consulte TCP/IP Configuration Files no System Administration Guide: IP Services e Network Databases and the nsswitch.conf File no System Administration Guide: IP Services .
Cada região com IP compartilhado que requer conectividade de rede tem um ou mais endereços IP exclusivos. Há suporte para os endereços IPv4 e IPv6.
Se você estiver usando IPv4, obtenha um endereço e atribua-o à região.
Um comprimento de prefixo também pode ser especificado com o endereço IP. O formato deste prefixo é address/prefix-length, por exemplo, 192.168.1.1/24. Assim, o endereço a ser usado é 192.168.1.1 a máscara de rede a ser usada é 255.255.255.0, ou a máscara em que os primeiros 24 bits são 1 bit.
Se estiver usando IPv6, você deve configurar o endereço manualmente. Normalmente, pelo menos os seguintes dois tipos de endereços devem ser configurados:
Um endereço link-local tem a forma fe80:: ID de interface de 64 bits/10. O /10 indica um comprimento de prefixo de 10 bits.
Um endereço unicast global é baseado de um prefixo de 64 bits que o administrador configura para cada sub-rede, e um ID de interface de 64 bits. O prefixo também pode ser obtido executando o comando ifconfig com a opção -a6 em qualquer sistema na mesma sub-rede que foi configurada para usar IPv6.
O ID da interface de 64 bits é normalmente derivada de um endereço MAC do sistema. Para uso de regiões, um endereço alternativo que é exclusivo pode ser derivado do endereço IPv4 da região global, como a seguir:
16 bits of zero:upper 16 bits of IPv4 address:lower 16 bits of IPv4 address:a zone-unique number
Por exemplo, se o endereço IPv4 da região global for 192.168.200.10, um endereço link-local adequado para uma região não global que usa um número exclusivo de região 1 é fe80::c0a8:c80a:1/10. Se o prefixo global em uso nessa sub-rede for 2001:0db8:aabb:ccdd/64, um endereço unicast global para a mesma região não global é 2001:0db8:aabb:ccdd::c0a8:c80a:1/64 . Observe que você deve especificar um comprimento de prefixo ao configurar um endereço IPv6.
Para obter mais informações sobre link-local e endereços unicast globais, consulte a página do manual inet6(7P).
No interior de uma região com IP exclusivo, configure endereços da mesma forma que para a região global. Observe que a autoconfiguração de endereço DHCP e IPv6 sem informação de estado pode ser usada para configurar endereços.
Para obter mais informações, consulte sysidcfg(4).
Você pode especificar diversas montagens a serem executadas quando a plataforma virtual é configurada. Sistemas de arquivos que são montados com auto-retorno em uma região usando-se o sistema de arquivos virtual com auto-retorno (LOFS) devem ser montados com a opção nodevices. Para obter informações sobre a opção nodevices, consulte Sistemas de arquivos e regiões não globais.
LOFS permite que você crie um novo sistema de arquivos virtual para que possa acessar arquivos usando um nome de caminho alternativo. Em uma região não global, uma montagem com auto-retorno faz com que a hierarquia do sistema de arquivos pareça como se duplicada sob a raiz da região. Na região, todos os arquivos serão acessíveis com um nome de caminho que começa a partir da raiz da região. A montagem LOFS preserva o espaço de nome do sistema de arquivos.
Para obter mais informações, consulte a página do manual lofs(7S).
Tarefa |
Descrição |
Para instruções |
---|---|---|
Configure uma região não global. |
Use o comando zonecfg para criar uma região, verificar a configuração e comprometer a configuração. Você também pode usar um script para configurar e inicializar várias regiões no sistema. Você pode usar o comando zonecfg para exibir a configuração de uma região não global. |
Configuração, verificação e comprometimento de uma região, Script para configurar várias regiões |
Modifique uma configuração de região. |
Use este procedimento para modificar um tipo de recurso na configuração de uma região ou adicione um dispositivo dedicado a uma região. |
Uso do comando zonecfg para modificar a configuração de uma região |
Reverta a configuração de uma região ou exclua a configuração de uma região. |
Use o comando zonecfg para desfazer uma definição de recurso feita para uma configuração de região ou para excluir uma configuração de região. |
Uso do comando zonecfg para reverter ou remover a configuração de uma região |
Exclua uma configuração de região. |
Use o comando zonecfg com o subcomando delete para excluir uma configuração de região do sistema. |
Você usa o comando zonecfg descrito na página do manual zonecfg(1M) para executar as ações a seguir.
Criar a configuração da região
Verificar se todas as informações necessárias estão presentes
Comprometer a configuração da região não global
O comando zonecfg também pode ser usado para especificar persistentemente as configurações do gerenciamento de recurso para a região global.
Ao configurar uma região 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 região.
Um script para configurar várias regiões no sistema é fornecido em Script para configurar várias regiões.
Para exibir uma configuração de região não global, consulte Como exibir a configuração de uma região não global.
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.
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 .
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. |
Crie a configuração de uma nova região.
Este procedimento usa as configurações padrão da
zonecfg:my-zone> create |
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.
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 |
Defina argumentos de inicialização persistentes para uma região.
zonecfg:my-zone> set bootargs="-m verbose" |
Dedique uma CPU a esta região.
zonecfg:my-zone> add dedicated-cpu |
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.
Defina a classe de agendamento como FSS.
zonecfg:my-zone> set scheduling-class=FSS |
Adicione um limite de memória.
zonecfg:my-zone> add capped-memory |
Defina o limite de memória.
zonecfg:my-zone:capped-memory> set physical=50m |
Defina o limite da memória de permuta.
zonecfg:my-zone:capped-memory> set swap=100m |
Defina o limite da memória bloqueada.
zonecfg:my-zone:capped-memory> set locked=30m |
Finalize a especificação do limite da memória.
zonecfg:my-zone:capped-memory> end |
Adicione um sistema de arquivos.
zonecfg:my-zone> add fs |
Defina um ponto de montagem para o sistema de arquivos, /usr/local neste procedimento.
zonecfg:my-zone:fs> set dir=/usr/local |
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.
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.
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.
(Opcional) Configure ohostid.
zonecfg:my-zone> set hostid=80f0c086 |
Adiciona o conjunto de dados do ZFS nomeado sales no grupo de armazenamento tank.
zonecfg:my-zone> add dataset |
(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 |
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 |
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.
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.
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
(Opcional) Se estiver criando uma região com IP exclusivo, defina ip-type.
zonecfg:my-zone> set ip-type=exclusive |
Somente o tipo de dispositivo físico será especificado na etapa add net.
Adicione uma interface de rede.
zonecfg:my-zone> add net |
(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 |
Defina o tipo de dispositivo físico para a interface de rede, o dispositivo hme neste procedimento.
zonecfg:my-zone:net> set physical=hme0 |
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 |
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.
Adicione um dispositivo.
zonecfg:my-zone> add device |
Defina a correspondência do dispositivo, /dev/sound/* neste procedimento.
zonecfg:my-zone:device> set match=/dev/sound/* |
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.
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.
Adicione um comentário usando o tipo de recurso attr.
zonecfg:my-zone> add attr |
Defina o nome como comment.
zonecfg:my-zone:attr> set name=comment |
Defina o tipo como string.
zonecfg:my-zone:attr> set type=string |
Defina o valor como um comentário que descreve a região.
zonecfg:my-zone:attr> set value="This is my work zone." |
Finalize a especificação do tipo de recurso attr.
zonecfg:my-zone:attr> end |
Verifique a configuração da região para a região.
zonecfg:my-zone> verify |
Comprometa a configuração da região para a região.
zonecfg:my-zone> commit |
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.
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" |
Consulte Instalação e inicialização de regiões para instalar a configuração da região comprometida.
Você pode usar este script para configurar e inicializar várias regiões no sistema. O script toma os seguintes parâmetros:
O número de regiões a serem criadas
O prefixo zonename
O diretório a ser usado como o diretório base
É necessário ser administrador global na região global para executar o script. O administrador global tem privilégios de superusuário na região 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" ]]; then echo "usage: $0 <#-of-zones> <zonename-prefix> <basedir>" exit 2 fi if [[ ! -d $3 ]]; then echo "$3 is not a directory" exit 1 fi 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 list > /dev/null 2>&1 if [ $? != 0 ]; then echo configuring $prefix$i F=$dir/$prefix$i.config rm -f $F echo "create" > $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 > /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 while [ $i -le $nzones ]; do echo setting up sysid for $prefix$i cfg=$dir/$prefix$i/root/etc/sysidcfg rm -f $cfg echo "network_interface=NONE {hostname=$prefix$i}" > $cfg echo "system_locale=C" >> $cfg echo "terminal=xterms" >> $cfg echo "security_policy=NONE" >> $cfg echo "name_service=NONE" >> $cfg echo "timezone=US/Pacific" >> $cfg echo "root_password=Qexr7Y/wzkSbc" >> $cfg # 'l1a' i=`expr $i + 1` 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 região global para executar este procedimento.
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 .
Exiba a configuração de uma região.
global# zonecfg -z zonename info |
Você também pode usar o comando zonecfg para fazer o seguinte:
Modificar um tipo de recurso na configuração de uma região
Limpar um valor de propriedade na configuração de uma região
Adicionar um dispositivo dedicado a uma região
Você pode selecionar um tipo de recurso e modificar a especificação para esse recurso.
Observe que o conteúdo de pacotes de software no diretório inherit-pkg-dir não pode ser modificado ou removido após a região ter sido instalada com zoneadm.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Selecione a região a ser modificada, my-zone neste procedimento.
global# zonecfg -z my-zone |
Selecione o tipo de recurso a ser alterado, por exemplo um controle de recurso.
zonecfg:my-zone> select rctl name=zone.cpu-shares |
Remova o valor atual.
zonecfg:my-zone:rctl> remove value (priv=privileged,limit=20,action=none) |
Adicione o novo valor.
zonecfg:my-zone:rctl> add value (priv=privileged,limit=10,action=none) |
Finalize a especificação rctl revisada.
zonecfg:my-zone:rctl> end |
Comprometa a configuração da região para a região.
zonecfg:my-zone> commit |
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.
Alterações comprometidas feitas através de zonecfg tem efeito na próxima vez que a região for inicializada.
Use este procedimento para redefinir a propriedade independente.
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 .
Selecione a região a ser modificada, my-zone neste procedimento.
global# zonecfg -z my-zone |
Limpe a propriedade a ser alterada, a associação de grupo existente neste procedimento.
zonecfg:my-zone> clear pool |
Comprometa a configuração da região para a região.
zonecfg:my-zone> commit |
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.
Alterações comprometidas feitas através de zonecfg tem efeito na próxima vez que a região for inicializada.
Use este procedimento para redefinir a propriedade independente que não tenha propriedades relacionadas a serem configuradas. Por exemplo, para remover a associação de grupo existente, você pode redefinir o recurso pool como null.
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 .
Selecione a região a ser modificada, my-zone neste procedimento.
global# zonecfg -z my-zone |
Redefina a propriedade a ser alterada, a associação de grupo existente neste procedimento.
zonecfg:my-zone> set pool="" |
Comprometa a configuração da região para a região.
zonecfg:my-zone> commit |
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.
Alterações comprometidas feitas através de zonecfg tem efeito na próxima vez que a região for inicializada.
Este procedimento pode ser usado para renomear regiões que estão no estado de configurado ou no estado de instalado.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Selecione a região a ser renomeada, my-zone neste procedimento.
global# zonecfg -z my-zone |
Altere o nome da região, por exemplo para newzone.
zonecfg:my-zone> set zonename=newzone |
Comprometa a alteração.
zonecfg:newzone> commit |
Saia do comando zonecfg.
zonecfg:newzone> exit |
Alterações comprometidas feitas através de zonecfg tem efeito na próxima vez que a região for inicializada.
A especificação abaixo coloca um dispositivo de escaneamento em uma configuração de região não global.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Adicione um dispositivo.
zonecfg:my-zone> add device |
Defina a correspondência do dispositivo, /dev/scsi/scanner/c3t4* neste procedimento.
zonecfg:my-zone:device> set match=/dev/scsi/scanner/c3t4* |
Finalize a especificação do dispositivo.
zonecfg:my-zone:device> end |
Saia do comando zonecfg.
zonecfg:my-zone> exit |
Este procedimento é usado para definir compartilhamentos persistentemente na região global.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Use o comando zonecfg.
# zonecfg -z global |
Defina cinco compartilhamentos para a região global.
zonecfg:global> set cpu-shares=5 |
Saia de zonecfg.
zonecfg:global> exit |
Use o comando zonecfg descrito em zonecfg(1M) para reverter a configuração de uma região ou excluir a configuração de uma região.
Ao configurar uma região com o utilitário zonecfg, use o subcomando revert para desfazer a configuração de recurso feita na configuração da região.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Ao configurar uma região chamada tmp-zone , digite info para visualizar a configuração:
zonecfg:tmp-zone> info |
O segmento do recurso net da configuração é exibido como a seguir:
. . . fs: dir: /tmp special: swap type: tmpfs net: address: 192.168.0.1 physical: eri0 device match: /dev/pts/* . . . |
Remova o endereço de net:
zonecfg:tmp-zone> remove net address=192.168.0.1 |
Verifique se a entrada net foi removida.
zonecfg:tmp-zone> info |
. . . fs: dir: /tmp special: swap type: tmpfs device match: /dev/pts/* . . . |
Digite revert.
zonecfg:tmp-zone> revert |
Responda Sim à seguinte pergunta:
Are you sure you want to revert (y/[n])? y |
Verifique se o endereço de net está presente novamente:
zonecfg:tmp-zone> info |
. . . fs: dir: /tmp special: swap type: tmpfs net: address: 192.168.0.1 physical: eri0 device match: /dev/pts/* . . . |
Use o comando zonecfg com o subcomando delete para excluir uma configuração de região do sistema.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Exclua a configuração de região para a região a-zone usando um dos dois métodos seguintes:
Use a opção -F para forçar a ação:
global# zonecfg -z a-zone delete -F |
Exclua a região interativamente respondendo Sim para o prompt do sistema:
global# zonecfg -z a-zone delete Are you sure you want to delete zone a-zone (y/[n])? y |
Este capítulo trata da instalação de região no sistema do Solaris. Descreve também os dois processos que gerenciam a plataforma virtual e o ambiente de aplicativo, zoneadmd e zsched. Também são fornecidas informações sobre parada, reinicialização, clonagem e desinstalação de regiões.
Os tópicos a seguir são tratados neste capítulo:
Para clonar uma região não global, instalar e inicializar uma região não global ou parar ou desinstalar uma região não global, consulte o Capítulo 20Instalação, inicialização, parada, desinstalação e clonagem de regiões não globais (tarefas).
Para obter informações sobre instalação de regiões com marca lx, consulte o Capítulo 34Sobre instalação, inicialização, parada, clonagem e desinstalação de regiões com marca lx (visão geral) e o Capítulo 35Instalação, inicialização, parada, desinstalação e clonagem de regiões com marca lx (tarefas).
Solaris 10 11/06: A capacidade para clonar uma região não global está agora disponível. Consulte Solaris 10 11/06: clonagem de uma região não global no mesmo sistema.
Solaris 10 8/07: Informações sobre argumentos de inicialização também foram adicionadas. Consulte Solaris 10 8/07: argumentos de inicialização de região.
Solaris 10 5/09: O clone do ZFS foi implementado. Quando a fonte zonepath e o destino zonepath residirem no ZFS e estiverem no mesmo grupo, o comando zoneadm clone usará automaticamente o ZFS para clonar a região. Se ambos os zonepaths não forem ZFS, ou se um for ZFS e o outro não for ZFS, o código usará a técnica da cópia existente.
O comando zoneadm descrito na página do manual zoneadm(1M) é a ferramenta principal usada para instalar e administrar regiões não globais. As operações que usam o comando zoneadm devem ser executadas a partir de região global. As tarefas a seguir podem ser executadas usando-se o comando zoneadm:
Verificar uma região
Instalar uma região
Inicializar uma região, que é semelhante a inicializar um sistema regular do Solaris
Exibir informações sobre uma região em execução
Parar uma região
Reinicializar uma região
Desinstalar uma região
Realocar uma região de um ponto em um sistema para outro ponto no mesmo sistema
Fornecer uma nova região baseada na configuração de uma região existente no mesmo sistema
Migrar uma região, usada com o comando zonecfg
Para os procedimentos de instalação e verificação da região, consulte o Capítulo 20Instalação, inicialização, parada, desinstalação e clonagem de regiões não globais (tarefas) e a página do manual zoneadm(1M). Consulte também a página do manual zoneadm(1M) para as opções com suporte para o comando zoneadm list . Para procedimentos de configuração de região, consulte o Capítulo 18Planejamento e configuração de regiões não globais (tarefas) e a página do manual zonecfg(1M). Os estados de regiões são descritos em Modelo de estado da região global.
Se você planejar produzir registros de auditoria do Solaris para regiões, leia Uso da auditoria do Solaris em regiões antes de instalar regiões não globais.
Esta seção se aplica à construção inicial de região, e não à clonagem de regiões existentes.
Após configurar uma região não global, verifique se a região pode ser instalada com segurança na configuração do sistema. A seguir poderá instalar a região. Os arquivos necessários para o sistema de arquivos raiz da região são instalados pelo sistema no caminho raiz da região.
Uma região não global é instalada com configuração de rede aberta(generic_open.xml). Tipos de configuração de rede são descritos no Capítulo 19, Managing Services (Tasks), no System Administration Guide: Basic Administration . O administrador de região pode alternar a região para a configuração de rede limitada (generic_limited_net.xml) usando o comando netservices. Serviços específicos podem ser ativados ou desativados usando-se os comandos SMF.
Uma região instalada com êxito está pronta para o login inicial e a inicialização.
O método usado para inicialmente instalar pacotes em uma instalação do Solaris é também o método usado para preencher uma região não global.
A região global deve conter todos os dados necessários para preencher uma região não global. O preenchimento de uma região inclui criar diretórios, copiar arquivos e fornecer informações de configuração.
Somente as informações ou dados que foram criados na região não global a partir de pacotes são usados para preencher a região a partir da região global. Para obter mais informações, consulte as páginas do manual pkgparam(1) e pkginfo(4).
Dados do que se segue não são referenciados nem copiados quando uma região é instalada:
Pacotes não instalados
Correções
Dados em CDs e DVDs
Imagens de instalação de rede
Qualquer protótipo ou outra instância de uma região
Além disso, os seguintes tipos de informação, se presentes na região global, não são copiados para uma região que está sendo instalada:
Usuários novos ou alterados no arquivo /etc/passwd
Grupos novos ou alterados no arquivo /etc/group
Configurações para serviços de rede como atribuição de endereço DHCP, UUCP, ou envio de correio
Configurações para serviços de rede como serviços de identificação
Novos ou alterados crontab, impressora ou arquivos de correio
Log de sistema, mensagem e arquivos de contabilidade
Se a auditoria do Solaris for usada, modificações nos arquivos de auditoria copiados da região global poderão ser necessárias. Para obter mais informações, consulte Uso da auditoria do Solaris em regiões.
Os seguintes recursos não podem ser configurados em uma região não global:
Ambientes de inicialização do Solaris Live Upgrade
Metadispositivos do gerenciador de volume do Solaris
Atribuição de endereço DHCP em uma região IP compartilhada
Servidor proxy SSL
Os recursos especificados no arquivo de configuração são adicionados quando a região faz a transição de instalado para preparado. Um ID de região exclusivo é atribuído pelo sistema. Sistemas de arquivos são montados, interfaces de rede são definidas e dispositivos são configurados. A transição para o estado preparado prepara a plataforma virtual para começar a executar os processos de usuário. No estado preparado, os processos zsched e zoneadmd são iniciados para gerenciar a plataforma virtual.
zsched, um processo de agendamento de sistema semelhante ao sched, é usado para acompanhar recursos do kernel associados à região.
zoneadmd é o daemon da administração de regiões.
Uma região no estado preparado não tem quaisquer processos de usuário em execução. A principal diferença entre uma região em preparado e uma região em execução é que pelo menos um processo está em andamento em uma região em execução. Para obter mais informações, consulte a página do manual init(1M).
O daemon de administração de regiões, zoneadmd, é o processo primário para gerenciar a plataforma virtual da região. O daemon é também responsável pelo gerenciamento da inicialização e do encerramento da região. Há um processo zoneadmd em execução para da região ativa (pronta, em execução ou encerramento) no sistema.
O daemon zoneadmd define as regiões como especificado na configuração da região. Este processo inclui as seguintes ações:
Alocação do ID da região e início do processo do sistema zsched.
Definição de controles de recursos de região geral.
Preparação de dispositivos da região como especificado na configuração da região. Para obter mais informações, consulte a página do manual devfsadmd(1M).
Configuração de interfaces de rede virtual.
Montagem de auto-retorno e sistemas de arquivos convencionais.
Instanciamento e inicialização do dispositivo do console da região.
A menos que o daemon zoneadmd já esteja sendo executado, é iniciado automaticamente por zoneadm. Assim, se o daemon não estiver em execução por qualquer motivo, qualquer chamada de zoneadm para administrar a região irá reiniciar zoneadmd.
A página do manual para o daemon zoneadmd é zoneadmd(1M).
Uma região ativa é uma região que está no estado preparado, no estado em execução ou no estado de encerramento. Cada região ativa tem um processo de kernel associado, zsched. Os segmentos do kernel que trabalham pela região pertencem a zsched. O processo zsched permite que o subsistema das regiões mantenha o registro dos segmentos do kernel por região.
O comando zoneadm é usado para criar o ambiente de aplicativo da região.
Antes de uma região não global ser inicializada pela primeira vez, a configuração interna da região deve ser criada. A configuração interna especifica um serviço de identificação a ser usado, o local padrão e o fuso horário, a senha raiz da região e outros aspectos do ambiente do aplicativo. O ambiente do aplicativo é estabelecido pelas respostas a uma série de prompts que aparecem no console da região, como explicado em Configuração de região interna. Observe que o local padrão e o fuso horário para uma região podem ser configurados independentemente das configurações globais.
Esta seção fornece uma visão geral dos procedimentos para parar, reinicializar, desinstalar e clonar regiões. Também são fornecidas dicas para solução de problemas para regiões que não param quando solicitadas.
O comando zoneadm halt é usado para remover o ambiente do aplicativo e a plataforma virtual de uma região. A região é em seguida retornada ao estado de instalado. Todos os processos são eliminados, dispositivos são desconfigurados, interfaces de rede são destruídas, sistemas de arquivos são desmontados e as estruturas de dados do kernel são destruídas.
O comando halt não executa quaisquer scripts de desligamento dentro da região. Para desligar uma região, consulte Como usar zlogin para desligar uma região.
Se a operação de parada falhar, consulte A região não pára.
O comando zoneadm reboot é usado para reinicializar uma região. A região é parada e a seguir inicializada novamente. O ID da região será alterado quando a região for reinicializada.
Regiões oferecem suporte aos seguintes argumentos de inicialização usados com os comandos zoneadm boot e reboot:
-i altinit
-m smf_options
-s
As seguintes definições se aplicam:
Seleciona um executável alternativo para ser o primeiro processo. altinit deve ser um caminho válido para um executável. O primeiro processo padrão é descrito em init(1M).
Controla o comportamento de inicialização de SMF. Há duas categorias de opções, opções de recuperação e opções de mensagens. Opções de mensagens determinam o tipo e a quantidade de mensagens que são exibidas durante a inicialização. Opções de serviço determinam os serviços que são usados para inicializar o sistema.
Opções de recuperação incluem o seguinte:
Imprime saída por serviço padrão e todas as mensagens svc.startd para log.
Inicialização para o subgráfico definido pela etapa dada. Etapas legítimas são none, single-user, multi-user, multi-user-server e all.
Opções de mensagem incluem o seguinte:
Imprime saída por serviço padrão e mensagens de erro que requerem intervenção administrativa
Imprime saída por serviço padrão e mensagens que fornecem mais informações.
Inicializa somente na etapa svc:/milestone/single-user:default . Esta etapa é equivalente ao nível init level s.
Para exemplos de uso, consulte Como inicializar uma região e Como inicializar uma região no modo de usuário único.
Para obter informações sobre a facilidade de gerenciamento de serviço (SMF) do Solaris e init , consulte o Capítulo 18, Managing Services (Overview), no System Administration Guide: Basic Administration , svc.startd(1M) e init(1M).
Se você definir a propriedade de recurso autoboot em uma configuração de região como true, essa região será inicializada automaticamente quando a região global for inicializada. A definição padrão é false.
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 comando zoneadm uninstall é usado para desinstalar todos os arquivos no sistema de arquivos raiz da região. Antes de prosseguir, o comando solicitará a você que confirme a ação, a menos que a opção (forçar) -F também esteja sendo usada. Use o comando uninstall com cuidado, porque a ação é irreversível.
A clonagem permite que você copie uma região existente configurada e instalada no sistema para fornecer rapidamente uma nova região no mesmo sistema. Observe que no mínimo você deve redefinir propriedades e recursos para os componentes que não podem ser idênticos para diferentes regiões. Assim, zonepath deve ser sempre alterado. Além disso, para uma região com IP compartilhado, os endereços IP em quaisquer recursos de rede devem ser diferentes. Para uma região com IP exclusivo, a propriedade física de quaisquer recursos de rede devem ser diferentes.
A clonagem de uma região é a maneira mais rápida de instalar uma região.
A nova região incluirá quaisquer alterações que foram feitas para personalizar a região de origem, como pacotes adicionados ou modificações de arquivo.
Solaris 10 5/09: Quando o zonepath de origem e o zonepath de destino residirem no ZFS e estiverem no mesmo grupo, o comando zoneadm clone usará automaticamente o ZFS para clonar a região. Ao usar o clone do ZFS, os dados não são realmente copiados até que ele seja modificado. Conseqüentemente, o primeiro clone é realizado em muito pouco tempo. O comando zoneadm realiza um instantâneo do ZFS do zonepath de origem e configura o zonepath de destino. O sistema denomina o instantâneo de SUNWzoneX, no qual X é um ID exclusivo usado para diferenciar os vários instantâneos. O zonepath da região de destino é usado para nomear o clone do ZFS. É feita uma relação de softwares para que um instantâneo usado futuramente possa ser validado pelo sistema. Para clonar uma região de origem várias vezes, o comando zonead permite especificar que um instantâneo existente deve ser usado. O sistema valida que o instantâneo existente pode ser usado no destino.
Não é possível utilizar instantâneos manuais, como o tipo descrito em Criando e destruindo instantâneos do ZFS no Guia de administração do ZFS Oracle Solaris. Este tipo de instantâneo carece de dados para realizar uma validação.
Você pode querer clonar uma região de origem várias vezes, mas pode não querer ter um novo instantâneo para cada clone. O parâmetro -s do subcomando clone permitir especificar que seja usado um instantâneo existente realizado de um clone anterior. Consulte Solaris 10 5/09: Como clonar uma região de um instantâneo existente.
Devido ao fato de o conteúdo de um instantâneo representar uma região de um ponto no passado, é possível que o sistema tenha sido atualizado de alguma forma, como com correção ou atualização, desde o memento em que o instantâneo foi realizado. O fato de que a região tenha sido atualizada poderia tornar o instantâneo inválido para ser usado como uma região no sistema atual.
Você pode especificar que um zonepath do ZFS seja copiado em vez do ZFS mesmo que a origem pudesse ser dessa forma.
Para obter mais informações, consulte Solaris 10 11/06: clonagem de uma região não global no mesmo sistema.
Este capítulo descreve como instalar e inicializar uma região não global. É também fornecido um método para uso da clonagem para instalar uma região no mesmo sistema. Também são tratadas outras tarefas associadas à instalação, como parada, reinicialização e desinstalação de regiões. É também fornecido o procedimento para excluir uma região completamente de um sistema.
Para obter informações gerais sobre instalação de região e operações relacionadas, consulte o Capítulo 19Sobre instalação, parada, clonagem e desinstalação de regiões não globais (visão geral).
Para obter informações sobre instalação de regiões com marca lx, consulte o Capítulo 34Sobre instalação, inicialização, parada, clonagem e desinstalação de regiões com marca lx (visão geral) e o Capítulo 35Instalação, inicialização, parada, desinstalação e clonagem de regiões com marca lx (tarefas).
Tarefa |
Descrição |
Para instruções |
---|---|---|
(Opcional) Verifique uma região configurada antes de instalar a região. |
Assegure-se de que uma região satisfaz os requisitos para a instalação. Se ignorar este procedimento, a verificação será executada automaticamente quando você instalar a região. |
(Opcional) Como verificar uma região configurada antes da instalação |
Instale uma região configurada. |
Instale uma região que esteja no estado de configurada. | |
Solaris 8/07: Obtenha o identificador exclusivo universalmente (UUID) para a região. |
Este identificador separado, atribuído quando a região está instalada, é uma forma alternativa de identificar uma região. |
Solaris 10 8/07: como obter o UUID de uma região global instalada |
(Opcional) Faça a transição de uma região instalada para o estado de preparada. |
Você pode ignorar este procedimento, se desejar inicializar a região e usá-la imediatamente. |
(Opcional) Como fazer a transição da região instalada para o estado de preparada |
Inicialize uma região. |
A inicialização de uma região coloca essa região no estado de execução. Uma região pode ser inicializada a partir do estado de preparada ou do estado de instalada. Observe que é necessário executar a configuração de região internada quando você efetuar login na região após inicializá-la pela primeira vez. |
Como inicializar uma região, Configuração de região interna, Execução da configuração de região interna inicial |
Inicialize uma região no modo de usuário único. |
Inicializa somente na etapa svc:/milestone/single-user:default. Esta etapa é equivalente ao nível init s. Consulte as páginas do manual init(1M) e svc.startd(1M). |
Use o comando zoneadm descrito na página do manual zoneadm(1M) para executar tarefas de instalação para uma região não global. Você deve ser o administrador global para executar a instalação da região. Os exemplos neste capítulo usam o nome da região e o caminho da região estabelecido em Configuração, verificação e comprometimento de uma região.
Você pode verificar uma região antes de instalá-la. Se ignorar este procedimento, a verificação será executada automaticamente quando você instalar a região.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Verifique uma região configurada nomeada my-zone usando a opção -z com o nome da região e o subcomando verify.
global# zoneadm -z my-zone verify |
Esta mensagem referente à verificação do caminho da região será exibida:
Warning: /export/home/my-zone does not exist, so it cannot be verified. When 'zoneadm install' is run, 'install' will try to create /export/home1/my-zone, and 'verify' will be tried again, but the 'verify' may fail if: the parent directory of /export/home/my-zone is group- or other-writable or /export/home1/my-zone overlaps with any other installed zones. |
No entanto, se uma mensagem de erro for exibida e houver falha na verificação da região, faça as correções especificadas na mensagem e tente o comando novamente.
Se nenhuma mensagem for exibida, você poderá instalar a região.
É necessário ser o administrador global na região global para executar este procedimento.
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 .
Instale a região configurada my-zone usando o comando zoneadm com a opção -z install.
global# zoneadm -z my-zone install |
Você verá várias mensagens enquanto os arquivos e os diretórios necessários para o sistema de arquivos raiz da região são instalados no caminho raiz da região.
(Opcional) Se uma mensagem de erro for exibida e houver falha na instalação da região, digite o que se segue para obter o estado da região:
global# zoneadm -z my-zone list -v |
Se o estado estiver listado como configurada, faça as correções especificadas na mensagem e tente o comando zoneadm install novamente.
Se o estado estiver listado como incompleta, primeiro execute este comando:
global# zoneadm -z my-zone uninstall |
Em seguida faça as correções especificadas na mensagem e tente o comando zoneadm install novamente.
Quando a instalação estiver concluída, use o subcomando list com as opções -i e -v para listar as regiões instaladas e verificar o status.
global# zoneadm list -iv |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared - my-zone installed /export/home/my-zone native shared |
Se a instalação de uma região falhar ou for interrompida, a região ficará no estado de incompleta. Use uninstall -F para redefinir a região como estado de configurada.
Esta região foi instalada com a configuração de rede aberta descrita no Capítulo 19, Managing Services (Tasks), no System Administration Guide: Basic Administration por padrão. Você pode alternar para a configuração de rede aberta, ou ativar ou desativar serviços individuais, quando efetua login na região. Para obter detalhes, consulte Alternação da região não global para uma configuração de serviço de rede diferente.
Um identificador exclusivo universalmente (UUID) é atribuído a uma região quando ela é instalada. O UUID pode ser obtido usando-se zoneadm com o subcomando list e a opção -p. O UUID é o quinto campo da exibição.
Visualize os UUIDs para regiões que foram instaladas.
global# zoneadm list -p |
Você verá uma exibição semelhante a esta:
0:global:running:/: 6:my-zone:running:/export/home/my-zone:61901255-35cf-40d6-d501-f37dc84eb504 |
global# zoneadm -z my-zone -u 61901255-35cf-40d6-d501-f37dc84eb504 list -v |
Se -u uuid-match e - z zonename estiverem presentes, a correspondência será feita com base no primeiro UUID. Se uma região com o UUID especificado for encontrada, essa região será usada e o parâmetro -z será ignorado. Se nenhuma região com o UUID especificado for encontrada, o sistema procurará pelo nome da região.
Regiões podem ser desinstaladas e reinstaladas com o mesmo nome com diferentes conteúdos. Regiões podem também ser renomeadas sem alteração do conteúdo. Por estas razões, o UUID é um manipulador mais confiável do que o nome da região.
Para mais informações, consulte zoneadm(1M) e libuuid(3LIB).
Se alterações administrativas no sistema tornaram uma região inutilizável ou inconsistente, é possível alterar o estado de uma região instalada para incompleta.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Marque a região testzone incompleta.
global# zoneadm -z testzone mark incomplete |
Use o subcomando list com as opções -i e - v para verificar o status.
global# zoneadm list -iv |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared - my-zone installed /export/home/my-zone native shared - testzone incomplete /export/home/testzone native shared |
A opção -R root pode ser usada com os subcomandos mark e list de zoneadm para especificar um, ambiente de inicialização alternativo. Para obter mais informações, consulte zoneadm(1M).
A marcação de uma região incompleta é irreversível. A única ação que pode ser tomada em uma região marcada como incompleta é desinstalar a região e retorná-la ao estado de configurada. Consulte Como desinstalar uma região.
A transição para o estado de preparada prepara a plataforma virtual para iniciar a execução de processos de usuário. Regiões no estado de preparada não têm quaisquer processos de usuário em execução.
Você pode ignorar este procedimento, se desejar inicializar a região e usá-la imediatamente. A transição para o estado de preparada é executada automaticamente quando você inicializa a região.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Use o comando zoneadm com a opção -z, o nome da região, que é my-zone , e o subcomando ready para fazer a transição da região para o estado de preparada.
global# zoneadm -z my-zone ready |
No prompt, use o comando zoneadm list com a opção -v para verificar o status.
global# zoneadm list -v |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared 1 my-zone ready /export/home/my-zone native shared |
Observe que o ID exclusivo da região 1 foi atribuído pelo sistema.
A inicialização de uma região coloca a região no estado de execução. Uma região pode ser inicializada a partir do estado de preparada ou do estado de instalada. Uma região no estado de instalada que é inicializada transparentemente faz a transição do estado de preparada para o estado de execução. O login na região é permitido para regiões no estado de execução.
Observe que é necessário executar a configuração de região internada quando você efetuar login na região após inicializá-la pela primeira vez. Isto é descrito em Configuração de região interna.
Se você planeja usar um arquivo /etc/sysidcfg para executar configuração de região inicial, como descrito em Como usar um arquivo /etc/sysidcfg para executar a configuração de região inicial, crie o arquivo sysidcfg e coloque-o no diretório /etc da região antes de inicializar a região.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Use o comando zoneadm com a opção - z, o nome da região, que é my-zone, e o subcomando boot para iniciar a região.
global# zoneadm -z my-zone boot |
Quando a inicialização estiver concluída, use o subcomando list com a opção -v para verificar o status.
global# zoneadm list -v |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared 1 my-zone running /export/home/my-zone native shared |
Inicialize uma região usando a opção -m verbose:
global# zoneadm -z my-zone boot -- -m verbose |
Reinicialize uma região usando a opção de inicialização -m verbose:
global# zoneadm -z my-zone reboot -- -m verbose |
Reinicialize como administrador de região a região my-zone, usando a opção -m verbose:
my-zone# reboot -- -m verbose |
Se for exibida uma mensagem indicando que o sistema não pôde encontrar a máscara de rede a ser usada para o endereço IP especificado na configuração da região, consulte Aviso de netmasks exibido na inicialização da região. Observe que a mensagem é somente um aviso e o comando teve êxito.
É necessário ser o administrador global na zona global para executar este procedimento.
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 .
Inicialize a região no modo de usuário único.
global# zoneadm -z my-zone boot -s |
Para efetuar login na região e executar a configuração interna inicial, consulte o Capítulo 21Login na região não global (visão geral) e o Capítulo 22Login em regiões não globais (tarefas).
Tarefa |
Descrição |
Para instruções |
---|---|---|
Parar uma região. |
O procedimento de parada é usado para remover o ambiente do aplicativo e a plataforma virtual para a região. O procedimento retorna uma região no estado de preparada para o estado de instalada. Para desligar corretamente uma região, consulte Como usar zlogin para desligar uma região. | |
Reinicializar uma região. |
O procedimento de reinicialização pára a região e em seguida a inicializa novamente. | |
Desinstalar uma região. |
Remove todos os arquivos no sistema de arquivos raiz da região. Use este procedimento com cuidado. A ação é irreversível. | |
Fornece uma nova região não global baseada na configuração de uma região existente no mesmo sistema. |
A clonagem de uma região é um método alternativo mais rápido de instalar uma região. Ainda será necessário configurar a nova região antes de você poder instalá-la. |
Consulte Solaris 10 11/06: clonagem de uma região não global no mesmo sistema |
Excluir uma região não global do sistema. |
Este procedimento remove completamente uma região de um sistema. |
O procedimento de parada é usado para remover o ambiente do aplicativo e a plataforma virtual de uma região. Para desligar corretamente uma região, consulte Como usar zlogin para desligar uma região.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Liste as regiões que estão em execução no sistema.
global# zoneadm list -v |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared 1 my-zone running /export/home/my-zone native shared |
Use o comando zoneadm com a opção - z, o nome da região, por exemplo my-zone, e o subcomando halt para parar uma determinada região.
global# zoneadm -z my-zone halt |
Liste as regiões no sistema novamente para verificar se my-zone foi parado.
global# zoneadm list -iv |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared - my-zone installed /export/home/my-zone native shared |
Inicialize a região, se desejar reiniciá-la.
global# zoneadm -z my-zone boot |
Se a operação de parada falhar, consulte A região não pára para obter dicas para solução de problemas.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Liste as regiões que estão em execução no sistema.
global# zoneadm list -v |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared 1 my-zone running /export/home/my-zone native shared |
Use o comando zoneadm com a opção - z reboot para reinicializar a região my-zone.
global# zoneadm -z my-zone reboot |
Liste as regiões no sistema novamente para verificar se my-zone foi reinicializado.
global# zoneadm list -v |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared 2 my-zone running /export/home/my-zone native shared |
Observe que o ID da região para my-zone foi alterado. O ID da região geralmente se altera após uma reinicialização.
Use este procedimento com cuidado. A ação de remover todos os arquivos no sistema de arquivos raiz da região é irreversível.
A região não pode estar no estado de execução. A operação uninstall é inválida para regiões em execução.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Liste as regiões no sistema.
global# zoneadm list -v |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared - my-zone installed /export/home/my-zone native shared |
Use o comando zoneadm com a opção - z uninstall para remover my-zone da região.
Você pode também usar a opção -F para forçar a ação. Se esta opção não for especificada, o sistema solicitará confirmação.
global# zoneadm -z my-zone uninstall -F |
Liste as regiões no sistema novamente para verificar se my-zone não está mais listado.
global# zoneadm list -v |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared |
Se a desinstalação de uma região for interrompida, a região ficará no estado de incompleta. Use o comando zoneadm uninstall para redefinir a região como estado de configurada.
Use o comando uninstall com cuidado, porque a ação é irreversível.
A clonagem é usada para fornecer uma nova região a um sistema copiando os dados de um zonepath de origem a um zonepath de destino.
A partir do Solaris 10 5/09, quando o zonepath de origem e o zonepath de destino residirem no ZFS e estiverem no mesmo grupo, o comando zoneadm clone usará automaticamente o ZFS para clonar a região. No entanto, você pode especificar que o zonepath ZFS seja copiado e não clonado ZFS.
É necessário configurar a nova região antes de você poder instalá-la. O parâmetro passado para o subcomando zoneadm create é o nome da região a ser clonada. Esta região de origem deve ser parada.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Pare a região de origem a ser clonada, que é my-zone neste procedimento.
global# zoneadm -z my-zone halt |
Inicie a configuração da nova região exportando a configuração da região de origem my-zone para um arquivo, por exemplo, master .
global# zonecfg -z my-zone export -f /export/zones/master |
Você pode também criar a nova região de configuração usando o procedimento Como configurar a região, em vez de modificar uma configuração existente. Se você usar este método, passe para a Etapa 6 após criar a região.
Edite o arquivo master. Defina propriedades e recursos diferentes para os componentes que não podem ser idênticos para regiões diferentes. Por exemplo, você deve definir um novo zonepath. Para uma região com IP compartilhado, os endereços IP em quaisquer recursos de rede devem ser alterados. Para uma região com IP exclusivo, a propriedade física de quaisquer recursos de rede deve ser alterada.
Crie a nova região, zone1, usando os comandos no arquivo master.
global# zonecfg -z zone1 -f /export/zones/master |
Instale a nova região, zone1, clonando my-zone.
global# zoneadm -z zone1 clone my-zone |
O sistema exibe:
Cloning zonepath /export/home/my-zone... |
A partir do Solaris 10 5/09, se o zonepath de origem estiver em um grupo ZFS, por exemplo, zeepool, o sistema exibirá:
Cloning snapshot zeepool/zones/my-zone@SUNWzone1 Instead of copying, a ZFS clone has been created for this zone. |
Liste as regiões no sistema.
ID NAME STATUS PATH BRAND IP 0 global running / native shared - my-zone installed /export/home/my-zone native shared - zone1 installed /export/home/zone1 native shared |
Quando o comando zoneadm clona um zonepath de origem que está em seu próprio sistema de arquivos ZFS, as seguintes ações são executadas:
O comando zoneadm toma um inventário de software.
O comando zoneadm toma um instantâneo ZFS e o nomeia SUNWzoneX, por exemplo, SUNWzone1.
O comando zoneadm usa clone ZFS para clonar o instantâneo.
Você pode clonar uma região de origem várias vezes a partir de um instantâneo existente que foi originalmente tomado quando uma região foi clonada.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Configure a região zone2.
Especifique que um instantâneo existente seja usado para criar new-zone2 .
global# zoneadm -z zone2 clone -s zeepool/zones/my-zone@SUNWzone1 my-zone |
O sistema exibe:
Cloning snapshot zeepool/zones/my-zone@SUNWzone1 |
O comando zoneadm valida o software a partir do instantâneo SUNWzone1 e clona o instantâneo.
Liste as regiões no sistema.
ID NAME STATUS PATH BRAND IP 0 global running / native shared - my-zone installed /zeepool/zones/my-zone native shared - zone1 installed /zeepool/zones/zone1 native shared - zone2 installed /zeepool/zones/zone2 native shared |
Use este procedimento para impedir a clonagem automática de uma região em um sistema de arquivos ZFS especificando que zonepath seja copiado.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Especifique que zonepath em ZFS seja copiado, e não clonado ZFS.
global# zoneadm -z zone1 clone -m copy my-zone |
O procedimento descrito nesta seção exclui completamente uma região de um sistema.
Desligue a região my-zone.
global# zlogin my-zone shutdown -y -g0 -i0 |
Remova o sistema de arquivos raiz para my-zone.
global# zoneadm -z my-zone uninstall -F |
Exclua a configuração para my-zone.
global# zonecfg -z my-zone delete -F |
Liste as regiões no sistema novamente para verificar se my-zone não está mais listado.
global# zoneadm list -iv |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared |
Este capítulo trata de login em regiões da região global.
Os tópicos a seguir são tratados neste capítulo:
Para procedimentos e informações uso, consulte o Capítulo 22Login em regiões não globais (tarefas).
Após instalar uma região, é necessário efetuar login na região para concluir o ambiente do aplicativo. Você pode ainda efetuar login na região para executar tarefas administrativas. A menos que a opção -C seja usada para conectar com o console da região, o login em uma região usando-se zlogin inicia uma nova tarefa. Uma tarefa não pode abarcar duas regiões.
O comando zlogin é usado para efetuar o login da região global para qualquer região que esteja no estado de execução ou no estado de preparada.
Somente o comando zlogin com a opção -C pode ser usado para efetuar login em uma região que não esteja no estado de execução.
Como descrito em Como usar o modo não interativo para acessar uma região, você pode usar o comando zlogin no modo não interativo fornecendo um comando para ser executado no interior da região. No entanto, o comando ou quaisquer arquivos sobre os quais o comando atua não podem residir em NFS. O comando falhará se qualquer um dos arquivos abertos ou qualquer parte do espaço de endereço residirem em NFS. O espaço de endereço inclui o próprio executável do comando e as bibliotecas vinculadas do comando.
O comando zlogin pode ser usado somente pelo administrador global que opera na região global. Para obter mais informações, consulte a página do manual zlogin(1).
Após a instalação, a região está em um estado de não configurada. A região não tem uma configuração interna para serviços de identificação, o local e o fuso horário não foram definidos e várias outras tarefas de configuração não foram executadas. Portanto, os programas sysidtool são executados na primeira vez que o login do console da região é usado. Para obter mais informações, consulte a página do manual sysidtool(1M).
Dois métodos estão disponíveis para executar a configuração necessária:
Login no console da região, que inicia uma série de perguntas do sistema. Prepare-se para responder ao seguinte:
Idioma
Tipo de terminal em uso
Nome do host
Política de segurança (Kerberos ou UNIX padrão)
Tipo de serviço de identificação (None é uma resposta válida)
Domínio do serviço de identificação
Servidor de nome
Fuso horário padrão
Senha raiz
O procedimento é descrito em Execução da configuração de região interna inicial.
O arquivo /etc/sysidcfg, que você pode criar e colocar no interior da região antes de inicializar a região pela primeira vez. Para obter mais informações, consulte a página do manual sysidcfg(4).
Esta seção descreve os métodos que você pode usar para efetuar login em uma região.
Cada região mantém um console virtual, /dev/console . Ações executadas no console são conhecidas como modo de console. O console da região é estreitamente análogo a um console serial em um sistema. Conexões ao console persistem entre reinicializações de regiões. Para entender como o modo de console difere de uma sessão de login como telnet, consulte Login remoto.
O console da região é acessado usando-se o comando zlogin com a opção -C e zonename. Não é necessário que a região esteja no estado de execução.
Processos no interior da região podem abrir e gravar mensagens para o console. Se existir o processo zlogin -C, outro processo poderá acessar o console.
Para efetuar login em uma região com um nome de usuário, use o comando zlogin com a opção -l, o nome de usuário e zonename. Por exemplo, o administrador da região global pode efetuar login como um usuário normal na região não global especificando a opção -l para zlogin :
global# zlogin -l user zonename |
Para efetuar login como usuário root, use o comando zlogin sem opções.
Se ocorrer um problema de login e você não puder usar o comando zlogin ou o comando zlogin com a opção -C para acessar a região, uma alternativa será oferecida. Você pode entrar em uma região usando o comando zlogin com a opção (segura) -S. Somente use este modo para recuperar uma região danificada quando outras formas de login não forem bem-sucedidas. Neste ambiente mínimo, talvez seja possível diagnosticar o motivo por que o login na região falha.
A capacidade de efetuar login remotamente em uma região depende da seleção de serviços de rede que você estabelece. Por padrão, logons através de rlogin, ssh e telnet funcionam normalmente. Para obter mais informações sobre estes comandos, consulte rlogin(1), ssh(1), e telnet(1).
Outros dois métodos para acessar a região e para executar comandos no interior da região também são fornecidos pelo comando zlogin. Estes métodos são o modo interativo e o modo não interativo.
No modo interativo, um novo pseudoterminal é alocado para uso no interior da região. Ao contrário do modo de console, em que acesso exclusivo ao dispositivo do console é concedido, um número arbitrário de sessões de zlogin pode ser aberto a qualquer momento no modo interativo. O modo interativo é ativado quando você não inclui um comando a ser emitido. Programas que requerem um dispositivo de terminal, como um editor, operam corretamente neste modo.
O modo não interativo é usado para executar scripts de shell que administram a região. O modo não interativo não aloca um novo pseudoterminal. O modo não interativo é ativado quando você fornece um comando a ser executado no interior da região.
Este capítulo fornece procedimentos para concluir a configuração de uma região instalada, efetuar login em uma região da região global e desligar uma região. Este capítulo também mostra como usar o comando zonename para imprimir o nome da região atual
Para uma introdução ao processo de login em região, consulte o Capítulo 21Login na região não global (visão geral).
Tarefa |
Descrição |
Para instruções |
---|---|---|
Executar a configuração interna. |
Efetue login no console da região ou use um arquivo /etc/sysidcfg para executar a configuração de região inicial. | |
Efetue login na região. |
Você pode efetuar login em uma região através do console usando o modo interativo para alocar um pseudoterminal ou fornecendo um comando a ser executado na região. O fornecimento de um comando a ser executado não aloca um pseudoterminal. Você pode também efetuar login usando o modo com a proteção a falhas quando uma conexão com a região é negada. | |
Sair de uma região não global. |
Desconecte-se de uma região não global. | |
Desligar uma região. |
Desligue uma região usando o utilitário shutdown ou um script. | |
Imprimir o nome da região. |
Imprima o nome de região da região atual. |
Você deve configurar a região usando um dos seguintes métodos:
Efetue login na região e configure-a como descrito em Configuração de região interna.
Configure a região usando um arquivo /etc/sysidcfg como descrito em Como usar um arquivo /etc/sysidcfg para executar a configuração de região inicial.
Após ter executado a configuração interna, é recomendável fazer uma cópia da configuração da região não global. Você pode usar esse backup para restaurar a região no futuro. Como superusuário ou administrador principal, imprima a configuração da zona my-zone em um arquivo. Este exemplo usa um arquivo nomeado my-zone.config.
global# zonecfg -z my-zone export > my-zone.config |
Para obter mais informações, consulte Como restaurar uma região não global individual.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Use o comando zlogin com a opção -C e o nome da região, my-zone neste procedimento.
global# zlogin -C my-zone |
A partir de outra janela de terminal, inicialize a região.
global# zoneadm -z my-zone boot |
Você verá uma exibição semelhante à seguinte na janela zlogin :
[NOTICE: Zone booting up] |
Na primeira vez que efetuar login no console, você será solicitado a responder a uma série de perguntas. A tela terá uma aparência semelhante a esta:
SunOS Release 5.10 Version Generic 64-bit Copyright 1983-2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Hostname: my-zone Loading smf(5) service descriptions: Select a Language 1. English 2. es 2. fr Please make a choice (0 - 1), or press h or ? for help: Select a Locale 1. English (C - 7-bit ASCII) 2. Canada (English) (UTF-8) 4. U.S.A. (UTF-8) 5. U.S.A. (en_US.ISO8859-1) 6. U.S.A. (en_US.ISO8859-15) 7. Go Back to Previous Screen Please make a choice (0 - 9), or press h or ? for help: What type of terminal are you using? 1) ANSI Standard CRT 2) DEC VT52 3) DEC VT100 4) Heathkit 19 5) Lear Siegler ADM31 6) PC Console 7) Sun Command Tool 8) Sun Workstation 9) Televideo 910 10) Televideo 925 11) Wyse Model 50 12) X Terminal Emulator (xterms) 13) CDE Terminal Emulator (dtterm) 14) Other Type the number of your choice and press Return: 13 . . . |
Para uma lista completa das perguntas que você deve responder, consulte Configuração de região interna.
(Opcional) Se não estiver usando duas janelas como descrito na etapa 3, você talvez tenha omitido o prompt inicial para informações de configuração. Se vir a seguinte mensagem de sistema no login da região em vez de um prompt:
[connected to zone zonename console] |
Pressione a tecla de retorno para exibir o prompt novamente.
Se inserir uma resposta incorreta e tentar reiniciar a configuração, você talvez encontre dificuldade ao tentar o processo novamente. Isso ocorre porque o sysidtools pode armazenar suas respostas anteriores.
Se isso ocorrer, use a seguinte solução da região global para reiniciar o processo de configuração.
global# zlogin -S zonename /usr/sbin/sys-unconfig |
Para obter mais informações sobre o comando sys-unconfig, consulte a página do manual sys-unconfig(1M).
Solaris 10 8/07: A palavra-chave nfs4_domain foi adicionada. Os arquivos de exemplo mostram esta palavra-chave. A Etapa 4 abaixo mostra uma etapa adicional se estiver executando uma versão anterior.
É necessário ser administrador global na região global para executar este procedimento.
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 .
A partir da região global, altere diretórios para o diretório /etc da região não global:
global# cd /export/home/my-zone/root/etc |
Crie o arquivo sysidcfg e coloque-o neste diretório.
O arquivo terá uma aparência semelhante à seguinte:
Para um região com IP compartilhado:
system_locale=C terminal=dtterm network_interface=primary { hostname=my-zone } security_policy=NONE name_service=NIS { domain_name=special.example.com name_server=bird(192.168.112.3) } nfs4_domain=domain.com timezone=US/Central root_password=m4qtoWN |
Para uma região com IP exclusivo com uma configuração de IP estática:
system_locale=C terminal=dtterm network_interface=primary { hostname=my-zone default_route=10.10.10.1 ip_address=10.10.10.13 netmask=255.255.255.0 } nfs4_domain=domain.com timezone=US/Central root_password=m4qtoWN |
Para uma região com IP exclusivo com opção DHCP e IPv6:
system_locale=C terminal=dtterm network_interface=primary { dhcp protocol_ipv6=yes } security_policy=NONE name_service=DNS { domain_name=example.net name_server=192.168.224.11,192.168.224.33 } nfs4_domain=domain.com timezone=US/Central root_password=m4qtoWN |
Se estiver executando uma versão anterior ao Solaris 10 8/07, você não terá a palavra-chave nfs4_domain no arquivo sysidcfg. Por padrão, um módulo separado solicita o parâmetro do domínio NFSv4 usado pelo comando nfsmapid. Para concluir uma configuração de região inicial não controlada diretamente, edite o arquivo default/nfs, não comente o parâmetro NFSMAPID_DOMAIN e defina o domínio para o domínio NFSv4 desejado:
global# vi default/nfs . . . NFSMAPID_DOMAIN=domain |
Crie o arquivo .NFS4inst_state.domain neste diretório para indicar que o domínio NFSv4 foi definido:
global# touch .NFS4inst_state.domain |
Para obter mais informações sobre o parâmetro do domínio NFSv4, consulte a página do manual nfsmapid(1M).
Inicialize a região.
Para obter mais informações, consulte a página do manual sysidcfg(4).
Use o comando zlogin para efetuar login a partir da região global para qualquer região que esteja no estado de execução ou de preparada. Para obter mais informações, consulte a página do manual zlogin(1).
Você pode efetuar login em uma região de várias formas, como descrito nos procedimentos a seguir. Você pode também efetuar login remotamente, como descrito em Login remoto.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Use o comando zlogin com a opção - C e o nome da região, por exemplo my-zone.
global# zlogin -C my-zone |
Se você iniciar a sessão zlogin imediatamente após emitir o comando zoneadm boot, mensagens de inicialização da região serão exibidas:
SunOS Release 5.10 Version Generic 64-bit Copyright 1983-2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. starting rpc services: rpcbind done. syslog service starting. The system is ready. |
Quando o console da região for exibido, efetue login como root, pressione a tecla de retorno e digite a senha raiz ao ser solicitado.
my-zone console login: root Password: |
No modo interativo, um novo pseudoterminal é alocado para uso no interior da região.
É necessário ser administrador global na região global para executar este procedimento.
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 .
A partir da região global, efetue logon na região, por exemplo my-zone.
global# zlogin my-zone |
Informações semelhantes às seguintes serão exibidas:
[Connected to zone 'my-zone' pts/2] Last login: Wed Jul 3 16:25:00 on console Sun Microsystems Inc. SunOS 5.10 Generic June 2004 |
Digite exit para encerrar a conexão.
Você verá uma mensagem semelhante a esta:
[Connection to zone 'my-zone' pts/2 closed] |
O modo não interativo é ativado quando o usuário fornece um comando a ser executado no interior da região. O modo não interativo não aloca um novo pseudoterminal.
Observe que o comando ou quaisquer arquivos sobre os quais o comando atua não podem residir em NFS.
É necessário ser administrador global na região global para executar este procedimento.
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 .
A partir da região global, efetue logon na região my-zone e forneça um nome de comando.
O comando zonename é usado aqui.
global# zlogin my-zone zonename |
Você verá a seguinte saída:
my-zone |
Para obter mais informações sobre opções do comando zlogin, consulte zlogin(1).
Quando uma conexão com a região é negada, o comando zlogin pode ser usado com a opção -S para inserir um ambiente mínimo na região.
É necessário ser administrador global na região global para executar este procedimento.
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 .
A partir da região global, use o comando zlogin com a opção -S para acessar a região, por exemplo my-zone.
global# zlogin -S my-zone |
A execução de init 0 na região global para desligar corretamente um sistema Solaris também executa init 0 em cada região não global no sistema. Observe que init 0 não avisa usuários locais e remotos para efetuarem logoff antes de o sistema ser encerrado.
Use este procedimento para desligar uma região corretamente. Para parar uma região sem executar scripts de desligamento, consulte Como parar uma região.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Efetue logon na região a ser desligada, por exemplo my-zone, e especifique shutdown como o nome do utilitário e init 0 como o estado.
global# zlogin my-zone shutdown -y -g0 -i 0 |
Seu site deve ter um script de desligamento próprio, adequado a seu ambiente específico.
Desta vez você não pode usar o comando shutdown no modo não interativo para colocar a região no estado de usuário único. Para obter mais informações, consulte CR 6214427.
Você pode usar um login interativo, como descrito em Como usar o modo interativo para acessar uma região com marca.
Esta região foi instalada com a configuração de rede aberta descrita no Capítulo 19, Managing Services (Tasks), no System Administration Guide: Basic Administration por padrão. Você pode alternar a região para a configuração de rede limitada, ou ativar ou desativar serviços individuais na região.
A partir da região global, efetue login na região, por exemplo my-zone.
global# zlogin my-zone |
Execute o comando netservices para alternar a região para a configuração de rede limitada.
my-zone# /usr/sbin/netservices limited |
Você verá uma exibição semelhante a esta: Responda y no prompt para reiniciar dtlogin.
restarting syslogd restarting sendmail dtlogin needs to be restarted. Restart now? [Y] y restarting dtlogin |
A partir da região global, efetue login na região, por exemplo my-zone.
global# zlogin my-zone |
Execute o comando svcadm para ativar controle de memória física usando o resource capping daemon.
my-zone# svcadm enable svc:/system/rcap:default |
Liste os serviços para verificar se rcapd está ativado.
my-zone# svcs -a . . . online 14:04:21 svc:/system/rcap:default . . . |
O comando zonename descrito na página do manual zonename(1) imprime o nome da região atual. O exemplo abaixo mostra a saída quando zonename é usado na região global.
# zonename global |
Este capítulo é novo para a versão Solaris 10 11/06. Recursos adicionais foram adicionados em versões subseqüentes.
Este capítulo descreve como:
Mover uma região não global existente para um novo local na mesma máquina
Validar o que acontecerá em uma migração de região não global antes de a migração real ser executada.
Migrar uma região não global existente para uma nova máquina.
Utilize os comandos zoneadm detach e zoneadm attach para atualizar uma região que tenha um nível menor de correção para o nível da região global em um nível maior de correção.
Iniciar com o Solaris 10 10/08, se o novo host possuir a mesma versão ou versões posteriores dos pacotes de região dependente em patches associados, utilizando zoneadm attach com a opção -u atualiza o conjunto mínimo de pacotes para transformar a região não global usável no novo host. Se o novo host tiver uma mistura de correções de versões superiores e inferiores comparado ao host de origem, a atualização durante a operação de anexação não é permitida.
O comando zoneadm attach utilizado com a opção - u também ativa a migração entre classes de máquinas, como de sun4u a sun4v.
Começando com a versão Solaris 10 9/10, utilizar zoneadm attach com a opção -U atualiza todos os pacotes para a região, de modo que estes pacotes correspondam ao que seria visto com uma região não global recém-instalada nesse host. Todos os pacotes instalados no interior da região, mas não instalados na região global são ignorados e deixados como estão. Esta opção também ativa a migração automática entre classes de máquinas, como de sun4u a sun4v.
Como alternativa à atualização normal, as regiões podem ser destacadas enquanto a região global é atualizada e depois recolocado com a opção -U para coincidir com o nível do patch da região global.
Para obter informações sobre o movimento e a migração de regiões com marca lx, consulte o Capítulo 37Movimento e migração de regiões com marcas lx (tarefas).
Este procedimento é usado para mover uma região para um novo local no mesmo sistema alterando o zonepath. A região deve estar parada. O novo zonepath deve estar em um sistema de arquivos local. Os critérios normais do zonepath descritos em Tipos de recurso e propriedade aplicam-se.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Pare a região a ser movida, db-zone neste procedimento.
global# zoneadm -z db-zone halt |
Use o comando zoneadm com o subcomando move para mover a região [ara um novo zonepath, /export/zones/db-zone .
global# zoneadm -z db-zone move /export/zones/db-zone |
Verifique o caminho.
ID NAME STATUS PATH BRAND IP 0 global running / native shared - my-zone installed /export/home/my-zone native shared - db-zone installed /export/zones/db-zone native shared |
Observe que com o Solaris 10 versão 5/08, você pode fazer uma execução de avaliação da migração antes de realmente mover a região para uma máquina diferente. Para obter mais informações, consulte Solaris 10 5/08: Sobre a validação de uma migração de região antes que a migração seja realizada.
Novas informações foram adicionadas a esta seção a partir da versão Solaris 10 11/06.
Os comandos zonecfg e zoneadm podem ser usados para migrar uma região não global existente de um sistema para outro. A região é parada e desanexada do host atual. O zonepath é movido para o host de destino, onde é conectado.
As seguintes restrições se aplicam à migração de região:
A região global no sistema de destino deve estar executando a mesma versão do Solaris que o host original.
Para assegurar que a região seja executada adequadamente, o sistema de destino deve ter versões dos seguintes pacotes e correções necessários do sistema operacional que foram instalados no host original.
Pacotes que entregam arquivos sob o recurso inherit-pkg-dir
Pacotes em que SUNW_PKG_ALLZONES=true
Outros pacotes e correções, como os para produtos de terceiros, podem ser diferentes.
Solaris 10 10/08: se o novo host possuir versões posteriores dos pacotes da região dependente e seus patches associados, utilizar zoneadm attach com a opção -u atualiza esses pacotes dentro da região para coincidir com o novo host. O software de atualização em anexo procura a região que está sendo migrada e determina quais pacotes devem ser atualizados para que correspondam ao novo host. Somente estes pacotes são atualizados. O restante dos pacotes e as correções associadas podem variar de uma região a outra. Esta opção também ativa a migração automática entre classes de máquinas, como de sun4u a sun4v.
Solaris 10 9/10: se o novo host possuir versões posteriores dos pacotes e seus patches associados, utilizar zoneadm attach com a opção -U atualiza esses pacotes dentro da região para corresponder ao que seria visto com a região não global recém instalada nesse host. Todos os pacotes instalados no interior da região, mas não instalados na região global são ignorados e deixados como estão. Esta opção também ativa a migração automática entre classes de máquinas, como de sun4u a sun4v.
Solaris 10 5/09: a opção -b pode ser usada para especificar as correções que serão retiradas da região antes da atualização.
O host e os sistemas de destino devem ter a mesma arquitetura de máquina, a menos que a opção -u seja usada, a qual pode ser usada para realizar migrações entre as classes de máquina sun4u e sun4v.
Solaris 10 5/09:a opção -b pode ser usada para especificar as correções, tanto oficial quanto Interim Diagnostics/Relief (IDR), que serão retiradas da região durante a anexação. Podem ser especificadas várias opções -b. Se por alguma razão nenhum das correções puderem ser retiradas, então o attach falhará e nenhum das correções será retirada.
Esta opção se aplica somente a marcas de região que usam empacotamento SVr4.
Para verificar a arquitetura da versão Solaris e da máquina, digite:
#uname -m |
O processo zoneadm detach cria as informações necessárias para anexar a região a um sistema diferente. O processo zoneadm attach verifica se a máquina de destino tem a configuração correta para hospedar a região.
Uma vez que existem várias maneiras de tornar o zonepath disponível no novo host, o movimento real do zonepath de um sistema para outro é um processo manual executado pelo administrador global.
Quando anexada ao novo sistema, a região está no estado de instalada.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Pare a região a ser migrada, my-zone neste procedimento.
host1# zoneadm -z my-zone halt |
Desanexe a região.
host1# zoneadm -z my-zone detach |
A região desanexada está agora no estado de configurada.
Mova o zonepath de my-zone para o novo host.
Para mais informações, consulte Como mover o zonepath para um novo host.
No novo host, configure a região.
host2# zonecfg -z my-zone |
Você verá a seguinte mensagem do sistema:
my-zone: No such zone configured Use 'create' to begin configuring a new zone. |
Para criar a região my-zone no novo host, use o comando zonecfg com a opção -a e o zonepath no novo host.
zonecfg:my-zone> create -a /export/zones/my-zone |
(Opcional) Visualize a configuração.
zonecfg:my-zone> info zonename: my-zone zonepath: /export/zones/my-zone autoboot: false pool: inherit-pkg-dir: dir: /lib inherit-pkg-dir: dir: /platform inherit-pkg-dir: dir: /sbin inherit-pkg-dir: dir: /usr net: address: 192.168.0.90 physical: bge0 |
Faça ajustes na configuração conforme necessário.
Por exemplo, o dispositivo físico de rede pode ser diferente no novo host, ou os dispositivos que fazem parte da configuração podem ter nomes diferentes no no0
zonecfg:my-zone> select net physical=bge0 zonecfg:my-zone:net> set physical=e1000g0 zonecfg:my-zone:net> end |
Comprometa a configuração e saia.
zonecfg:my-zone> commit zonecfg:my-zone> exit |
Anexe a região ao novo host usando um dos seguintes métodos.
Anexe a região com uma verificação de validação.
host2# zoneadm -z my-zone attach |
O administrador de sistema é notificado de ações necessárias a serem tomadas se uma ou ambas das seguintes condições estiverem presentes:
Pacotes e correções necessários estão ausentes na nova máquina.
Os níveis de software são diferentes entre as máquinas.
Solaris 10 10/08: anexe a região com uma verificação de validação e atualize a região para que corresponda a um host que executa versões mais recentes dos pacotes dependentes ou que possuem outra classe de máquina no anexo.
host2# zoneadm -z my-zone attach -u |
Solaris 10 10/08: Se o sistema de origem estiver executando um versão mais antiga do sistema Solaris, ele pode não gerar uma lista correta de pacotes quando a região for desanexada. Para garantir que seja gerada a lista correta de pacotes no destino, você pode remover o arquivo SUNWdetached.xml de zonepath . A remoção deste arquivo fará com que uma nova lista de pacotes seja gerada pelo sistema de destino.
Isso não é necessário no Solaris 10 5/09 e versões posteriores.
Solaris 10 9/10: anexe a região com uma verificação de validação e atualize todos os pacotes para a região para corresponder ao que seria visto com a região não global recém instalada nesse host. Todos os pacotes instalados no interior da região, mas não instalados na região global são ignorados e deixados como estão.
host2# zoneadm -z my-zone attach -U |
Solaris 10 5/09 e posterior: também usa a opção -b para retirar correções específicas, tanto oficial quanto IDR, durante a anexação.
host2# zoneadm -z my-zone attach -u -b IDR246802-01 -b 123456-08 |
Note que você pode utilizar a opção -b independente das opção -u ou - U.
Force a operação de anexação sem executar a validação.
host2# zoneadm -z my-zone attach -F |
A opção -F permite que você force attach sem a execução de validação. Isto é útil em determinados casos, como em um ambiente agrupado ou para operações de backup e restauração, mas requer que o sistema seja adequadamente configurado para hospedar a região. Uma configuração incorreta pode resultar em um comportamento indefinido posteriormente.
Existem várias maneiras de criar um arquivo do zonepath. Por exemplo, você pode usar os comando cpio ou pax descritos nas páginas do manual cpio(1)) e pax(1).
Existem também várias maneiras de transferir o arquivo para o novo host. O mecanismo usado para transferir o zonepath do host de origem para o destino depende da configuração local. Em alguns casos, como um SAN, os dados do zonepath podem na verdade não ser movidos. SAN pode simplesmente se reconfigurado, de modo que zonepath seja visível para o novo host. Em outros casos, o zonepath poderia ser gravado em fita, e a fita enviada para um novo site.
Por este motivos, esta etapa não é automatizada. O administrador de sistema deve escolher a técnica mais apropriada para mover o zonepath para o novo host.
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 .
Mova o zonepath para o novo host. Você pode usar o método descrito neste procedimento ou usar outro método de sua escolha.
Crie um arquivo tar do zonepath no host1 e transfira-o para o host2 usando o comando sftp.
host1# cd /export/zones host1# tar cf my-zone.tar my-zone host1# sftp host2 Connecting to host2... Password: sftp> cd /export/zones sftp> put my-zone.tar Uploading my-zone.tar to /export/zones/my-zone.tar sftp> quit |
No host2, desempacote o arquivo tar.
host2# cd /export/zones host2# tar xf my-zone.tar |
Para obter mais informações, consulte sftp(1) e tar(1).
Consulte Resolução de problemas com uma operação zoneadm attach para obter informações sobre resolução de problemas relacionados ao que se segue:
Correções e pacotes estão fora de sincronia.
As versões do sistema operacional não coincidem.
Se você tiver copiado os dados em vez de reconfigurar um SAN, os dados do zonepath ainda estarão visíveis no host de origem mesmo que a região agora esteja no estado configurado. Você pode remover manualmente o zonepath do host de origem após terminar de mover os dados para o novo host, ou pode reanexar a região ao host de origem e usar o comando zoneadm uninstall para remover o zonepath.
Você pode realizar uma execução de avaliação antes que a região seja movida para a nova máquina, usando a opção “no execute”,-n.
O subcomando zoneadm detach é usado com a opção -n para gerar um manifesto em uma região em execução sem realmente desanexar a região. O estado da região no sistema de origem não é alterado. O manifesto da região é enviado para stdout. O administrador global pode direcionar essa saída para um arquivo ou inseri-lo em um comando remoto para que seja imediatamente validado no host de destino. O subcomando zoneadm attach é usado com a opção -n para ler esse manifesto e verificar se a máquina de destino tem a configuração correta para hospedar a região sem realmente fazer uma anexação.
A zona no sistema de destino não precisa ser configurada no novo host antes de uma anexação de execução de teste.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Use um dos métodos seguintes.
Gere o manifesto em um host de origem para my-zone e insira a saída em um comando remoto que validará imediatamente o host de destino:
global# zoneadm -z my-zone detach -n | ssh remotehost zoneadm attach -n - |
O hífen (—) no fim da linha especifica stdin para o caminho.
A validação é a saída da tela do host de origem, que é stdout.
Gere o manifesto em um host de origem para my-zone e direcione a saída para um arquivo:
global# zoneadm -z my-zone detach -n > filename |
Copie o manifesto para o sistema do novo host como descrito em Como mover o zonepath para um novo host, e realize a validação:
global# zoneadm attach -n path_to_manifest |
O caminho pode ser — para especificar stdin.
Uma máquina que hospeda uma região nativa do Solaris pode se tornar inutilizável. No entanto, se o armazenamento em que a região reside, como SAN, ainda é utilizável, pode ser possível migrar com êxito a região para um novo host. Você pode mover o zonepath para a região para o novo host. Em alguns casos, como um SAN, os dados do zonepath podem na verdade não ser movidos. SAN pode simplesmente se reconfigurado, de modo que zonepath seja visível para o novo host. Uma vez que a região não foi adequadamente desanexada, você primeiro terá que criar a região no novo host usando o comando zonecfg . Uma vez feito isto, anexe a região ao novo host. Embora o novo host informe que a região não foi adequadamente desanexada, o sistema tentará anexá-la de qualquer forma.
O procedimento para esta tarefa está descrito nas etapas 4 a 8 de Como migrar uma região não global. Consulte também Como mover o zonepath para um novo host.
A atualização em anexo processo desenvolvido para migrar regiões a um sistema diferente também pode ser utilizada para as regiões de patch. Esse método permite que a região global esteja disponível mais rapidamente. O administrador do sistema pode, então, controlar quais regiões são atualizadas em primeiro lugar e obter essas regiões em execução antes que as regiões menos críticas sejam atualizadas e inicializadas.
O seguinte processo atualiza todas os patches para que a região se pareça com uma região recém-instalada no sistema:
Antes de aplicar um pacote de patch para a região global, remova todas as regiões não globais.
Aplique o pacote de patch a todas as regiões globais.
Após do pacote ter sido aplicado e o sistema tiver sido reinicializado, utilize o comando zoneadm attach com a opção -U para trazer as regiões não globais de volta para o mesmo nível de patch que a região global.
Todos os pacotes instalados no interior da região, mas não instalados na região global são ignorados e não afetados.
Consulte Solaris 10 10/09: Correção de regiões paralelas para reduzir o tempo de correção para obter uma solução de correção rápida que utilize o utilitário patchadd.
Um recurso "físico para virtual" (P2V) é utilizado para migrar diretamente de um sistema Solaris existente para uma região nativa em um sistema de destino.
Dependendo dos serviços realizados pelo sistema original, o administrador global pode precisar personalizar manualmente a região depois de ter sido instalado. Por exemplo, os privilégios atribuídos à região talvez precisem ser modificados. Isso não é feito automaticamente. Além disso, como todos os serviços do sistema não funcionam dentro das regiões, nem todo sistema físico é um bom candidato à migração para uma região.
Observe que se a imagem do sistema a ser instalado através de P2V é mais recente que a versão do sistema operacional do host de destino, a instalação irá falhar.
Coletar as informações necessárias do sistema de origem.
Obtenha o hostname:
# hostname |
Obtenha o hostid:
# hostid |
Consulte tambémEmulação de host ID.
Obtenha a senha raiz.
Exibição do software sendo executado no sistema:
# ps -eaf |
Verifique a configuração de rede no sistema:
# ifconfig -a |
Visualize o armazenamento utilizado, por exemplo, visualizando o conteúdo de/etc/vfstab.
Exibição da quantidade de armazenamento em disco local em uso, o que determina o tamanho do arquivo:
# df -k |
Determine os pacotes e patches que estão no sistema. Consulte pkginfo(1)pra mais informações.
Examine o conteúdo de/etc/system.
É possível utilizar as ferramentas de Arquivamento Flash para criar uma imagem de um sistema instalado, que pode ser migrado para uma região.
O sistema pode ser totalmente configurado com todo o software que será executado na região antes de a imagem ser criada. Essa imagem é, em seguida, utilizada pelo programa de instalação quando a região for instalada.
Se você criar um arquivo Flash Solaris ouflar de uma sistema Solaris 10 que possui uma raiz ZFS, então, por padrão, oflarserá, na verdade, um fluxo de envio ZFS, que pode ser utilizado para recriar o grupo raiz. Essa imagem não pode ser utilizada para instalar uma região. É necessário criar o flarcom um cpio explícito ou arquivopax quando o sistema possuir uma raiz ZFS.
Utilize o comando flarcreate com a opção -L arquivar, especificandocpiooupaxcomo o método para arquivar os arquivos. Consulte a Etapa 4 no próximo procedimento.
Utilize o comando flarcreate descrito na página do manual flarcreate(1M) para criar uma imagem do sistema. Esse procedimento de exemplo utiliza NFS para colocar o arquivo flash no sistema Solaris de destino, mas é possível utilizar qualquer método para mover o arquivo.
É necessário ser administrador global na região global para executar este procedimento.
Torne-se superusuário ou assuma a função de Administrador principal.
Efetue o logon no sistema de origem que será arquivado.
Altere diretórios para o diretório raiz.
# cd / |
Utilize flarcreate para criar um arquivo de imagem flash nomeado s10-system no sistema de origem e coloque o arquivo no sistema de destino:
source-system # flarcreate -S -n s10-system -L cpio /net/target/export/s10-system.flar Determining which filesystems will be included in the archive... Creating the archive... cpio: File size of "etc/mnttab" has increased by 435 2068650 blocks 1 error(s) Archive creation complete. |
A máquina de destino exigirá acesso de gravação raiz para o sistema de arquivos /export. Dependendo do tamanho do sistema de arquivos do sistema de host, o arquivo pode ter vários gigabytes de tamanho, para que haja espaço suficiente disponível no sistema de arquivos de destino.
Em alguns casos, oflarcreate pode exibir erros a partir do comando cpio. Geralmente, essas mensagens são como Tamanho do arquivo etc/mnttab aumentou em 435. Essas mensagens podem ser ignoradas quando se referirem a arquivos de log ou arquivos que refletem o estado do sistema. Assegure-se de rever todas as mensagens de erro cuidadosamente.
É possível utilizar métodos alternativos para criar o arquivo. O instalador pode aceitar formatos de arquivo a seguir:
arquivos cpio
arquivos gzip cpio comprimidos
arquivos bzip2 cpio comprimidos
arquivos pax criados com o -x xustar formato (XUSTAR)
ufsdump backups (completos) nível zero
Note que o instalador só pode aceitar um diretório de arquivos criados utilizando um utilitário de arquivamento que salva e restaura as permissões de arquivo, propriedade e links.
Para mais informações, consulte as páginas do manual cpio(1), pax(1), bzip2 (1), gzip(1) e ufsdump(1M).
Se você utilizar um método diferente do arquivo flash para criar um arquivo de P2V, é necessário desmontar os recursos do hardware montado do processador dependente libc.so.1, lofs, bibliotecas (hwcap) no sistema de origem antes de criar o arquivo. Caso contrário, a região instalada com o arquivo pode não inicializar no sistema de destino. Após ter criado o arquivo, é possível remontar a biblioteca de recursos de hardware apropriada em cima de /lib/libc.so.1 utilizando lofse a opção -O de montagem.
source-system# unmount /lib/libc.so.1 source-system# mount -O -F lofs /lib/libc.so.1 |
Quando os aplicativos migram de um sistema Solaris físico para uma região em um novo sistema, o hostid muda para hostid da nova máquina.
Em alguns casos, os aplicativos dependem do hostid original e não é possível atualizar a configuração do aplicativo. Em alguns casos, a região pode ser configurada para utilizar ohostid do sistema original. Isso é feito com a utilização da propriedade zonecfg para especificar o hostid, conforme descrito em Como configurar a região. O valor utilizado deve ser a saída do comando hostid conforme executado no sistema original. Para exibir o hostid em uma região instalada, utilize também o comando hostid.
Para mais informações sobre host IDs, consultehostid(1).
Crie a nova configuração de região no sistema de destino, utilizando o procedimento Como configurar a região.
Se você for utilizar CDs ou DVDs para instalar aplicativos na nova região, utilize add fs para adicionar acesso de somente leitura à mídia CD ou DVD na região global quando configurar inicialmente a região com marca. Um CD ou um DVD pode ser usado para instalar um produto na região com marca. Consulte Como adicionar acesso a mídia de CD ou DVD em uma região não global. para mais informações.
O comando zoneadm descrito emParte II, Regiões e na página do manualzoneadm(1M) é a principal ferramenta utilizada para instalar e administrar regiões não-globais. As operações que utilizam o comando zoneadm devem ser executadas a partir de região global no sistema de destino.
Além de descompactar os arquivos a partir do arquivo, o processo de instalação realiza verificações, pós-processamentos necessários e outras funções para garantir que a região é otimizada para ser executada no host.
É possível utilizar uma imagem de um sistema Solaris que foi totalmente configurado com todo o software que será executado na região. Consulte Criando a imagem utilizada para migrar diretamente um sistema Solaris em uma região.
Se você criou um arquivo de sistemas Solaris a partir de um sistema existente e utiliza a opção -p(preserve sysidcfg) ao instalar a região, a região terá a mesma identidade que o sistema utilizado para criar a imagem.
Se a opção-u(sys-unconfig) é utilizada ao instalar a região no destino, a região criada não terá um nome da máquina ou serviço de nome configurado.
Você deve especificar a opção -p, a opção -u ou resultados de erros.
Opção |
Descrição |
---|---|
-a |
Localização do arquivo de onde copiar a imagem do sistema. O arquivo completo flash, cpio, gzip cpio comprimido, bzip cpio comprimido e o nível 0 ufsdump são suportados. Consulte a página do manual gzip disponível no pacote SUNWsfman. |
-d path |
Localização do diretório de onde copiar a imagem do sistema. |
-d — |
Utilize a opção -d com o parâmetro traço para indicar que o layout do diretório existente é utilizado em zonepath. Assim, se o administrador configurar manualmente o diretório zonepath antes da instalação, a opção -d — pode ser utilizada para indicar que o diretório já existe. |
-p |
Preservar a identidade do sistema. |
-s |
Instalar silenciosamente. |
-u |
sys-unconfig a região. |
-v |
Saída verbosa. |
As opções -a e -d são mutuamente exclusivas. As opções -p, -s, -u e -v são permitidas apenas se -a ou -d forem fornecidas.
Torne-se superusuário ou assuma a função de Administrador principal.
Instale a região configurada s-zone utilizando o comando zoneadm com a opção install - a e o caminho para o arquivo.
global# zoneadm -z s-zone install -u -a /net/machine_name/s-system.flar |
Você verá várias mensagens conforme a instalação é concluída. Isso pode levar algum tempo.
Quando a instalação estiver concluída, use o subcomando list com as opções -i e -v para listar as regiões instaladas e verificar o status.
Se uma instalação falhar, reveja o arquivo de log. Se for bem sucedido, o arquivo de log está na /var/log dentro da região. Se falhar, o arquivo de log está em /var/tmp na zona global.
Se a instalação de uma região falhar ou for interrompida, a região ficará no estado de incompleta. Use uninstall -F para redefinir a região como estado de configurada.
É necessário ser administrador global na região global para executar este procedimento.
Se a opção -u foi utilizada, você também deve zlogin para o console da região e realizar a configuração do sistema como descrito em Execução da configuração de região interna inicial.
Torne-se superusuário ou assuma a função de Administrador principal.
Utilize o comando zoneadm com a opção - z, o nome da região, que é s-zone e o subcomando boot para inicializar a região.
global# zoneadm -z s-zone boot |
Quando a inicialização estiver concluída, use o subcomando list com a opção -v para verificar o status.
global# zoneadm list -v |
Solaris 10 1/06: Este capítulo foi completamente revisado.
Este capítulo trata da manutenção do Solaris Operating System quando regiões estão instaladas. São fornecidas informações sobre adição de pacotes e correções ao sistema operacional na região global e em todas as regiões não globais instaladas. Também estão incluídas informações sobre remoção de pacotes e correções. O material neste capítulo complementa a documentação existente de instalação e correção do Solaris. Para obter mais informações, consulte Solaris 10 Release and Installation Collection e System Administration Guide: Basic Administration.
Este capítulo aborda os seguintes tópicos:
O que há de novo em pacotes e correções quando regiões estão instaladas
Aplicação de correções em um sistema do Solaris com regiões instaladas
Remoção de correções em um sistema do Solaris com regiões instaladas
Solaris 10 1/06: Este capítulo foi reescrito a partir do Solaris 10, para documentar o comportamento atual dos comandos de pacote e correção em um sistema com regiões não globais instaladas.
Solaris 10 6/06: As informações sobre parâmetros de pacote SUNW_PKG_ALLZONES, SUNW_PKG_HOLLOW e SUNW_PKG_THISZONE foram revisadas. Consulte Visão geral das ferramentas de pacotes e correções e Informações sobre parâmetro de pacote.
Solaris 10 6/06 e versões posteriores: Para obter informações sobre como registrar o sistema ou como usar Sun Connection (anteriormente conhecido como Sun Update Connection) para gerenciar atualizações de software, consulte Sun Connection hub on BigAdmin.
Solaris 10 8/07 e versões posteriores:
Quando o comando patchadd é usado para adicionar um correção a um pacote instalado usando-se o comando pkgadd com a opção -G, a opção -G para patchadd não é mais necessária.
Foi adicionada uma tabela que descreve o que acontecerá quando os comandos pkgadd, pkgrm, patchadd e patchrm são usados em um sistema com regiões não globais em vários estados. Consulte Como o estado da região afeta operações de correção e pacote.
Foi adicionado um esclarecimento sobre a interação de patchadd -G e da variável pkginfo. Consulte Interação de patchadd -G e da variável pkginfo em um sistema com regiões..
Foram adicionadas informações sobre correções com ativação deferida. Consulte Solaris 10 8/07: correção com ativação deferida.
Foram removidas informações sobre uma opção -G para o comando pkgrm.
Solaris 10 5/08 e versões de atualização posteriores: EOF de PatchPro. O suporte a PatchPro, que usava o banco de dados de correção e as ferramentas de correção para fazer a correção do software instalado em regiões globais e não globais, terminou em setembro de 2007. Para obter informações sobre o processo atual, consulte o Sun xVM Ops Center.
Solaris 10 5/08: Embora tenha sido adicionada no Solaris 10 versão 5/08, essa informação se aplica a todos os sistemas Solaris 10.
Para registrar seu sistema do Solaris, vá para https://inventory.sun.com/inventory/ Para obter informações sobre como usar o Sun Inventory para registrar seu hardware, software e sistemas operacionais, consulte o Sun Inventory Information Center.
Se você usar o Sun xVM Ops Center para configurar, atualizar e gerenciar os sistemas em sua central de dados, consulte o Sun xVM Information Center para obter informações sobre como registrar seu software com o Sun xVM Ops Center.
Solaris 10 10/09: atualização paralela de regiões é um aprimoramento para os utilitários de patch do Solaris 10 padrão. Para versões anteriores ao Solaris 10 10/09, a correção é entregue no utilitário de correção, 119254-66 ou versão posterior (SPARC) e 119255-66 ou versão posterior (x86). Consulte Solaris 10 10/09: Correção de regiões paralelas para reduzir o tempo de correção e Solaris 10 10/09: Como corrigir regiões não globais em paralelo.. Consulte também Usando a atualização na anexação como uma solução de correção, um método recomendado utilizado para atualizar rapidamente os patches em um sistema com regiões.
Para obter uma lista completa dos novos recursos do Solaris 10 e uma descrição das versões do Solaris, consulte Novidades no Oracle Solaris 10 9/10.
As ferramentas de pacotes do Solaris são usadas na administração do ambiente de regiões. O administrador global pode atualizar o sistema para uma nova versão do Solaris, o que atualiza regiões globais e não globais.
Solaris Live Upgrade, o programa de instalação interativo padrão do Solaris ou o programa de instalação personalizado JumpStart podem ser usados para atualizar um sistema que inclua regiões não globais. Para obter uma região com o zonepath no ZFS, são aplicadas as seguintes restrições:
O suporte ao Solaris Live Upgrade em sistemas com o zonepath no ZFS começam a partir do Solaris 10 10/08.
Somente o Solaris Live Upgrade pode ser usado para atualizar o sistema.
Para mais informações, consulte Utilizando o Oracle Solaris Live Upgrade para migrar ou atualizar um sistema com regiões (Solaris 10 10/08) no Guia de administração do ZFS Oracle Solaris.
O administrador de região pode usar as ferramentas de pacotes para administrar qualquer software instalado em uma região não global, dentro dos limites descritos neste documento.
Os seguintes princípios gerais se aplicam quando regiões são instaladas:
O administrador global pode administrar o software em cada região no sistema.
O sistema de arquivos raiz de uma região não global pode ser administrado a partir da região global usando-se as ferramentas de pacotes e correções do Solaris. As ferramentas de pacotes e correções do Solaris têm suporte dentro da região não global para a administração de produtos empacotados, individuais (avulsos) ou de terceiros.
As ferramentas de pacotes e correções funcionam em um ambiente ativado por regiões. As ferramentas permitem que um pacote ou uma correção instalados na região global também sejam instalados em uma região não global.
O parâmetro de pacote SUNW_PKG_ALLZONES define o escopo da região de um pacote. O escopo determina o tipo de região em que um pacote individual pode ser instalado. Para obter mais informações sobre este parâmetro, consulte Parâmetro de pacote SUNW_PKG_ALLZONES.
O parâmetro de pacote SUNW_PKG_HOLLOW define a visibilidade de um pacote, se for necessário que esse pacote seja instalado em todas as regiões e seja idêntico em todas as regiões. Para obter informações sobre esse parâmetro, consulte Parâmetro de pacote SUNW_PKG_HOLLOW.
O parâmetro de pacote SUNW_PKG_THISZONE define se um pacote deve ser instalado somente da região atual. Para obter informações sobre esse parâmetro, consulte Parâmetro de pacote SUNW_PKG_THISZONE .
Pacotes que não definem valores para parâmetros de pacote de região têm uma configuração padrão de false.
As informações sobre pacotes visíveis do interior de uma região não global são consistentes com os arquivos que foram instalados nesse região usando-se as ferramentas de pacotes e correções do Solaris. As informações sobre pacotes são mantidas em sincronia com os diretórios inherit-pkg-dir.
Uma alteração, como uma correção ou um pacote adicionados na região global, pode ser projetada a todas as regiões. Este recurso mantém a consistência entre a região global e cada região não global.
Os comandos de pacote podem adicionar, remover e interrogar pacotes. Os comandos de correção podem adicionar e remover correções.
Enquanto determinadas operações de pacote e correção são executadas, uma região é temporariamente bloqueada para outras operações desse tipo. O sistema pode também confirmar uma operação solicitada com o administrador antes de prosseguir.
Somente um subconjunto dos pacotes do Solaris instalados na região global são completamente replicados quando uma região não global é instalada. Por exemplo, vários pacotes que contêm o kernel do Solaris não são necessários em uma região não global. Todas as regiões não globais compartilham implicitamente o mesmo kernel do Solaris a partir da região global. No entanto, mesmo que dados de um pacote não sejam necessários ou não sejam úteis em uma região não global, o conhecimento de que um pacote está instalado na região global pode ser necessário em uma região não global. A informação permite que dependências de pacotes das regiões não globais sejam resolvidas corretamente com a região global.
Pacotes têm parâmetros que controlam como seu conteúdo é distribuído e tornado visível em um sistema com regiões não globais instaladas. Os parâmetros de pacote SUNW_PKG_ALLZONES , SUNW_PKG_HOLLOW e SUNW_PKG_THISZONE definem as características de pacotes em um sistema com regiões instaladas. Se desejável, administradores de sistema podem verificar essas configurações de parâmetro de pacote para examinar a aplicabilidade do pacote ao aplicarem ou removerem um pacote em um ambiente da região. O comando pkgparam pode ser usado para visualizar os valores para esses parâmetros. Para obter mais informações sobre parâmetros, consulte Informações sobre parâmetro de pacote. Para obter instruções sobre uso, consulte Verificação das configurações do parâmetro do pacote em um sistema com regiões instaladas.
Para obter informações sobre características e parâmetros de pacote, consulte a página do manual pkginfo(4) Para obter informações sobre exibição de valores de parâmetros de pacotes, consulte a página do manual pkgparam(1).
Quando uma correção é gerada para qualquer pacote, os parâmetros devem ser definidos como os mesmos valores que os do pacote original.
Qualquer pacote que deva ser interativo, o que significa que tem um script de solicitação, é adicionado somente à região atual. O pacote não é propagado para qualquer outra região. Se um pacote interativo for adicionado à região global, o pacote será tratado como se estivesse sendo adicionado usando-se o comando pkgadd com a opção -G. Para obter mais informações sobre esta opção, consulte Sobre adição de pacotes em regiões.
É melhor manter o software instalado nas regiões não globais em sincronia com o software instalado na região global o máximo possível. Esta prática minimiza a dificuldade na administração de um sistema com várias regiões instaladas.
Para alcança este objetivo, as ferramentas de pacote aplicam as seguintes regras quando pacotes são adicionados na região global ou dela removidos.
Se o pacote não estiver instalado atualmente na região global e não estiver instalado atualmente em qualquer região não global, o pacote pode ser instalado:
Somente na região global, se SUNW_PKG_ALLZONES=false
Somente na região (global) atual, se SUNW_PKG_THISZONE=true
Na região global e em todas as regiões não globais
Se o pacote estiver instalado atualmente somente na região global:
O pacote pode ser instalado em todas as regiões não globais.
O pacote pode ser removido da região global.
Se um pacote estiver instalado atualmente na região global e instalado atualmente em somente um subconjunto de regiões não globais:
SUNW_PKG_ALLZONES deve ser definido como false .
O pacote pode ser instalado em todas as regiões não globais. Instâncias existentes em qualquer região não global são atualizadas para a revisão que está sendo instalada.
O pacote pode ser removido da região global.
O pacote pode ser removido da região global e de todas as regiões não globais.
Se um pacote estiver instalado atualmente na região global e instalado atualmente em todas as regiões não globais, o pacote pode ser removido da região global e de todas as regiões não globais.
Estas regras garantem o seguinte:
Pacotes instalados na região global são instalados somente na região global ou instalados na região global e em todas as regiões não globais.
Pacotes instalados na região global e também instalados em qualquer região não global são os mesmos entre todas as regiões.
As operações de pacote possíveis em qualquer região não global são:
Se um pacote não estiver instalado atualmente na região não global, o pacote pode ser instalado somente se SUNW_PKG_ALLZONES=false.
O pacote pode ser instalado na região (não global) atual, se SUNW_PKG_THISZONE=true.
Se um pacote estiver instalado atualmente na região não global:
O pacote pode ser instalado sobre uma instância existente do pacote somente se SUNW_PKG_ALLZONES=false.
O pacote pode ser removido da região não global somente se SUNW_PKG_ALLZONES=false.
A tabela abaixo descreve o que acontecerá quando os comandos pkgadd, pkgrm, patchadd e patchrm são usados em um sistema com regiões não globais em vários estados.
Observe que as revisões da descrição do estado instalado foram feitas na tabela do Solaris 10 versão 5/08.
Estado da região |
Efeito sobre operações de pacote e correção |
---|---|
Configurado |
Ferramentas de correção e pacote podem ser executadas. Nenhum software foi instalado ainda. |
Instalado |
Ferramentas de correção e pacote podem ser executadas. Durante as operações de correção ou de empacotamento, o sistema move uma região do estado instalado para um novo estado interno chamado montado. Após a correção ser completada, a região é revertida para o estado instalado. Observe que imediatamente depois que zoneadm - z zonename install tenha sido concluído, a região também é movida para o estado instalado. Uma região no estado instalado que nunca foi inicializada não pode sofrer correção ou executar comandos de empacotamento. A região deve ser inicializada para o estado de execução pelo menos uma vez. Depois que uma região tiver sido inicializada pelo menos uma vez e depois movida de volta para o estado instalado via zoneadm halt, então, os comandos de correção e de empacotamento podem ser executados. |
Preparado |
Ferramentas de correção e pacote podem ser executadas. |
Execução |
Ferramentas de correção e pacote podem ser executadas. |
Incompleto |
Uma região está sendo instalada ou removida por zoneadm. Ferramentas de correção e pacote não podem ser usadas. As ferramentas não podem levar a região para o estado apropriado para usar as ferramentas. |
O utilitário do sistema pkgadd descrito na página do manual pkgadd(1M) é usado para adicionar pacotes em um sistema do Solaris com regiões instaladas.
O utilitário pkgadd pode ser usado com a opção -G na região global para adicionar o pacote somente à região global. O pacote não é propagado para quaisquer outras regiões. Observe que, se SUNW_PKG_THISZONE=true , você não tem de usar a opção -G. Se SUNW_PKG_THISZONE=false , a -G opção irá sobrescrevê-lo.
Quando você executa o utilitário pkgadd na região global, as seguintes ações se aplicam.
O utilitário pkgadd está capacitado para adicionar um pacote:
Somente para a região global, a menos que o pacote seja SUNW_PKG_ALLZONES=true
Para a região global e todas as regiões não globais
Somente para todas as regiões não globais, se o pacote já estiver instalado na região global
Somente para a região atual, se SUNW_PKG_THISZONE=true
O utilitário pkgadd não pode adicionar um pacote:
Para qualquer subconjunto de regiões não globais
Para todas as regiões não globais, a menos que o pacote já esteja instalado na região global
Se o utilitários pkgadd for executado sem a opção -G e SUNW_PKG_THISZONE=false, o pacote especificado será adicionado a todas as regiões por padrão. O pacote não é marcado como instalado somente na região global.
Se o utilitário pkgadd for executado sem a opção -G e SUNW_PKG_THISZONE=true, o pacote especificado será adicionado à região (global) atual por padrão. O pacote é marcado como instalado somente na região global.
Se a opção -G for usada, o utilitário pkgadd adicionará o pacote especificado somente à região global. O pacote é marcado como instalado somente na região global. O pacote não é instalado quando qualquer região não global está instalada.
Para adicionar um pacote à região global e a todas as regiões não globais, execute o utilitário pkgadd na região global. Como administrador global, execute pkgadd sem a opção -G.
Um pacote pode ser adicionado à região global e a todas as regiões não globais independentemente da área afetada pelo pacote.
As seguintes etapas são executadas pelo utilitário pkgadd:
As dependências de pacote são verificadas na região global e em todas as regiões não globais. Se pacotes necessários não estão instalados em uma região, a verificação de dependência irá falhar. O sistema notifica o administrador global, que é solicitado a decidir continuar ou não.
O pacote é adicionado à região global.
O banco de dados do pacote na região global é atualizado.
O pacote é adicionado a cada região não global e o banco de dados na região global é atualizado.
O banco de dados do pacote em cada região não global é atualizado.
Para adicionar um pacote somente à região global, como o administrador global na região global, execute o utilitário pkgadd somente com a opção - G.
Um pacote pode ser adicionado à região global se as seguintes condições forem verdadeiras:
O conteúdo do pacote não afeta qualquer área da região global que é compartilhada com qualquer região não global.
O pacote é definido como SUNW_PKG_ALLZONES=false.
As seguintes etapas são executadas pelo utilitário pkgadd:
Se o conteúdo do pacote afetar qualquer área da região global que é compartilhada com qualquer região não global, ou se o pacote estiver definido como SUNW_PKG_ALLZONES=true , pkgadd irá falhar. A mensagem de erro afirma que o pacote deve ser adicionado à região global e a todas as regiões não globais.
Dependências de pacote são verificadas somente na região global. Se pacotes necessários não estiverem instalados, a verificação de dependência irá falhar. O sistema notifica o administrador global, que é solicitado a decidir continuar ou não.
O pacote é adicionado à região global.
O banco de dados do pacote na região global é atualizado.
As informações sobre o pacote na região global são anotadas para indicar que esse pacote está instalado somente na região global. Se uma região não global for instalada no futuro, esse pacote não será instalado.
Para adicionar um pacote que já está instalado na região global a todas as regiões não globais, você deve remover o pacote atualmente da região global e reinstalá-lo em todas as regiões.
Estas são as etapas usadas para adicionar um pacote que já está instalado na região global a todas as regiões não globais:
Na região global, use pkgrm para remover o pacote.
Adicione o pacote sem usar a opção -G.
Para adicionar um pacote em uma região não global especificada, execute o utilitário pkgadd , sem opções, como o administrador de região. As seguintes condições se aplicam:
O utilitário pkgadd pode somente adicionar pacotes na região não global em que o utilitário é usado.
O pacote não pode afetar qualquer área da região que seja compartilhada a partir da região global.
O pacote deve ser definido como SUNW_PKG_ALLZONES=false.
As seguintes etapas são executadas pelo utilitário pkgadd:
As dependências de pacote são verificadas no banco de dados do pacote da região não global antes de o pacote ser adicionado. Se pacotes necessários não estiverem instalados, a verificação de dependência irá falhar. O sistema notifica o administrador de região não global, que é solicitado a decidir continuar ou não. A verificação irá falhar se uma das seguintes condições for verdadeira.
Qualquer componente do pacote afeta qualquer área da região que é compartilhada a partir da região global.
O pacote é definido como SUNW_PKG_ALLZONES=true.
O pacote é adicionado à região.
O banco de dados do pacote na região é atualizado.
O utilitário pkgrm descrito na página do manual pkgrm(1M) oferece suporte à remoção de pacotes em um sistema do Solaris com regiões instaladas.
Quando você executa o utilitário pkgrm é usado na região global, as seguintes ações se aplicam.
pkgrm pode remover um pacote de uma região global e de todas as regiões não globais ou somente da região global quando o pacote estiver instalado somente na região global.
pkgrm pode remover um pacote somente da região global se o pacote também estiver instalado em uma região global, ou remover um pacote de qualquer subconjunto de regiões não globais.
Observe que um pacote somente pode ser removido de uma região não global por um administrador de região que trabalhe nessa região, se o seguinte for verdadeiro:
O pacote não afeta qualquer área da região não global que seja compartilhada a partir da região global.
O pacote é definido como SUNW_PKG_ALLZONES=false.
Para remover um pacote da região global e de todas as regiões não globais, execute o utilitário pkgrm na região global como o administrador global.
Um pacote pode ser removido da região global e de todas as regiões não globais independentemente da área afetada pelo pacote.
As seguintes etapas são executadas pelo utilitário pkgrm:
As dependências de pacote são verificadas na região global e em todas as regiões não globais. Se a verificação de dependência falhar, pkgrm irá falhar. O sistema notifica o administrador global, que é solicitado a decidir continuar ou não.
O pacote é removido da cada região não global.
O banco de dados do pacote em cada região não global é atualizado.
O pacote é removido da região global.
O banco de dados do pacote na região global é atualizado.
Como administrador da região, use o utilitário pkgrm em uma região não global para remover um pacote. As seguintes limitações se aplicam:
pkgrm pode somente remover pacotes da região não global.
O pacote não pode afetar qualquer área da região que seja compartilhada a partir da região global.
O pacote deve ser definido como SUNW_PKG_ALLZONES=false.
As seguintes etapas são executadas pelo utilitário pkgrm:
Dependências são verificas no banco de dados do pacote da região não global. Se a verificação de dependência falhar, pkgrm irá falhar e o administrador de região será notificado. A verificação irá falhar se uma das seguintes condições for verdadeira.
Qualquer componente do pacote afeta qualquer área da região que é compartilhada a partir da região global.
O pacote é definido como SUNW_PKG_ALLZONES=true.
O pacote é removido da região.
O banco de dados do pacote na região é atualizado.
Os parâmetros de pacote SUNW_PKG_ALLZONES , SUNW_PKG_HOLLOW e SUNW_PKG_THISZONE definem as características de pacotes em um sistema com regiões instaladas. Estes parâmetros devem ser definidos de modo que os pacotes possam ser administrador em um sistema com regiões não globais instaladas.
A tabela abaixo lista as quatro combinações válidas para definir parâmetros de pacote. Se você escolher definir combinações que não estejam listadas na tabela abaixo, essas configurações serão inválidas e o pacote não será instalado.
Assegure-se de ter definido todos os três parâmetros de pacote. Você pode deixar em branco todos os três parâmetros de pacote. As ferramentas de pacote interpretam um parâmetro de pacote ausente como se a configuração fosse false, mas não é de modo algum recomendável não definir os parâmetros. Ao definir todos os três parâmetros de pacote, você especifica o comportamento exato que as ferramentas de pacote devem exibir ao instalar ou remover o pacote.
Tabela 25–1 Configurações válidas de parâmetro de pacote
O parâmetro de pacote SUNW_PKG_ALLZONES opcional descreve o escopo da região de um pacote. Este parâmetro define o seguinte:
Se é necessário que um pacote seja instalado em todas as regiões
Se é necessário que um pacote seja idêntico em todas as regiões
O parâmetro de pacote SUNW_PKG_ALLZONES tem dois valores permissíveis. Esses valores são true e false. O valor padrão é false. Se este parâmetro não for definido ou for definido com um valor diferente de true ou false, o valor false será usado.
O parâmetro SUNW_PKG_ALLZONES deve ser definido como true para pacotes que devem ser a mesma versão de pacote e o mesmo nível de revisão de correção em todas as regiões. Qualquer pacote que entregue funcionalidade dependente de um determinado kernel do Solaris, por exemplo do Solaris 10, deve definir este parâmetro como true. Qualquer correção de um pacote deve definir o parâmetro SUNW_PKG_ALLZONES como o mesmo valor que é definido no pacote instalado que está sendo corrigido. O nível de revisão da correção para qualquer pacote que define este parâmetro como true deve ser o mesmo em todas as regiões.
Pacotes que entregam funcionalidade não dependente de um determinado kernel do Solaris, como pacotes de terceiros ou compiladores da Sun, devem definir este parâmetro como false. Qualquer correção para um pacote que define este parâmetro como false deve também definir este parâmetro como false. Tanto a versão do pacote como o nível de revisão de correção para qualquer pacote que defina este parâmetro como false podem ser diferentes entre regiões. Por exemplo, duas regiões não globais podem cada uma ter uma versão diferente de um servidor da Web instalado.
Os valores do parâmetro de pacote SUNW_PKG_ALLZONES são descritos na tabela abaixo.
Tabela 25–2 Parâmetro de pacote SUNW_PKG_ALLZONES
O parâmetro de pacote SUNW_PKG_HOLLOW define se um pacote deve ser visível em qualquer região não global se for necessário que esse pacote seja instalado e seja idêntico em todas as regiões.
O parâmetro de pacote SUNW_PKG_HOLLOW tem dois valores permissíveis, true ou false.
Se SUNW_PKG_HOLLOW não for definido ou for definido com um valor diferente de true ou false, o valor false será usado.
Se SUNW_PKG_ALLZONES for definido como false, o parâmetro SUNW_PKG_HOLLOW será ignorado.
Se SUNW_PKG_ALLZONES for definido como false, SUNW_PKG_HOLLOW não poderá ser definido como true.
Os valores do parâmetro de pacote SUNW_PKG_HOLLOW são descritos na tabela abaixo.
Tabela 25–3 Parâmetro de pacote SUNW_PKG_HOLLOW
O parâmetro de pacote SUNW_PKG_THISZONE define se um pacote deve ser instalado somente na região atual, global ou não global. O parâmetro de pacote SUNW_PKG_THISZONE tem dois valores permissíveis. Esses valores são true e false. O valor padrão é false.
Os valores do parâmetro de pacote SUNW_PKG_THISZONE são descritos na tabela abaixo.
Tabela 25–4 Valores do parâmetro de pacote SUNW_PKG_THISZONE
O utilitário pkginfo descrito na página do manual pkginfo(1) oferece suporte a consulta do banco de dados do pacote de software em um sistema do Solaris com regiões instaladas. Para obter informações sobre o banco de dados, consulte Banco de dados de produto.
O utilitário pkginfo pode ser usado na região global para consultar o banco de dados do pacote de software somente na região global. O utilitário pkginfo pode ser usado em uma região não global para consultar o banco de dados do pacote de software somente na região não global.
Em geral, uma correção consiste nos seguintes componentes:
Informações da correção:
Identificação, que é a versão da correção e a ID da correção
Aplicabilidade, que é o tipo de sistema operacional, a versão do sistema operacional e a arquitetura
Dependências, como requisitos e obsoletos
Propriedades, como requerer uma reinicialização posterior
Um ou mais pacotes para a correção, em que cada pacote contém:
A versão do pacote aos quais as correções podem ser aplicadas
Informações da correção, como ID, obsoletos e requisitos
Um ou mais componentes do pacote a ter a correção
Quando o comando patchadd é usado para aplicar uma correção, as informações da correção são usadas para determinar se a correção é aplicável ao sistema em execução atualmente. Se determinado que não é aplicável, a correção não será aplicada. As dependências da correção também são verificadas contra todas as regiões no sistema. Se quaisquer dependências necessárias não forem atendidas, a correção não será aplicada. Isso pode incluir o caso em que uma versão posterior da correção já está instalada.
Cada pacote contido na correção é verificado. Se o pacote não estiver instalado em qualquer região, o pacote será ignorado e não será corrigido.
Se todas as dependências forem satisfeitas, todos os pacotes na correção que estão instalados em qualquer região serão usados para corrigir o sistema. Os bancos de dados do pacote e da correção também são atualizados.
Solaris 10 3/05 até Solaris 10 11/06: Se um pacote estiver instalado com pkgadd -G ou tiver a configuração pkginfo SUNW_PKG_THISZONE=true, o pacote somente poderá ser corrigido com patchadd - G. Esta restrição foi removida na versão Solaris 8/07.
A partir das correções 119254-41 e 119255-41, os utilitários de instalação de correção patchadd e patchrm foram modificados para mudar a maneira com que determinadas correções que entregam recursos são manipulados Esta modificação afeta a instalação dessas correções em qualquer versão Solaris 10. Estas correçoes de ativação deferida manipulam melhor o grande escopo de mudança entregue em correções de recursos, como correções de kernel associadas às versões Solaris 10 após a versão Solaris 10 3/05.
A correção de ativação deferida usa o sistema de arquivos de auto-retorno (lofs) para garantir a estabilidade do sistema em execução. Quando uma correção é aplicada ao sistema em execução, o lofs preservam a estabilidade durante o processo de correção. Estas correções de kernel grande sempre requereram uma reinicialização, mas agora a reinicialização necessária ativa as mudanças feitas pelo lofs. O arquivo LEIA-ME da correção fornece instruções sobre quais correções requerem uma reinicialização.
Se você estiver executando regiões não globais ou tiver desativado lofs, considere estes pontos ao instalar ou remover correções de ativação deferida:
Todas as regiões não globais devem estar paradas para esta operação de correção. Você deve parar a região não global antes de aplicar a correção.
A correção de ativação deferida requer o sistema de arquivos de auto-retorno (lofs). Nos sistemas que executam Sun Cluster 3.1 ou Sun Cluster 3.2 provavelmente os lofs estão desativados por causa de restrições sobre a funcionalidade HA-NFS quando lofs está ativado. Portanto, antes de uma correção de ativação deferida ser instalado, você deve reativar o sistema de arquivos de auto-retorno para remover ou não comentar a seguinte linha no arquivo /etc/system:
exclude:lofs |
Em seguida reinicialize o sistema e instale a correção. Após concluída a operação da instalação da correção, restaure ou não comente a mesma linha do arquivo /etc/system. Você deve em seguida reinicializar para retomar as operações normais.
O uso do Solaris Live Upgrade para gerenciar correções impede a ocorrência de problemas associados ao processo de correção em um sistema em execução. O Solaris Live Upgrade pode reduzir a quantidade de tempo de inatividade envolvido na correção e limita os riscos ao fornecer capacidade de emergência no caso de um problema. Você pode corrigir um ambiente de boot inativo enquanto o sistema ainda está em produção, e reinicializar de volta para o ambiente de boot original (BE) se forem descobertos problemas no novo BE. Consulte Atualizando um sistema com pacotes ou patches no Oracle Guia de instalação do Solaris 10 9/10: Solaris Live Upgrade e planejamento da atualização.
A atualização de regiões paralelas é um melhoria para os utilitários de patch do Solaris 10 padrão, que abrangem o método suportado para atualizar regiões não globais no sistema Solaris 10. Este recurso aprimora o desempenho da correção de regiões ao corrigir regiões não globais em paralelo.
Para versões anteriores ao Solaris 10 10/09, este recurso é entregue no utilitário de correção, 119254-66 ou versão posterior (SPARC) e 119255-66 ou versão posterior (x86).
O número máximo de regiões não globais a serem corrigidas é definido em um novo arquivo de configuração para patchadd, /etc/patch/pdo.conf . A versão 66 ou posterior desta correção funciona para todos os sistemas Solaris 10 e para as ferramentas de automação de correção de maior nível, como o Sun xVM Ops Center.
A região global é ainda corrigida primeiro. Quando a região global tiver terminada de ser corrigida, o número de regiões não globais definidas em num_proc= são corrigidas juntas. O número máximo é de 1,5 vezes o número de CPUs on-line, até o número de regiões não globais reais no sistema.
Um exemplo é:
O número de CPUs on-line é 4
A configuração é num_proc=6
Se houver mais regiões não globais do que este número no sistema, as primeiras 6 serão corrigidas em paralelo, e então as regiões não globais remanescentes serão corrigidas quando o processo terminar de corrigir o primeiro grupo.
Usando o Solaris Live Upgrade, assim como a nova correção para gerenciar a correção fornece a capacidade de emergência se ocorrerem problemas. Você pode corrigir um ambiente de boot inativo enquanto o sistema ainda está em produção, e reinicializar de volta para o ambiente de boot original (BE) se forem descobertos problemas no novo BE.
Consulte também Solaris 10 10/09: Como corrigir regiões não globais em paralelo..
Para atualizar rapidamente todos os pacotes para a região, de modo que esses pacotes coincidam ao que seria visto com uma região não global recém-instalada sobre o host, as regiões podem ser destacadas, enquanto a região global é atualizada e, em seguida, recolocada com a opção -U para corresponder ao nível da região global. ConsulteUsando a atualização na anexação como uma solução de correção para mais informações.
Todas as correções aplicadas no nível de região global são aplicados em todas as regiões. Quando uma região global é instalada, ela está no mesmo nível de correção que a região global. Quando a região global é corrigida, todas as regiões não globais são da mesma forma corrigidas. Esta ação mantém o mesmo nível de correção em todas as regiões.
O utilitário do sistema patchadd descrito na página do manual patchadd(1M) é usado para adicionar correções em um sistema com regiões instaladas.
Para adicionar uma correção à região global e a todas as regiões não globais, execute patchadd como administrador global na região global.
Quando patchadd é usado na região global, as seguintes condições se aplicam:
O utilitário patchadd é capaz de adicionar as correções à região global e a todas as regiões não globais somente. Esta é a ação padrão.
O utilitário patchadd não pode adicionar as correções à região global somente ou a um subconjunto das regiões não globais.
Quando você adiciona uma correção à região global e a todas as regiões não globais, não é necessário considerar se a correção afeta áreas que são compartilhadas a partir da região global.
As seguintes etapas são executadas pelo utilitário patchadd:
A correção é adicionada à região global.
O banco de dados da correção na região global é atualizado.
A correção é adicionada a cada região não global.
O banco de dados da correção em cada região não global é atualizado.
Quando usado em uma região global pelo administrador de região, patchadd pode somente ser usado para adicionar correções a essa região. Uma correção pode ser adicionada a uma região não global nos seguintes casos:
A correção não afeta qualquer área da região que seja compartilhada a partir da região global.
Todos os pacotes na correção são definidos como SUNW_PKG_ALLZONES=false .
As seguintes etapas são executadas pelo utilitário patchadd:
A correção é adicionada à região.
O banco de dados da correção na região é atualizado.
A lista abaixo especifica a interação entre a opção -G e a variável SUNW_PKG_ALLZONES ao se adicionar uma correção em regiões globais e não globais.
Se quaisquer pacotes tiverem SUNW_PKG_ALLZONES=TRUE, este uso resulta em erro e em nenhuma ação.
Se nenhum pacote tiver SUNW_PKG_ALLZONES=TRUE, a correção é aplicado a pacote(s) na região global somente.
Se quaisquer pacotes tiverem SUNW_PKG_ALLZONES=TRUE, a correção é aplicado a esse(s) pacote(s) em todas as regiões.
Se quaisquer pacotes não tiverem SUNW_PKG_ALLZONES=TRUE, a correção é aplicado a esse(s) pacote(s) em todas as regiões apropriadas. Somente região global, pacotes são instalados somente na região global.
Se quaisquer pacotes tiverem SUNW_PKG_ALLZONES=TRUE, este uso resulta em erro e em nenhuma ação.
Se nenhum pacote tiver SUNW_PKG_ALLZONES=TRUE, a correção é aplicado a pacotes na região não global somente.
O utilitário do sistema patchrm descrito na página do manual patchrm(1M) é usado para remover correções em um sistema com regiões instaladas.
Como o administrador global, você pode usar o utilitário patchrm na região global para remover correções. O utilitário patchrm não pode remover correções da região global somente ou de um subconjunto das regiões não globais.
Como o administrador de região, você pode usar o utilitário patchrm em uma região global para remover correções somente de uma região não global. Correções não podem afetar áreas que são compartilhadas.
Cada pacote respectivo da região, correção e banco de dados de registro de produto descreve completamente todo o software instalado disponível na região. Toda verificação de dependência para a instalação de software e correções adicionais é executada sem acesso a qualquer outro banco de dados da região, a menos que um pacote ou uma correção esteja sendo instalado ou removido na região global e uma ou mais regiões não globais. Neste caso, o banco de dados de região não global apropriado deve ser acessado.
Para obter mais informações sobre o banco de dados, consulte a página do manual pkgadm(1M).
Solaris 10 1/06: Nesta versão, este capítulo foi completamente revisado. Este capítulo documenta os procedimentos de pacote e correção atuais em um sistema com regiões não globais instaladas.
Solaris 10 6/06: Uma observação foi adicionada para o procedimento Como adicionar um pacote somente à região global.
Solaris 10 8/07: Uma observação foi removida da tarefa Como aplicar uma correção somente à região global.
Para obter uma lista completa dos novos recursos do Solaris 10 e uma descrição das versões do Solaris, consulte Novidades no Oracle Solaris 10 9/10.
Este capítulo descreve como adicionar e remover pacotes e correções em um sistema com regiões instaladas. Outras tarefas associadas a gerenciamento de pacotes e correções, como verificação de configurações de parâmetro de pacotes e obtenção de informações de pacotes, também são tratadas. Para uma visão geral de conceitos de patch e pacote em um sistema com regiões instaladas, consulte o Capítulo 25Sobre pacotes e correções em um sistema do Solaris com regiões instaladas (visão geral).
Tarefa |
Descrição |
Para instruções |
---|---|---|
Adicione um pacote. |
Adicione um pacote em um sistema com regiões instaladas. |
Adição de um pacote em um sistema do Solaris com regiões instaladas |
Verifique as informações do pacote. |
Verifique as informações do pacote em um sistema com regiões instaladas. |
Verificação de informações de um pacote em um sistema do Solaris com regiões instaladas |
Remova um pacote. |
Remova um pacote em um sistema com regiões instaladas. |
Remoção de um pacote de um sistema do Solaris com regiões instaladas |
Aplique uma correção. |
Aplique uma correção em um sistema com regiões instaladas. |
Aplicação de uma correção em um sistema do Solaris com regiões instaladas |
Remova uma correção. |
Remova uma correção em um sistema com regiões instaladas. |
Remoção de uma correção em um sistema com regiões instaladas |
(Opcional) Verifique as configurações do parâmetro do pacote. |
Ao adicionar ou remover pacotes, verifique se as configurações dos parâmetros do pacote oferecem suporte à ação que você deseja executar. |
Verificação das configurações do parâmetro do pacote em um sistema com regiões instaladas |
Você pode usar o utilitário do sistema pkgadd descrito na página do manual pkgadd(1M) para executar as seguintes tarefas:
Adicionar um pacote somente à região global
Adicionar um pacote à região global e a todas as regiões não globais
Adicionar um pacote já instalado na região global às regiões não globais
Adicionar um pacote somente a uma região não global especificada
Para adicionar pacotes, as configurações do parâmetro do pacote SUNW_PKG_ALLZONES e SUNW_PKG_HOLLOW devem coincidir com o valor correto, true ou false. Do contrário, o resultado desejado não será alcançado. Para obter mais informações sobre o efeito destas configurações do parâmetro do pacote, consulte Sobre pacotes e regiões. Para obter mais informações sobre como verificar as configurações do parâmetro do pacote, consulte Verificação das configurações do parâmetro do pacote em um sistema com regiões instaladas.
Para adicionar um pacote somente à região global, o parâmetro do pacote SUNW_PKG_ALLZONES deve ser definido como false.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Enquanto estiver na região global, execute o comando pkgadd -d seguido do local do pacote, da opção -G e, em seguida, no nome do pacote.
Se instalar o pacote a partir de um CD-ROM, digite:
global# pkgadd -d /cdrom/cdrom0/directory -G package_name |
Se instalar o pacote a partir de um diretório para o qual foi copiado, digite:
global# pkgadd -d disk1/image -G package_name |
onde disk1 é o local em que o pacote foi copiado.
Se o utilitário pkgadd for executado sem a opção -G e SUNW_PKG_THISZONE=true, o pacote especificado será adicionado à região (global) atual por padrão.
Não use a opção -G de pkgadd neste procedimento.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Enquanto estiver na região global, execute o comando pkgadd -d seguido do local do pacote e, em seguida, do nome do pacote.
Se instalar o pacote a partir de um CD-ROM, digite:
global# pkgadd -d /cdrom/cdrom0/directory package_name |
Se instalar o pacote a partir de um diretório para o qual foi copiado, digite:
global# pkgadd -d disk1/image package_name |
onde disk1 é o local em que o pacote foi copiado.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Na região global, use pkgrm para remover o pacote.
Adicione o pacote sem usar a opção -G.
Para adicionar um pacote somente a uma região não global especificada, o parâmetro do pacote SUNW_PKG_ALLZONES deve ser definido para false. Não use a opção pkgadd - G neste procedimento, do contrário a operação falhará.
É necessário ser administrador de região na região não global para executar este procedimento.
Efetue login na região não global como o administrador de região.
Enquanto estiver na região não global, my-zone neste procedimento, execute o comando pkgadd -d seguido do local do pacote e, em seguida, do nome do pacote.
Se instalar o pacote a partir de um CD-ROM, digite:
my-zone# pkgadd -d /cdrom/cdrom0/directory package_name |
Se instalar o pacote a partir de um diretório para o qual foi copiado, digite:
my-zone# pkgadd -d disk1/image package_name |
onde disk1 é o local em que o pacote foi copiado.
Você pode consultar o banco de dados de pacotes de software da região global e das regiões não globais usando o comando pkginfo. Para obter informações sobre este comando, consulte a página do manual pkginfo(1).
Para verificar o banco de dados do pacote de software somente para a região global, use pkginfo seguido do nome do pacote.
global% pkginfo package_name |
global% pkginfo SUNWcsr SUNWcsu system SUNWcsr Core Solaris, (Root) system SUNWcsu Core Solaris, (Usr) |
Para verificar o banco de dados do pacote de software em uma região não global específica, efetue login na região não global e use pkginfo seguido do nome do pacote.
my-zone% pkginfo package_name |
my-zone% pkginfo SUNWcsr SUNWcsu system SUNWcsr Core Solaris, (Root) system SUNWcsu Core Solaris, (Usr) |
Você pode usar o utilitário do sistema pkgrm descrito na página do manual pkgrm(1M) para executar as seguintes tarefas:
Remover um pacote de uma região global e de todas as regiões não globais
Remover um pacote somente de uma região não global especificada
As configurações do parâmetro do pacote SUNW_PKG_ALLZONES e SUNW_PKG_HOLLOW devem coincidir com o valor correto, true ou false, para remover pacotes. Do contrário, o resultado desejado não será alcançado. Para obter mais informações sobre o efeito destas configurações do parâmetro do pacote, consulte Sobre pacotes e regiões. Para obter mais informações sobre como verificar as configurações do parâmetro do pacote, consulte Verificação das configurações do parâmetro do pacote em um sistema com regiões instaladas.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Enquanto estiver na região global, execute o comando pkgrm seguido do nome do pacote.
global# pkgrm package_name |
Para remover um pacote somente de uma região não global especificada, o parâmetro do pacote SUNW_PKG_ALLZONES deve ser definido para false.
É necessário ser administrador de região na região não global para executar este procedimento.
Efetue login na região não global como o administrador de região.
Enquanto estiver na região não global, my-zone neste procedimento, execute o comando pkgrm seguido do nome do pacote.
my-zone# pkgrm package_name |
Você pode usar o utilitário do sistema pkgadd descrito na página do manual patchadd(1M) para executar as seguintes tarefas:
Aplicar uma correção somente à região global
Aplicar uma correção à região global e a todas as regiões não globais
Aplicar uma correção somente a uma região não global especificada
Solaris 10 3/05 até Solaris 10 11/06: Se estiver aplicando correção a um pacote que foi adicionando usando-se o comando pkgadd com a opção -G, a correção deve ser aplicada ao pacote usando-se o comando patchadd com a opção -G. Esta restrição foi removida na versão Solaris 8/07.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Execute o comando patchadd com a opção -G, seguido da ID da correção.
global# patchadd -G patch_id |
É necessário ser administrador global na região global para executar este procedimento.
Consulte também Solaris 10 10/09: Correção de regiões paralelas para reduzir o tempo de correção e Solaris 10 10/09: Como corrigir regiões não globais em paralelo..
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 .
Execute o comando patchadd seguido da ID da correção.
global# patchadd patch_id |
Para aplicar uma correção somente a uma região não global especificada, o parâmetro de pacote SUNW_PKG_ALLZONES para todos os pacotes no conjunto de correções deve ser definido como false.
É necessário ser administrador de região na região não global para executar este procedimento.
Efetue login na região não global como o administrador de região.
Enquanto estiver na região não global, my-zone neste procedimento, execute o comando patchadd seguido da ID da correção.
my-zone# patchadd patch_id |
Defina o número máximo de regiões não globais a serem corrigidas em paralelo no arquivo de configuração patchadd, /etc/patch/pdo.conf . Quando a região global tiver terminada de ser corrigida, o número de regiões não globais definidas em num_proc= são corrigidas juntas.
Se executar versões anteriores do Solaris 10 10/09, baixe o patch 119254-66 ou versão posterior (SPARC) ou 119255-66 ou versão posterior (x86).
É necessário ser administrador global na região global para executar este procedimento.
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 .
(Opcional, somente para versões anteriores ao Solaris 10 10/09) faça o download da correção 119254-66 (SPARC) ou 119255-66 (x86).
No arquivo /etc/patch/pdo.conf, defina 6 regiões não globais a serem corrigidas junto em paralelo em um sistema com 4 CPUs on-line.
num_proc=6 |
Se houver mais do que 6 regiões não globais no sistema, as primeiras seis serão corrigidas em paralelo, e então as regiões não globais remanescentes serão corrigidas quando o processo terminar de corrigir as primeiras 6 regiões não globais.
Você pode usar o utilitário do sistema patchrm descrito na página do manual patchrm(1M) para executar as seguintes tarefas:
Remover uma correção de uma região global e de todas as regiões não globais
Remover uma correção somente de uma região não global especificada
É necessário ser administrador global na região global para executar este procedimento.
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 .
Execute o comando patchrm seguido da ID da correção.
global# patchrm patch_id |
Para remover uma correção de uma região não global especificada, o parâmetro de pacote SUNW_PKG_ALLZONES para todos os pacotes no conjunto de correções deve ser definido como false.
É necessário ser administrador de região na região não global para executar este procedimento.
Efetue login na região não global como o administrador de região.
Enquanto estiver na região não global, my-zone neste procedimento, execute o comando patchrm seguido da ID da correção.
my-zone# patchrm patch_id |
Antes de adicionar ou remover um pacote de software, você pode usar o comando pkgparam para verificar as configurações do parâmetro do pacote. Esta etapa é opcional. Esta verificação também pode ser feita quando você tiver de resolver o problema de um pacote não ser adicionado ou removido como o esperado. Para obter informações sobre exibição de valores de parâmetros de pacotes, consulte a página do manual pkgparam(1).
Para verificar a configuração do parâmetro de pacote de um pacote já instalado em uma região global ou não global, use pkgparam seguido do nome do pacote e do nome do parâmetro.
my-zone% pkgparam package_name SUNW_PKG_ALLZONES true my-zone% pkgparam package_name SUNW_PKG_HOLLOW false |
Para verificar a configuração do parâmetro de pacote de uma pacote desinstalado em software localizado em um CD-ROM, use pkgparam -d com o caminho do CD-ROM seguido no nome do pacote e do nome do parâmetro.
my-zone% pkgparam -d /cdrom/cdrom0/directory package_name SUNW_PKG_ALLZONES true my-zone% pkgparam -d /cdrom/cdrom0/directory package_name SUNW_PKG_HOLLOW false |
Este capítulo aborda os seguintes tópicos da administração de região geral:
Solaris 10 8/07: conexão à rede em regiões não globais com IP exclusivo
Fair share scheduler em um sistema do Solaris com regiões instaladas
Contabilidade estendida em um sistema do Solaris com regiões instaladas
Sobre backup de um sistema do Solaris com regiões instaladas
Comandos usados em um sistema do Solaris com regiões instaladas
Para obter informações sobre regiões com marca 1x, consulte a Parte III, 1x}Regiões com marca.
Solaris 10 1/06: Uma nova seção Desmontagem de sistemas de arquivos em regiões foi adicionada.
Solaris 10 1/06: Novas seções sobre backup de regiões e procedimentos de restauração foram adicionadas. Consulte Sobre backup de um sistema do Solaris com regiões instaladas
Solaris 10 6/06: Uma entrada ZFS foi adicionada à tabela em Montagem de sistemas de arquivos em regiões.
Solaris 10 8/07: As informações a seguir são novas ou foram atualizadas nesta versão.
Com esta versão, dois tipos de IP agora estão disponíveis para regiões não globais. Foram adicionadas informações sobre recursos disponíveis por tipo de IP. Consulte Conexão à rede em regiões não globais com IP compartilhado e Solaris 10 8/07: conexão à rede em regiões não globais com IP exclusivo.
O filtro de IP do Solaris agora pode ser usado em regiões com IP compartilhado. Para obter mais informações, consulte Filtro de IP do Solaris em regiões com IP compartilhado.
As informações sobre configurações de privilégios em regiões foram revisadas. Consulte a Tabela 27–1.
As informações em Comandos usados em um sistema do Solaris com regiões instaladas foram atualizadas.
Para obter uma lista completa dos novos recursos do Solaris 10 e uma descrição das versões do Solaris, consulte Novidades no Oracle Solaris 10 9/10.
A região global atua como a região padrão para o sistema e como uma região para o controle administrado do sistema geral. Há problemas administrativos associados a esta função dupla. Uma vez que aplicativos dentro da região têm acesso a processos e outros objetos do sistema em outras regiões, o efeito das ações administrativas pode ser mais amplos do que o esperado. Por exemplo, scripts de desligamento de serviço com freqüência usam pkill para sinalizar processos de um nome dado para sair. Quando esse script é executado a partir da região global, todos esses processos no sistema serão sinalizados, independentemente da região.
O escopo do sistema geral é com freqüência necessário. Por exemplo, para monitorar o uso de recursos do sistema geral, é necessário visualizar estatísticas de processos para todo o sistema. Uma visualização apenas da atividade da região global não identificaria informações relevantes de outras regiões no sistema que poderiam estar compartilhando alguns dos ou todos os recursos do sistema. Essa visualização é particularmente importante quando recursos do sistema, como a CPU, não têm uma partição restrita ao usarem facilidades de gerenciamento de recursos.
Assim, processos na região global podem observar processos e outros objetos em regiões não globais. Isso permite que esses processos tenham uma observação do sistema geral. A capacidade de controlar ou enviar sinais a processos em outras regiões é restrita pelo privilégio PRIV_PROC_ZONE. O privilégio é semelhante a PRIV_PROC_OWNER, porque o privilégio permite que processos sobrescrevam as restrições colocadas em processos sem privilégios. Neste caso, a restrição é que processos sem privilégio na região global não podem sinalizar ou controlar processos em outras regiões. Isto é verdadeiro quando os IDs de usuário dos processos coincidem ou o processo atuante tem o privilégio PRIV_PROC_OWNER. O privilégio PRIV_PROC_ZONE pode ser removido de outros processos privilegiados para restringir ações na região global.
Para obter informações sobre a correspondência de processos usando-se um zoneidlist, consulte as páginas do manual pgrep(1) pkill(1).
Somente processos na mesma região serão visíveis através das interfaces de chamada do sistema que tomam IDs de processo, como os comandos kill e priocntl. Para obter informações, consulte as páginas do manual kill(1) e priocntl(1).
O comando ps tem as seguintes modificações:
A opção -o é usada para especificar o formato de saída. Esta opção permite que você imprima o ID de região de um processo ou o nome da região na qual o processo está em execução.
A opção -z zonelist é usada para listas somente processos em regiões especificadas. As regiões podem ser especificadas por nome de região ou ID de região. Esta opção é útil somente quando o comando é executado na região global.
A opção -Z é usada para imprimir o nome da região associada ao processo. O nome é impresso sob o cabeçalho de coluna ZONE.
Para obter mais informações, consulte a página do manual ps(1).
Uma opção -z zonename foi adicionada para os utilitários do Solaris abaixo. Você pode usar esta opção para filtrar as informações a para incluir somente a região ou as regiões especificadas.
ipcs (consulte a página do manual ipcs(1))
pgrep (consulte a página do manual pgrep(1))
ptree (consulte a página do manual proc(1))
prstat (consulte a página do manual prstat(1M))
Para obter uma lista completa de alterações feitas em comandos, consulte a Tabela 27–5.
O nome do nó em /etc/nodename retornado por uname - n pode ser definido pelo administrador da região. O nome do nó deve ser exclusivo.
Esta seção fornece informações sobre os problemas do sistema de arquivos em um sistema do Solaris com regiões instaladas. Cada região tem sua própria seção na hierarquia do sistema de arquivos, enraizada em um diretório conhecido como a região root. Os processos na região podem acessar somente arquivos na parte da hierarquia que está localizada na raiz da região. O utilitário chroot pode ser usado em uma região, mas somente para restringir o processo a um caminho raiz dentro da região. Para obter mais informações sobre chroot, consulte chroot(1M).
A opção -o nosuid para o utilitário mount tem a seguinte funcionalidade:
Os processos de um binário setuid localizado em um sistema de arquivos que é montado usando-se a opção nosetuid não é executada com privilégios do bináriosetuid. Os processos são executados com os privilégios do usuário que executa o binário.
Por exemplo, se um usuário executa um binário setuid pertencente a root, os processos são executados com os privilégios do usuário.
Não é permitida a abertura de entradas especiais de dispositivo no sistema de arquivos. Este comportamento é equivalente a especificar a opção nodevices.
Esta opção específica do sistema está disponível para todos os sistemas de arquivos do Solaris que podem ser montados com utilitários mount, como descrito na página do manual mount(1M) Neste guia, esses sistemas de arquivos estão listados em Montagem de sistemas de arquivos em regiões. As capacidades de montagem também são descritas. Para obter mais informações sobre a opção -o nosuid, consulte “Accessing Network File Systems (Reference)” no System Administration Guide: Network Services .
Quando sistemas de arquivos são montados a partir do interior da região, a opção nodevices se aplica. Por exemplo, se uma região recebe acesso a um dispositivo de bloco (/dev/dsk/c0t0d0s7 ) e a um dispositivo básico (/dev/rdsk/c0t0d0s7) correspondentes a um sistema de arquivos UFS, o sistema de arquivos é montado automaticamente nodevices quando montado a partir do interior de uma região. Esta regra não se aplica a montagens especificadas através da configuração zonecfg.
As opções para a montagem de sistemas de arquivos em regiões não globais são descritas na tabela abaixo. Os procedimentos para essas alternativas de montagem são fornecidos em Configuração, verificação e comprometimento de uma região e Montagem de sistemas de arquivos em regiões não globais em execução.
Qualquer tipo de sistema de arquivos não listados tabela podem ser especificados na configuração se tiver um binário de montagem em /usr/lib/fstype/mount .
Sistema de arquivos |
Opções de montagem em uma região não global |
---|---|
AutoFS |
Não pode ser montado usando-se zonecfg, não pode ser montado manualmente a partir da região global para uma região não global. Pode ser montado a partir do interior da região. |
CacheFS |
Não pode ser usado em uma região não global. |
FDFS |
Pode ser montado usando-se zonecfg, pode ser montado manualmente a partir da região global para uma região não global, pode ser montado a partir do interior da região. |
HSFS |
Pode ser montado usando-se zonecfg, pode ser montado manualmente a partir da região global para uma região não global, pode ser montado a partir do interior da região. |
LOFS |
Pode ser montado usando-se zonecfg, pode ser montado manualmente a partir da região global para uma região não global, pode ser montado a partir do interior da região. |
MNTFS |
Não pode ser montado usando-se zonecfg, não pode ser montado manualmente a partir da região global para uma região não global. Pode ser montado a partir do interior da região. |
NFS |
Não pode ser montado usando-se zonecfg. V2, V3 e V4, que são as versões que atualmente têm suporte em regiões, podem ser montadas a partir do interior da região. |
PCFS |
Pode ser montado usando-se zonecfg, pode ser montado manualmente a partir da região global para uma região não global, pode ser montado a partir do interior da região. |
PROCFS |
Não pode ser montado usando-se zonecfg, não pode ser montado manualmente a partir da região global para uma região não global. Pode ser montado a partir do interior da região. |
TMPFS |
Pode ser montado usando-se zonecfg, pode ser montado manualmente a partir da região global para uma região não global, pode ser montado a partir do interior da região. |
UDFS |
Pode ser montado usando-se zonecfg, pode ser montado manualmente a partir da região global para uma região não global, pode ser montado a partir do interior da região. |
UFS |
Pode ser montado usando-se zonecfg, pode ser montado manualmente a partir da região global para uma região não global, pode ser montado a partir do interior da região. |
XMEMFS |
Pode ser montado usando-se zonecfg, pode ser montado manualmente a partir da região global para uma região não global, pode ser montado a partir do interior da região. O suporte a este sistema de arquivos será removido do sistema do Solaris em uma versão futura. |
ZFS |
Pode ser montado usando-se os tipos de recursos zonecfg dataset e fs. |
Para obter mais informações, consulte Como configurar a região, Montagem de sistemas de arquivos em regiões não globais em execução e a página do manual mount(1M).
A capacidade de desmontar um sistema de arquivos depende de quem executou a montagem inicial. Se um sistema de arquivos foi especificado como parte da configuração da região usando-se o comando zonecfg, a região global é proprietária dessa montagem e o administrador da região para a região não global não pode desmontar o sistema de arquivos. Se o sistema de arquivos foi montado a partir do interior da região não global, por exemplo especificando a montagem no arquivo /etc/vfstab da região, o administrador da região na região não global pode desmontar o sistema de arquivos.
Há restrições de segurança à montagem de determinados sistemas de arquivos a partir de uma região. Outros sistemas de arquivos expõem comportamento especial quando montados em uma região. Segue-se a lista de sistemas de arquivos modificados.
Autofs é um serviço de cliente que monta automaticamente o sistema de arquivos apropriado. Quando um cliente tenta acessar um sistema de arquivos que não está atualmente montado, o sistema de arquivos AutgoFS intercepta a solicitação e chama automountd para montar o diretório solicitado. Montagens do AutoFS estabelecidas no interior de uma região são locais para essa região. As montagens não podem ser acessadas a partir de outras regiões, inclusive a região global. As montagens são removidas quando a região é parada ou reinicializada. Para obter informações sobre AutoFS, consulte How Autofs Works no System Administration Guide: Network Services.
Cada região executa sua própria cópia de automountd. Os mapas automáticos e os tempos-limites são controlados pelo administrador da região. Não é possível acionar uma montagem em outra região atravessando-se um ponto de montagem do AutoFS para uma região não global a partir da região global.
Determinadas montagens do AutoFS são criadas no kernel quando outra montagem é acionada. Essas montagens não podem ser removidas usando-se a interface regular umount, porque devem ser montadas ou desmontadas como um grupo. Observe que esta funcionalidade é fornecida por desligamento de região.
MNTFS é um sistema de arquivos virtual que fornece acesso somente leitura à tabela de sistemas de arquivos montados para o sistema local. O conjunto de sistemas de arquivos visíveis usando-se mnttab a partir do interior da região não global é o conjunto de sistemas de arquivos montados na região, mais uma entrada para raiz (/) . Pontos de montagem com um dispositivo especial que não é acessível a partir do interior da região, como /dev/rdsk/c0t0d0s0, têm um conjunto de dispositivos semelhante ao do ponto de montagem. Todas as montagens no sistema são visíveis a partir da tabela /etc/mnttab da região global. Para obter mais informações sobre MNTFS, consulte o Capítulo 18, Mounting and Unmounting File Systems (Tasks), no System Administration Guide: Devices and File Systems.
Montagens do NFS estabelecidas no interior de uma região são locais para essa região. As montagens não podem ser acessadas a partir de outras regiões, inclusive a região global. As montagens são removidas quando a região é parada ou reinicializada.
Como documentado na página do manual mount_nfs(1M), um servidor de NFS não deve tentar montar seus próprios sistemas de arquivos. Assim, uma região não deve montar um sistema de arquivos NFS exportado pela região global. Regiões não podem ser servidores de NFS. A partir do interior de uma região, as montagens NFS se comportam como se montadas com a opção nodevices.
A saída do comando nfsstat somente pertence à região em que o comando é executado. Por exemplo, se o comando for executado na região global, somente informações a região global são relatadas. Para obter mais informações o comando nfsstat, consulte nfsstat(1M).
O comando zlogin falhará se qualquer um dos arquivos abertos ou qualquer parte do espaço de endereço residirem em NFS. Para obter mais informações, consulte Comando zlogin.
O sistema de arquivos /proc, ou PROCFS, fornece visibilidade de processos e restrições de acesso, assim como informações sobre a associação de regiões de processos. Somente processos na mesma região são visíveis através de /proc.
Processos na região global podem observar processos e outros objetos em regiões não globais. Isso permite que esses processos tenham uma observação do sistema geral.
A partir do interior de uma região, as montagens de procfs se comportam como se feitas com a opção nodevices. Para obter mais informações sobre procfs, consulte a página do manual proc(4).
O escopo do que pode ser montado através de LOFS é limitado à parte do sistema de arquivos que é visível para a região. Assim, não há restrições a montagens LOFS em uma região.
Ao usar o comando zonecfg para configurar sistemas de arquivos baseados em armazenamento que têm um binária fsck, como UFS, o administrador da região deve especificar um parâmetro raw. O parâmetro indica o dispositivo (caractere) básico, como /dev/rdsk/c0t0d0s7 . zoneadmd executa automaticamente o comando fsck em modo não interativo somente de verificação (fsck -m) neste dispositivo antes de montar o sistema de arquivos. Se fsck falhar, zoneadmd não pode colocar a região no estado de preparado. O caminho especificado por raw não pode ser um caminho relativo.
É um erro especificar um dispositivo para fsck de um sistema de arquivos que não fornece um binário fsck em /usr/lib/ fstype/fsck. É também um erro não especificar um dispositivo fsck se um binário fsck existir para esse sistema de arquivos.
Para obter mais informações, consulte O daemon zoneadmd e fsck(1M)
Você pode adicionar um conjunto de dados ZFS a uma região não global usando o comando zonecfg com o recurso add dataset. O conjunto de dados será visível e montado em uma região não global e não mais visível na região global. O administrador de região pode criar e destruir sistemas de arquivos dentro desse conjunto de dados, criar e destruir clones e modificar as propriedades do conjunto de dados.
O atributo zoned de zfs indica se um conjunto de dados foi adicionado a uma região não global.
# zfs get zoned tank/sales NAME PROPERTY VALUE SOURCE tank/sales zoned on local |
Se desejar compartilhar um conjunto de dados da região global, você pode adicionar um sistema de arquivos ZFS com montagem LOFS usando o comando zonecfg com o subcomando add fs. O administrador global é responsável para definição e pelo controle das propriedades do conjunto de dados.
Para mais informações sobre ZFS, consulte o Capítulo 10, Tópicos avançados do ZFS do Oracle Solaris, no Guia de administração do ZFS Oracle Solaris.
Regiões podem ser clientes NFS. Há suporte para os protocolos das versões 2, 3 e 4. Para obter mais informações sobre estas versões de NFS, consulte Features of the NFS Service no System Administration Guide: Network Services.
A versão padrão é a versão 4 do NFS. Você pode ativar outras versões de NFS em um cliente usando um dos seguintes métodos:
Você pode editar /etc/default/nfs para definir NFS_CLIENT_VERSMAX=number para que a região use por padrão a versão especificada. Consulte Setting Up NFS Services no System Administration Guide: Network Services . Use o procedimento Como selecionar diferentes versões de NFS em um cliente modificando o arquivo /etc/default/nfs no mapa de tarefas.
Você pode criar manualmente uma montagem de versão. Este método sobrescreve o conteúdo de /etc/default/nfs. Consulte Setting Up NFS Services no System Administration Guide: Network Services . Use o procedimento Como usar a linha de comando para selecionar diferentes versões de NFS em um cliente a partir do mapa de tarefas.
Observe que não é possível usar o comando mknod documentado na página do manual mknod(1M) para criar um arquivo especial em uma região não global.
Em espaço de nome do sistema de arquivos da região é um subconjunto do espaço de nome acessível a partir da região global. Processos não privilegiados na região global são impedidos de atravessar a hierarquia do sistema de arquivos de uma região não global através dos seguintes meios:
Especificação de que o diretório pai da raiz da regiões é pertencente à raiz e legível e executável somente por ela
Restrição de acesso a diretórios exportados por /proc
Observe que a tentativa de acessar nós de AutoFS montados por outra região irá falhar. O administrador global não deve ter mapas automáticos que passem para outros regiões.
Após a instalação de uma região não global, a região não deve ser acessada diretamente da região global por quaisquer comandos que não sejam utilitários de backup do sistema. Além disso, uma região não global não pode mais ser considerada segura depois de ter sido exposta a um ambiente desconhecido. Um exemplo seria uma região colocada em uma rede acessível publicamente, em que seria possível que a região fossem comprometida e o conteúdo de seus sistemas de arquivos alterados. Se houver qualquer possibilidade da ocorrência de comprometimento, a administrador global deve tratar a região como não confiável.
Qualquer comando que aceite uma raiz alternativa com o uso das opções -R ou - b (ou o equivalente) não deve ser usado quando o seguinte for verdadeiro:
O comando é executado na região global.
A raiz alternativa se refere a qualquer caminho raiz dentro de uma região não global, seja o caminho relativo à região global do sistema em execução atualmente seja a região global em uma raiz alternativa.
Um exemplo é a opção -R root_path para o utilitário pkgadd executado a partir da região global com um caminho raiz de região não global.
A lista de comandos, programas e utilitários que usam -R com um caminho raiz alternativo inclui o seguinte:
auditreduce
bart
flar
flarcreate
installf
localeadm
makeuuid
metaroot
patchadd
patchrm
pkgadd
pkgadm
pkgask
pkgchk
pkgrm
prodreg
removef
routeadm
showrev
syseventadm
A lista de comandos e programas que usam -b com um caminho raiz alternativo inclui o seguinte:
add_drv
pprosetup
rem_drv
roleadd
sysidconfig
update_drv
useradd
Em um sistema do Solaris com regiões instaladas, as regiões pode se comunicar entre si pela rede. Todas as regiões têm vinculações separadas, ou conexões, e todas as regiões podem executar seus próprios daemons de servidor. Esses daemons podem escutar no mesmo número de portas sem qualquer conflito. A pilhas de IP resolve conflitos ao considerar endereços IP para conexões de entrada. Os endereços IP identificam a região.
A pilha de IP em um sistema que oferece suporte a regiões implementa a separação do tráfego de rede entre regiões. Os aplicativos que recebem o tráfego IP podem somente receber tráfego enviado para a mesma região.
Cada interface lógica no sistema pertence a uma região específica, a região global por padrão. As interfaces lógicas de rede atribuídas a regiões através do utilitário zonecfg são usadas para a comunicação pela rede. Cada fluxo e cada conexão pertencem à região do processo que a abriu.
Vinculações entre fluxos de camada superior e interfaces lógicas são restritas. Um fluxo pode somente estabelecer vinculações a interfaces lógicas na mesma região. Da mesma forma, pacotes de uma interface lógica podem somente ser passados para grupos de camada superior na mesma região que a interface lógica.
Cada região tem seu próprio conjunto de vínculos. Cada região pode executar o mesmo aplicativo que escuta no mesmo número de portas sem falha de vínculos, porque o endereço já está em uso. Cada região pode executar sua própria versão dos seguintes serviços:
Daemon de serviços da Internet com um arquivo de configuração completo (consulte a página do manual inetd(1M))
sendmail (consulte a página do manual sendmail(1M))
apache (consulte a página do manual apache(1M))
Regiões que não sejam a região global têm acesso restrito à rede. As interfaces de soquete TCP e UDP padrão estão disponíveis, mas as interfaces de soquete SOCK_RAW são restritas ao Internet Control Message Protocol (ICMP). ICMP é necessário para detectar e relatar condições de erro de rede ou usar o comando ping.
Cada região que requer conectividade de rede tem um ou mais endereços IP dedicados. Esses endereços são associados às interfaces lógicas de rede que podem ser colocadas em uma região usando-se o comando ifconfig. Interfaces de rede de região configuradas pelo comando zonecfg serão automaticamente definidas e colocadas na região quando esta for inicializada. O comando ifconfig pode ser usado para adicionar ou remover interfaces lógicas quando a região está em execução. Somente o administrador global pode modificar a configuração da interface e as rotas de rede.
Dentro de uma região global, somente as interfaces de região estarão visíveis para ifconfig.
Para obter mais informações, consulte as páginas do manual ifconfig(1M) e if_tcp(7P).
Entre duas regiões na mesma máquina, a entrega de pacote é somente permitida se houver uma “rota correspondente”para o destino e a região na tabela de reenvio.
As informações correspondentes são implementadas como a seguir:
O endereço de origem para os pacotes é selecionado na interface de saída especificada pela rota correspondente.
Por padrão, o tráfego é permitido entre duas regiões que têm endereços na mesma sub-rede. A rota correspondente neste caso é a rota de interface para a sub-rede.
Se houver uma rota padrão para uma dada região, em que o gateway está em uma das sub-redes da região, o tráfego desse região para outras regiões será permitido. A rota correspondente neste caso é a rota padrão.
Se houver uma rota correspondente com o sinalizador RTF_REJECT, os pacotes acionam uma mensagem de ICMP inatingível. Se houver uma rota correspondente com o sinalizador RTF_BLACKHOLE, os pacotes serão descartados. O administrador global pode usar as opções do comando route descritas na tabela abaixo para criar rotas com estes sinalizadores.
Modificador |
Sinalizador |
Descrição |
---|---|---|
-reject |
RTF_REJECT |
Emite uma mensagem de ICMP inatingível quando não correspondente. |
-blackhole |
RTF_BLACKHOLE |
Descarta pacotes silenciosamente durante atualizações. |
Para obter mais informações, consulte route(1M)
O filtro de IP do Solaris fornece filtragem de pacotes e conversão de endereços de rede (NAT). Um filtro de pacote com informações de estado pode monitorar o estado de conexões ativas e usar as informações obtidas para determinar quais pacotes de rede terão permissão através do firewall. O filtro de IP do Solaris também inclui filtragem de pacotes sem informações de estado e a capacidade de criar e gerenciar grupos de endereços. Para mais informações adicionais, consulte o Capítulo 25, Oracle Solaris IP Filter (Overview), no System Administration Guide: IP Services.
O filtro de IP do Solaris pode ser ativado em regiões não globais através da ativação da filtragem de autorretornos, como descrito no Capítulo 26, Oracle Solaris IP Filter (Tasks), no System Administration Guide: IP Services.
O filtro de IP do Solaris é derivado do software de filtro de IP de código aberto.
O recurso de vários caminhos de rede IP (IPMP) oferece detecção de falha de interface física e falha de acesso de rede transparente para um sistema com várias interfaces no mesmo link de IP. IPMP também oferece propagação de carga de pacotes para sistemas com várias interfaces.
Toda a configuração de rede é feita na região global. Você pode configurar IPMP na região global e, em seguida, estender a funcionalidade para regiões não globais. A funcionalidade é estendida colocando-se o endereço da região em um grupo IPMP ao configurar a região. Em seguida, se uma das interfaces na região global falhar, os endereços da região não global migrarão para outra placa de interface de rede. Uma região de IP compartilhado pode possuir vários endereços IP, que podem ser parte de vários grupos IPMP e um determinado grupo IPMP pode ser utilizado por várias zonas de IP compartilhado.
Em uma dada região não global, somente as interfaces associadas à região são visíveis através do comando ifconfig.
Consulte Como estender a funcionalidade de vários caminhos de rede IP para regiões não globais com IP compartilhado. O procedimento de configuração de regiões é tratado em Como configurar a região. Para obter informações sobre recursos, componentes e uso de IPMP, consulte Capítulo 30, Introducing IPMP (Overview), no System Administration Guide: IP Services .
Uma região de região com IP exclusivo tem seu próprio estado relacionado a IP e variáveis de ajuste. À região é atribuída seu próprio conjunto de links de dados quando a região é configurada.
Para obter informações sobre recursos que podem ser usados em uma região não global com IP exclusivo, consulte Solaris 10 8/07: regiões não globais com IP exclusivo. Para obter informações sobre o ajuste de variáveis IP ndd, consulte o Oracle Solaris Tunable Parameters Reference Manual.
Regiões com IP exclusivo têm pilhas do TCP/IP separadas, de modo que a separação alcança a camada de link de dados. Um ou mais nomes de link de dados, que podem ser um NIC ou um VLAN em um NIC, são atribuídos a uma região com IP exclusivo pelo administrador global. O administrador de região pode configurar IP nesses links de dados com a mesma flexibilidade e as opções que na região global.
Um nome de link de dados pode ser atribuído exclusivamente a uma única região.
O comando dladm show-link pode ser usado para exibir links de dados atribuídos a regiões em execução.
Para obter mais informações, consulte dladm(1M)
Não há auto-retorno interno de pacotes IP entre regiões com IP exclusivo. Todos os pacotes são enviados para o link de dados. Normalmente, isso significa que os pacotes são enviados em uma interface de rede. Em seguida, dispositivos como Ethernet são ativados ou roteadores IP podem enviar os pacotes para o destino, que pode ser uma região diferente na mesma máquina que o remetente.
Há a mesma funcionalidade de filtro de IP que há na região global em uma região com IP exclusivo. O filtro de IP é também configurado da mesma maneira em regiões com IP exclusivo e na região global.
O recurso de vários caminhos de rede IP (IPMP) oferece detecção de falha de interface física e falha de acesso de rede transparente para um sistema com várias interfaces no mesmo link de IP. Além da tolerância a falhas, o IPMP também oferece propagação de carga de pacotes para sistemas com várias interfaces.
Toda a configuração de rede é feita na região global. Primeiro, várias interfaces de link de dados são atribuídas a uma região que usa zonecfg. As interfaces de link de dados devem estar anexadas à mesma sub-rede IP. IPMP pode então ser configurado a partir do interior da região de IP exclusivo pelo administrador de região. Vários grupos IPMP podem ser atribuídos a uma determinada região de IP exclusivo, mas esses grupos IPMP não podem ser compartilhados com outras regiões.
O conjunto de dispositivos disponíveis dentro de uma região é restrito para impedir que um processo em uma região interfira nos processos em execução em outras regiões. Por exemplo, um processo em uma região não pode modificar a memória do kernel ou o conteúdo do disco raiz. Assim, por padrão, somente determinados pseudodispositivos considerados seguros para uso em uma região estão disponíveis. Dispositivos adicionais podem ser disponibilizados dentro de regiões específicas usando-se o utilitário zonecfg.
O sistema de arquivos devfs descrito na página do manual devfs(7FS) é usado pelo sistema do Solaris para gerenciar /devices. Cada elemento neste espaço de nome representa o caminho físico para um dispositivo de hardware, pseudodispositivo ou dispositivo de conexão. O espaço de nome é um reflexo da árvore de dispositivos. Assim sendo, o sistema de arquivos é usado por uma hierarquia de diretórios e arquivos especiais de dispositivo.
O arquivo de hierarquia /dev, que é hoje parte do sistema de arquivos (raiz) /, consiste em links simbólicos, ou caminhos lógicos, para os caminhos físicos presentes em /devices. Aplicativos fazem referência ao caminho lógico para um dispositivo presente em /dev. O sistema de arquivos /dev é montado com auto-retorno na região usando uma montagem somente leitura.
A hierarquia de arquivos /dev é gerenciada por um sistema composto dos componentes na seguintes lista:
devfsadm (consulte a página do manual devfsadm(1M))
syseventd (consulte a página do manual syseventd(1M))
Biblioteca de informações do dispositivo libdevinfo (consulte a página do manual libdevinfo(3LIB))
Driver devinfo (consulte a página do manual devinfo(7D))
Gerenciador de coordenação de configuração (RCM) (consulte Reconfiguration Coordination Manager (RCM) Script Overview no System Administration Guide: Devices and File Systems)
Subsistemas que dependem de nomes de caminho de /devices não podem ser executados em regiões não globais até nomes de caminho de /dev serem estabelecidos.
Pode haver dispositivos que você deseja atribuir a regiões específicas. Permitir que usuários não privilegiados acessem dispositivos de bloco pode permitir que esses dispositivos sejam usados para causar pane no sistema, reinicialização de barramento ou outros efeitos adversos. Antes de fazer tais atribuições, leve em consideração os seguintes questões:
Antes de atribuir um serviço de fita SCSI a uma região específica, consulte a página do manual sgen(7D).
Colocar um dispositivo físico em mais de uma região pode criar um canal oculto entre regiões. Aplicativos de região global que usam tal dispositivo podem ensejar a possibilidade de dados comprometidos ou corrupção de dados por uma região não global.
Em uma região não global, você pode usar o comando modinfo descrito na página do manual modinfo(1M) para examinar a lista de módulos do kernel carregados.
A maioria das operações relacionadas ao gerenciamento do kernel, dispositivo e da plataforma não funcionará no interior de uma região não global, porque a modificação das configurações de hardware da plataforma viola o modelo de segurança da região. Essas operações incluem o seguinte:
Adição e remoção de drivers
Carregamento e descarregamento explícitos de módulos do kernel
Operações de inicialização de configuração dinâmica (DR)
Uso de facilidades que afetam o estado da plataforma física
Os seguintes utilitários não funcionam em uma região porque dependem de dispositivos que normalmente não estão disponíveis:
cdrecord (Consulte a página do manual no diretório /usr/share/man/man1 . )
cdrw (consulte a página do manual cdrw(1))
rmformat (consulte a página do manual rmformat(1))
add_drv (consulte a página do manual add_drv(1M))
disks (consulte a página do manual disks(1M))
prtconf (consulte a página do manual prtconf(1M))
prtdiag (consulte a página do manual prtdiag(1M))
rem_drv (consulte a página do manual rem_drv(1M))
O utilitário eeprom pode ser usado em uma região para visualizar configurações. O utilitário não pode ser usado para alterar configurações. Para obter mais informações, consulte as páginas do manual eeprom(1M) e openprom(7D).
Em geral, todos os aplicativos podem ser executados em uma região não global. No entanto, os seguintes tipos de aplicativos podem não ser adequados para este ambiente:
Aplicativos que usam operações privilegiadas que afetam o sistema como um todo. Exemplos incluem operações que definem o relógio do sistema global ou bloqueiam a memória física.
Os poucos aplicativos dependentes de determinados dispositivos que não existem em uma região não global, como /dev/kmem.
Aplicativos que esperam estar capacitados para gravar em /usr, no tempo de execução ou quando estão sendo instalados, atualizados ou recebendo correções. Isto porque, por padrão, /usr é somente leitura para uma região não global. Às vezes os problemas associados a este tipo de aplicativo podem ser mitigados sem alterar o próprio aplicativo.
Em uma região com IP compartilhado, aplicativos dependentes de dispositivos em /dev/ip.
Para obter informações adicionais sobre o uso da facilidade de gerenciamento de recurso em uma região, consulte também o capítulo que descreve a facilidade na Parte 1 deste guia.
Qualquer controle de recurso e atributo descritos nos capítulos sobre gerenciamento de recurso podem ser definidos no arquivo da região global e não global /etc/project , mapa de NIS ou no serviço de diretório LDAP. As configurações para uma dada região afetam somente essa região. Os controles de um projeto executado autonomamente em diferentes regiões pode ser definido individualmente em cada região. Por exemplo, o Projeto A na região global pode ser definido como project.cpu-shares=10, enquanto o Projeto A na região não global pode ser definido como project.cpu-shares=5. Pode haver diversas instâncias de rcapd em execução no sistema, com cada instância operando somente em sua própria região.
Os controles de recursos e os atributos usados em uma região para controlar projetos, tarefas e processos no interior dessa região estão sujeitos aos requisitos adicionados no que respeita a grupos e controles de recursos de região geral.
Uma regra “uma região, um grupo” se aplica a regiões não globais. Várias regiões não globais podem compartilhar os recursos de um grupo. Processos na região global, no entanto, podem ser vinculados a qualquer grupo por um processo suficientemente privilegiado. O controlador de recursos poold é executado somente na região global, em que há mais de um grupo sobre os quais eles podem operar. O utilitário poolstat executado em uma região não global exibe somente informações sobre o grupo associado à região. O comando pooladm executado sem argumentos em uma região não global exibe somente informações o grupo associado à região.
Controles de recursos de região geral não têm efeito quando estão definidos no arquivo project. O controle de recursos de região geral é definido através do utilitário zonecfg.
Esta seção descreve como usar o fair share scheduler (FSS) com regiões.
Os compartilhamentos de CPU do FSS para uma região são hierárquicos. Os compartilhamentos para as regiões globais e não globais são definidos pelo administrador global através do controle de recurso de região geral zone.cpu-shares. O controle de recursos project.cpu-shares pode então ser definido para cada projeto no interior dessa região para subdividir mais compartilhamentos definidos através do controle de região geral.
Para atribuir compartilhamentos de região usando-se o comando zonecfg, consulte Como definir zone.cpu-shares na região global. Para obter mais informações sobre project.cpu-shares, consulte Controles de recursos disponíveis. Consulte também Uso do fair share scheduler em um sistema do Solaris com regiões instaladas para obter procedimentos de exemplo que mostram como definir compartilhamentos em base temporária.
Você pode usar zone.cpu-shares para atribuir compartilhamentos do FSS na região global e em regiões não globais. Se o FSS for o agendador padrão no sistema e os compartilhamentos não estiverem atribuídos, cada região, incluindo a região global, receberá um compartilhamento por padrão. Se houver uma região não global no sistema e você der a essa região dois compartilhamentos através de zone.cpu-shares, isto definirá a proporção de CPU que a região global receberá em relação à região global. A taxa de CPU entre as duas regiões é 2:1.
O subsistema da contabilidade estendida coleta e relata informações para todo o sistema (inclusive regiões não globais) quando executado na região global. O administrador global pode também determinar o consumo de recursos com base em cada região.
O subsistema de contabilidade estendida permite diferentes configurações de contabilidade e arquivos em uma base por região para contabilidade baseada em processo e tarefa. Os registros exacct podem ser identificados com o nome de região EXD PROC ZONENAME para processos e o nome de região EXD TASK ZONENAME para tarefas. Registros de contabilidade são gravados nos arquivos de contabilidade da região global, assim como nos arquivos de contabilidade por região. Os registros EXD TASK HOSTNAME, EXD PROC HOSTNAME e EXD HOSTNAME contêm o valor uname -n para a região na qual o processo ou a tarefa foram executados, em vez do nome do nó da região global.
Para obter informações sobre a contabilidade do fluxo IPQoS, consulte o Capítulo 36, Using Flow Accounting and Statistics Gathering (Tasks), no System Administration Guide: IP Services .
Processos são restritos a um subconjunto de privilégios. A restrição de privilégios impede que uma região execute operações que possam afetar outras regiões. O conjunto de privilégios limita as capacidades de usuários privilegiados dentro da região. Para exibir a lista de privilégios disponíveis dentro de uma região, use o utilitário ppriv.
A tabela abaixo lista todos os privilégios do Solaris e o status de cada privilégio com relação às regiões. Privilégios opcionais não fazem parte do conjunto padrão de privilégios, mas podem ser especificados através da propriedade limitpriv . Privilégios necessários devem ser incluídos no conjunto de privilégios resultante. Privilégios proibidos não podem ser incluídos no conjunto de privilégios resultante.
A propriedade limitpriv está disponível a partir da versão Solaris 10 11/06.
Tabela 27–1 Status de privilégios em regiões
Privilégio |
Status |
Notas |
---|---|---|
cpc_cpu |
Opcional |
Acesso a determinados contadores cpc(3CPC) |
dtrace_proc |
Opcional |
Provedores fasttrap e pid; plockstat(1M) |
dtrace_user |
Opcional |
Provedores profile e syscall |
graphics_access |
Opcional |
Acesso de ioctl(2) a agpgart_io(7I) |
graphics_map |
Opcional |
Acesso de mmap(2) a agpgart_io(7I) |
net_rawaccess |
Opcional em regiões com IP compartilhado. Padrão em regiões com IP exclusivo. |
Acesso a pacote básico PF_INET/PF_INET6 |
proc_clock_highres |
Opcional |
Use de temporizadores de alta resolução |
proc_priocntl |
Opcional |
Controle de agendamento; priocntl(1) |
sys_ipc_config |
Opcional |
Aumento do tamanho do buffer de fila de mensagem de IPC |
sys_time |
Opcional |
Manipulação de tempo do sistema; xntp(1M) |
dtrace_kernel |
Proibido |
Sem suporte atualmente |
proc_zone |
Proibido |
Sem suporte atualmente |
sys_config |
Proibido |
Sem suporte atualmente |
sys_devices |
Proibido |
Sem suporte atualmente |
sys_linkdir |
Proibido |
Sem suporte atualmente |
sys_net_config |
Proibido |
Sem suporte atualmente |
sys_res_config |
Proibido |
Sem suporte atualmente |
sys_suser_compat |
Proibido |
Sem suporte atualmente |
proc_exec |
Necessário, padrão |
Usado para iniciar init(1M ) |
proc_fork |
Necessário, padrão |
Usado para iniciar init(1M ) |
sys_mount |
Necessário, padrão |
Necessário para montar sistemas de arquivos requeridos |
sys_ip_config |
Necessário, padrão em regiões com IP exclusivo Proibido em regiões com IP compartilhado |
Necessário para iniciar região e inicializar conexão à rede IP em região com IP exclusivo |
contract_event |
Padrão |
Usado por sistema de arquivos de contrato |
contract_observer |
Padrão |
Observação de contrato independentemente de UID |
file_chown |
Padrão |
Alterações de posse de arquivo |
file_chown_self |
Padrão |
Alterações de proprietário/grupo para arquivos próprios |
file_dac_execute |
Padrão |
Executa acesso independentemente de modo/ACL |
file_dac_read |
Padrão |
Lê acesso independentemente de modo/ACL |
file_dac_search |
Padrão |
Procura acesso independentemente de modo/ACL |
file_dac_write |
Padrão |
Grava acesso independentemente de modo/ACL |
file_link_any |
Padrão |
Vincula acesso independentemente de proprietário |
file_owner |
Padrão |
Outro acesso independentemente de proprietário |
file_setid |
Padrão |
Alterações de permissão para os arquivos setid, setgid, setuid |
ipc_dac_read |
Padrão |
Acesso de leitura IPC independentemente de modo |
ipc_dac_owner |
Padrão |
Acesso de gravação IPC independentemente de modo |
ipc_owner |
Padrão |
Outro acesso IPC independentemente de modo |
net_icmpaccess |
Padrão |
Acesso de pacote ICMP: ping(1M) |
net_privaddr |
Padrão |
Vinculação a portas privilegiadas |
proc_audit |
Padrão |
Geração de registros de auditoria |
proc_chroot |
Padrão |
Alteração de diretório root |
proc_info |
Padrão |
Exame de processo |
proc_lock_memory |
Padrão |
Bloqueio de memória; shmctl(2)e mlock(3C) Se o administrador de sistema atribuir este privilégio a uma região não global, considere também definir o controle de recurso zone.max-locked-memory para impedir que a região bloqueie toda a memória. |
proc_owner |
Padrão |
Controle de processo independentemente de proprietário |
proc_session |
Padrão |
Controle de processo independentemente de sessão |
proc_setid |
Padrão |
Configuração de usuário/grupo à discrição |
proc_taskid |
Padrão |
Atribuição de IDs de tarefa a chamador |
sys_acct |
Padrão |
Gerenciamento de contabilidade |
sys_admin |
Padrão |
Tarefas simples de administração de sistema |
sys_audit |
Padrão |
Gerenciamento de auditoria |
sys_nfs |
Padrão |
Suporte a cliente NFS |
sys_resource |
Padrão |
Manipulação de limite de recursos |
A tabela abaixo lista todos os privilégios do Solaris Trusted Extensions e o status de cada privilégio com relação às regiões. Privilégios opcionais não fazem parte do conjunto padrão de privilégios, mas podem ser especificados através da propriedade limitpriv .
Esses privilégios são interpretados somente se o sistema está configurado com Solaris Trusted Extensions.
Privilégio do Solaris Trusted Extensions |
Status |
Notas |
---|---|---|
file_downgrade_sl |
Opcional |
Defina a legenda de sensibilidade do arquivo ou diretório para uma legenda de sensibilidade que não domine a legenda de sensibilidade existente |
file_upgrade_sl |
Opcional |
Defina a legenda de sensibilidade do arquivo ou diretório para uma legenda de sensibilidade que domine a legenda de sensibilidade existente |
sys_trans_label |
Opcional |
Rótulos de conversão não dominados por rótulo de sensibilidade |
win_colormap |
Opcional |
Substituição de restrições a mapa de cores |
win_config |
Opcional |
Configura ou destrói recursos que são retidos permanentemente pelo servidor X |
win_dac_read |
Opcional |
Leitura do recurso de janela não pertencente ao ID de usuário do cliente |
win_dac_write |
Opcional |
Gravação em ou criação de recurso de janela não pertencente ao ID de usuário do cliente |
win_devices |
Opcional |
Desempenho de operações em dispositivos de entrada. |
win_dga |
Opcional |
Uso de extensões de protocolo X para acesso de gráfico; privilégios de buffer de quadro necessários |
win_downgrade_sl |
Opcional |
Alteração de rótulo de sensibilidade da janela de recursos para novo rótulo dominado pelo rótulo existente |
win_fontpath |
Opcional |
Adição de um caminho de fonte adicional |
win_mac_read |
Opcional |
Leitura do recurso de janela com um rótulo que domina o rótulo do cliente |
win_mac_write |
Opcional |
Gravação no recurso de janela com um rótulo não igual ao rótulo do cliente |
win_selection |
Opcional |
Movimento de dados de solicitação sem intervenção do confirmador |
win_upgrade_sl |
Opcional |
Alteração de rótulo de sensibilidade de recurso de janela para um novo rótulo não dominado por rótulo existente |
net_bindmlp |
Padrão |
Permite vinculação a uma porta de vários níveis (MLP) |
net_mac_aware |
Padrão |
Permite leitura para baixo através de NFS |
Para alterar privilégios em uma região não global, consulte Configuração, verificação e comprometimento de uma região.
Para inspecionar conjuntos de privilégios, consulte Uso do utilitário ppriv. Para obter mais informações sobre privilégios, consulte a página do manual ppriv(1) e System Administration Guide: Security Services.
O Internet Protocol Security Architecture (IPsec), que fornece proteção de diagrama IP, é descrito no Capítulo 19, IP Security Architecture (Overview), no System Administration Guide: IP Services . O protocolo Internet Key Exchange (IKE) é usado para gerenciar o material de entrada para autenticação e criptografia automáticas.
Para obter mais informações, consulte as páginas do manual ipsecconf(1M) e ipseckey(1M).
IPsec pode ser usado na região global. No entanto, IPsec em uma região não global não pode usar IKE. Assim, é necessário gerenciar as chaves e a diretiva de IPsec para regiões não globais usando o protocolo Internet Key Exchange (IKE) na região global. Use o endereço de origem que corresponde à região não global que você está configurando.
IPsec pode ser usado em regiões com IP exclusivo.
A auditoria do Solaris é descrita no Capítulo 28, Oracle Solaris Auditing (Overview), no System Administration Guide: Security Services. Para considerações de regiões associadas a auditoria, consulte as seguintes seções:
Capítulo 29, Planning for Oracle Solaris Auditing, no System Administration Guide: Security Services
Auditing and Solaris Zones no System Administration Guide: Security Services
Um registro de auditoria descreve um evento, como login em um sistema ou gravação em um arquivo. O registro é composto de símbolos, que são conjuntos de dados de auditoria. Com o uso do símbolo zonename, você pode configurar a auditoria do Solaris para identificar eventos de auditoria por região. O uso do símbolo zonename permite que você produza as seguintes informações:
Registros de auditoria que são marcados com o nome da região que gerou o registro
Um log de auditoria para uma região específica que o administrador global pode disponibilizar para o administrador de região.
As faixas de auditoria do Solaris são configuradas na região global. A política de auditoria é definida na região global e se aplica a processos em todas as regiões. Os registros de auditoria podem ser marcados com o nome da região em que ocorreu o evento. Para incluir nomes de região em registros de auditoria, é necessário editar o arquivo /etc/security/audit_startup antes de instalar qualquer região não global. A seleção de nome de região diferencia maiúsculas de minúsculas.
Para configurar auditoria na região global para incluir todos os registros de auditoria da região, adicione esta linha ao arquivo /etc/security/audit_startup:
/usr/sbin/auditconfig -setpolicy +zonename |
Como administrador global na região global, executar o utilitário auditconfig :
global# auditconfig -setpolicy +zonename |
Para obter informações adicionais, consulte as páginas do manual audit_startup(1M) e auditconfig(1M), e “Configuring Audit Files (Task Map)” in System Administration Guide: Security Services.
Quando uma região não global é instalada, o arquivo audit_control e o arquivo audit_user na região global são copiados para o diretório /etc/security da região. Estes arquivos podem requerer modificação para refletir as necessidade de auditoria da região.
Por exemplo, cada região pode ser configurada para fazer a auditoria de alguns usuários de maneira diferente da de outros. Para aplicar diferentes critérios de pré-seleção por usuário, os arquivos audit_control e audit_user devem ser editados. O arquivo audit_user na região não global também pode requerer revisões para refletir a base de usuário para a região, se necessário. Uma vez que cada região pode ser configurada de maneira diferente com relação a usuários de auditoria, é possível que o arquivo audit_user seja vazio.
Para obter informações adicionais, consulte as páginas do manual audit_control(4) e audit_user(4).
Por incluir o símbolo zonename como descrito em Configuração de auditoria na região global, os registros de auditoria do Solaris podem ser categorizados por região. Registros de diferentes regiões podem em seguida ser reunidos usando-se o comando auditreduce para criar logs para uma região específica.
Para obter mais informações, consulte as páginas do manual audit_startup(1M) e auditreduce(1M).
O comando coreadm é usado para especificar o nome e o local de arquivos de núcleo produzidos por processos que terminam anormalmente. Caminhos de arquivos de núcleo que incluem o zonename da região em que o processo é executado podem ser produzidos especificando-se a variável %z. O nome do caminho é relativo ao diretório raiz de uma região.
Para obter mais informações, consulte as páginas do manual coreadm(1M) e core(4).
Programas DTrace que somente requerem os privilégios dtrace_proc e dtrace_user podem ser executados em uma região não global. Para adicionar esses privilégios ao conjunto de privilégios disponíveis na região não global, use a propriedade zonecfg limitpriv . Para instruções, consulte Como usar DTrace.
Os provedores com suporte através de dtrace_proc são fasttrap e pid. Os provedores com suporte através de dtrace_user são profile e syscall. As ações e os provedores de DTrace estão limitados ao âmbito da região.
Para obter mais informações, consulte também Privilégios em uma região não global.
Você fazer backups em regiões não globais individuais, ou fazer backup do sistema inteiro a partir da região global.
Uma vez que várias regiões não globais compartilham arquivos com a região global através do uso de montagens somente leitura do sistema de arquivos de auto-retorno (geralmente /usr, /lib, /sbin e /platform), é necessário usar um método de backup da região global para fazer o backup dos diretórios lofs.
Não faça backup dos sistemas de arquivos lofs compartilhados com a região global em regiões não globais. Uma tentativa do administrador não global de restaurar sistemas de arquivos lofs de uma região não global pode causar um problema grave.
Você pode escolher fazer os backups a partir da região global nos seguintes casos:
Você deseja fazer o backup de configurações das regiões não globais e de dados de aplicativos.
Sua principal preocupação é a capacidade de recuperar em situação de desastre. Se precisar restaurar tudo ou quase tudo no sistema, inclusive os sistemas de arquivos raiz das regiões e os dados de configuração correspondentes, assim como os dados da região global, os backups devem se dar na região global.
Você deseja usar o comando ufsdump para fazer um backup de dados. Uma vez que a importação de um dispositivo de disco físico para uma região não global alteraria o perfil de segurança da região, ufsdump deve ser usado somente a partir da região global.
Você tem um software comercial de backup de rede.
O software de backup de rede deve ser configurado para ignorar todos os sistemas de arquivos lofsherdados, se possível. O backup deve ser feito quando a região e seus aplicativos tornaram os dados inativos para o backup.
Você pode resolver fazer backups dentro de regiões não globais nos seguintes casos:
O administrador de região não global precisa da capacidade de recuperar a partir de falhas menos graves ou restaurar aplicativo ou dados de usuário específicos de uma região.
Você deseja usar programas que fazem backup de arquivo por arquivo, como tar ou cpio. Consulte as páginas do manual tar(1) e cpio(1).
Você usa o software de backup de um determinado aplicativo ou serviço em execução em uma região. Pode ser difícil executar o software de backup a partir da região global, porque os ambientes de aplicativos, como caminho de diretório e software instalado, seriam diferentes entre a região global e a região não global.
Se o aplicativo puder efetuar um instantâneo em sua própria agenda de backup em cada região não global e armazenar esse backup em um diretório gravável exportado da região global, o administrador da região global poderá pegar cada backup individual como parte da estratégia de backup a partir da região global.
Você pode fazer backup de tudo na região não global, ou, porque a configuração de uma região se altera com menor freqüência, pode fazer backup somente de dados de aplicativos.
Se os dados de aplicativos forem mantidos em uma determinada parte do sistema de arquivos, você pode decidir fazer backups regulares somente desses dados. O backup do sistema de arquivos raiz da região pode não ter sido feito com a mesma freqüência, porque ele se altera com menor freqüência.
Você terá de determinar onde o aplicativo colocará seus arquivos. Os arquivos podem ser armazenados nos seguintes locais:
Pastas base de usuários
/etc para configuração de arquivos de dados
/var
Supondo-se que o administrador de aplicativos sabe onde os dados estão armazenados, pode ser possível criar um sistema em que um diretório gravável por região seja disponibilizado para cada região. Cada região pode então armazenar seus próprios backups, e o administrador global pode tornar esse local um dos locais no sistema para backup.
Se os dados do aplicativo do banco de dados não estiver em seu próprio diretório, as seguintes regras serão aplicadas:
Primeiro se certifique de que o banco de dados esteja em um estado consistente.
Os bancos de dados devem ficar inativos, porque possuem buffers internos para liberar para disco. Certifique-se de os bancos de dados de regiões não globais tenham baixado antes de iniciar o backup a partir da região global.
Dentro de cada região, use recursos do sistema de arquivos para fazer um instantâneo dos dados, em seguida faça o backup de instantâneos diretamente a partir da região global.
Este processo irá minimizar o tempo transcorrido para a janela de backup e remover a necessidade de backup de clientes/módulos em todas as regiões.
Cada região não global pode tirar um instantâneo dos sistemas de arquivos privados quando é conveniente para essa região e o aplicativo foi brevemente desativado. Posteriormente, a região global poderá fazer o backup de cada instantâneo e colocá-lo em fita após o aplicativo voltar a estar disponível.
Este método tem as seguintes vantagens:
Menos dispositivos de fita são necessários.
Não há necessidade de coordenação entre regiões não globais.
Não há necessidade de atribuir dispositivos diretamente a regiões, o que melhora a segurança.
Geralmente, este método mantém o gerenciamento do sistema na região global, o que é preferível.
No caso de uma restauração em que os backups foram feitos a partir da região global, o administrador global pode reinstalar as regiões afetadas e, em seguida, restaurar arquivos dessa região. Observe que isto pressupõe o seguinte:
A região que está sendo restaurada tem a mesma configuração de quando o backup foi feito.
A região global não foi atualizada nem corrigida entre o momento em que o backup foi feito e o momento em que a região foi restaurada.
Do contrário, a restauração poderia sobrescrever alguns arquivos que deveriam mesclados manualmente.
Por exemplo, você poderia precisar de mesclar arquivos manualmente se a região global tivessem recebido correção após o backup, mas antes da restauração da região não global. Neste caso, você teria de tomar cuidado ao restaurar arquivos da região cujo backup foi feito, uma vez que o backup de um arquivo poderia não ser compatível com a região recém-instalada que foi criada depois dos taches terem sido aplicados à região global. Neste caso, você teria de examinar os arquivos individualmente e compará-los com as cópias na região recém-instalada. Na maioria dos casos, você verificará que o arquivo pode ser copiado diretamente, mas, em alguns casos, você deve mesclar as alterações feitas originalmente no arquivo na cópia recém-instalada ou corrigida.
Se todos os sistemas de arquivos na região global se perderem, a restauração de tudo na região global restaura também as regiões não globais, desde que os sistemas de arquivos raiz respectivos da região não global tenham sido incluídos no backup.
Os comandos identificados na Tabela 27–3 fornecem a interface administrativa principal para a facilidade de regiões.
Tabela 27–3 Comandos usados para administrar regiões
Referência de comandos |
Descrição |
---|---|
Efetue login em uma região não global |
|
Imprime o nome da região atual |
|
Administra regiões em um sistema |
|
Usado para definir a configuração de uma região |
|
Usado para mapear entre ID e nome de região |
|
Fornece descrição da facilidade de regiões |
|
Driver do dispositivo de console de região |
O daemon zoneadmd é o processo primário para gerenciar a plataforma virtual da região. A página do manual para o daemon zoneadmd é zoneadmd(1M). O daemon não constitui uma interface de programação.
Os comandos nas próxima tabela são usados com o daemon do resource capping.
Tabela 27–4 Comandos usados com rcapd
Referência de comandos |
Descrição |
---|---|
Monitora a utilização de recursos de projetos limitados. |
|
Configura o resource capping daemon, exibe o status atual do resource capping daemon, se já foi configurado, e ativa ou desativa limitação de recursos. Usado também para definir o limite de memória provisório. |
|
O resource capping daemon. |
Os comandos identificados na tabela abaixo foram modificados para uso em um sistema do Solaris com regiões instaladas. Esses comandos têm opções específicas de regiões ou apresentam informações de maneira diferente. Os comando estão listados por seção de página do manual.
Tabela 27–5 Comandos modificados para uso em um sistema do Solaris com regiões instaladas
Referência de comandos |
Descrição |
---|---|
Opção -z zone adicionada. Esta opção é útil somente quando o comando é executado na região global. |
|
Opção -z zone adicionada. Esta opção é útil somente quando o comando é executado na região global. |
|
Opção -z zoneidlist adicionada. Esta opção é útil somente quando o comando é executado na região global. |
|
A expressão zone foi adicionada para uso com a opção -l para listar todos os privilégios disponíveis na região atual. Use também a opção - v após zone para obter saída verbosa. |
|
ID de região pode ser usado em idlist e em -i idtype para especificar processos. Você pode usar o comando priocntl - i zoneid para mover processos em execução para uma classe de agendamento diferente em uma região não global. |
|
Opção -z zone adicionada somente a ptree. Esta opção é útil somente quando o comando é executado na região global. |
|
Adicionados zonename e zoneid à lista de nomes de format reconhecido usados com a opção -o. Adicionado -z zonelist para listar somente processos nas regiões especificadas. As regiões podem ser especificadas por nome de região ou ID de região. Esta opção é útil somente quando o comando é executado na região global. Adicionado -Z para imprimir o nome da região associada ao processo. O nome é impresso sob o cabeçalho de coluna adicional, ZONE . |
|
Adicionado zoneid à lista de argumentos válidos usados com a opção -i. |
|
Se executadas em uma região não global em que a facilidade de grupos está ativada, as opções -b, -c -g, -m, - p, -u, -w e -y exibem valores somente para processadores que estão no conjunto de processadores do grupo ao qual a região está vinculada. |
|
Símbolo zonename adicionado. |
|
Opção -z zone-name adicionada. Capacidade adicionada de obter o log de uma auditoria de uma região. |
|
Variável %z adicionada para identificar a região em que o processo foi executado. |
|
Opção -Z adicionada para exibir montagens em todas as regiões visíveis. |
|
Opção zone adicionada para uso de região global (o padrão), e -zone zonename para uso de região não global. |
|
Se executado em uma região não global em que a facilidade de grupos está ativada, as informações serão fornecidas para os processadores que estiverem em um conjunto de processadores do grupo ao qual a região está vinculada. |
|
Se executado na região global, kstats são exibidos para todas as regiões. Se executado em uma região não global, somente kstats com um zoneid correspondente serão exibidos. |
|
Se executado em uma região não global em que a facilidade de grupos está ativada, o comando exibirá somente linhas para os processadores que estiverem em um conjunto de processadores do grupo ao qual a região está vinculada. |
|
Quando usado na região global, exibe informações para todas as regiões. ndd nos módulos TCP/IP em uma região com IP exclusivo somente exibe informações para essa região. |
|
Exibe informações somente para a região atual. |
|
Exibe estatísticas somente para a região atual. |
|
Lista zoneid adicionada. Para obter informações sobre o uso de regiões com grupos de recursos, consulte também Grupos de recursos usados em regiões. |
|
Opção -z zoneidlist adicionada. Opção -Z também adicionada. Se executado em uma região não global em que a facilidade de grupos está ativada, a porcentagem de tempo de CPU recente usada pelo processo será usada somente para os processadores no conjunto de processadores do grupo ao qual a região está vinculada. As opções de saída -a, -t, -T, - J e -Z exibem um SWAP, em vez de uma coluna SIZE. A permuta relatada é a permuta total consumida pelos processos da região e pelas montagens tmpfs. Esse valor auxiliar na monitoração da permuta reservada por região, que pode ser usada para escolher uma configuração de zone.max-swap razoável. |
|
Se executado em uma região não global, somente informações sobre os processadores visíveis para a região serão exibidas. |
|
Alteração de uso. Quando especificada a partir do interior de uma região não global, a opção -F não tem efeito, porque o bit “não fragmentar” está sempre definido. |
|
Quando executado em uma região não global em que a facilidade de grupos está ativada, as estatísticas serão relatadas somente para os processadores que estiverem em um conjunto de processadores do grupo ao qual a região está vinculada. Aplica a saída da opção -p e os campos de relato page, faults e cpu. |
|
Adicionado AUDIT_ZONENAME para gerar um símbolo de ID de região com cada registro de auditoria. |
|
Argumento P_ZONEID id adicionado. |
|
Se o chamador estiver em uma região não global e a facilidade de grupos estiver ativada, mas o processador não estiver no conjunto de processadores do grupo ao qual a região está vinculada, um erro será retornado. |
|
Se o chamador estiver em uma região não global e a facilidade de grupos estiver ativada, mas o processador não estiver no conjunto de processadores do grupo ao qual a região está vinculada, um erro será retornado. |
|
P_ZONEID adicionado como idtype. Região adicionada para escolhas possíveis para a especificaçãoP_MYID. P_ZONEID adicionado para lista idtype válida na descrição de erro de EINVAL. |
|
Se o chamador estiver em uma região não global e a facilidade de grupos estiver ativada, mas o processador não estiver no conjunto de processadores do grupo ao qual a região está vinculada, um erro será retornado. |
|
Se o chamador estiver em uma região não global e a facilidade de grupos estiver ativada, mas o processador não estiver no conjunto de processadores do grupo ao qual a região está vinculada, um erro será retornado. |
|
Se o chamador estiver em uma região não global e a facilidade de grupos estiver ativada, mas o processador não estiver no conjunto de processadores do grupo ao qual a região está vinculada, um erro será retornado. |
|
PRIV_SYS_CONFIG alterado para PRIV_SYS_ADMIN. |
|
ENOENT será retornado se o arquivo apontado por file não for um caminho absoluto. |
|
Se o chamador estiver em uma região não global e a facilidade de grupos estiver ativada. o comportamento será equivalente à chamada com um psetid de PS_MYID. |
|
IDs de região adicionadas a processos de destino que podem ser especificados. ID de região adicionada à descrição de erro EINVAL. |
|
Seqüência de “zone” adicionada para o conjunto de todos os privilégios disponíveis dentro da região do chamador. |
|
Se o chamador estiver em uma região não global e a facilidade de grupos estiver ativada, mas o processador não estiver no conjunto de processadores do grupo ao qual a região está vinculada, um erro será retornado. |
|
Se o chamador estiver em uma região não global e a facilidade de grupos estiver ativada, sysconf(_SC_NPROCESSORS_CONF) e sysconf(_SC_NPROCESSORS_ONLN) retornarão o número de processadores no conjunto de processadores do grupo ao qual a região está vinculada. |
|
Função ucred_getzoneid() adicionada, que retorna o ID de região do processo ou -1, se o ID de região não estiver disponível. |
|
n_type: NT_ZONENAME.adicionado. Esta entrada contém uma seqüência que descreve o nome da região na qual o processo está em execução. |
|
Agora fornece parâmetros opcionais e uma variável de ambiente em suporte às regiões. |
|
Capacidade adicionada para obter informações sobre processos em execução em regiões. |
|
Campo in<zone name > adicionado que é usado quando a política de auditoria zonename está definida. |
|
PRIV_PROC_ZONE adicionado, que permite que um processo acompanhe ou envie sinais para processos em outras regiões. Consulte regiões(5). |
|
Chamadas de região ioctl() adicionadas. |
|
Parâmetro de região adicionado. |
|
Adicionado crgetzoneid(), que retorna o ID de região da credencial de usuário apontada por cr. |
Este capítulo aborda as tarefas de administração geral e fornece exemplos de uso.
Montagem de sistemas de arquivos em regiões não globais em execução
Adição de acesso a região não global a sistemas de arquivos específicos na região global
Uso de vários caminhos de rede IP em um sistema do Solaris com regiões instaladas
Solaris 10 8/07: administração de links de dados em regiões não globais com IP exclusivo
Uso do fair share scheduler em um sistema do Solaris com regiões instaladas
Esta seção lista novos recursos de produtos e identifica aprimoramentos de documentação neste guia.
Para obter uma lista completa dos novos recursos do Solaris 10 e uma descrição das versões do Solaris, consulte Novidades no Oracle Solaris 10 9/10.
Um novo procedimento para acesso a mídia foi adicionado. Consulte Como adicionar acesso a mídia de CD ou DVD em uma região não global..
Novos procedimentos para backup e restauração de arquivos em regiões foram adicionados. Consulte Backup de um sistema do Solaris com regiões instaladas e Restauração de uma região não global.
Novos procedimentos foram adicionados. Consulte Como montar um sistema de arquivos da região global para uma região não global e Como adicionar um diretório gravável em /usr em uma região não global.
Novos procedimentos foram adicionados. Consulte Como usar DTrace, Solaris 10 8/07: administração de links de dados em regiões não globais com IP exclusivo, Verificação do status de serviços SMF em uma região não global.
Use o utilitário ppriv para exibir os privilégios da região.
Use o utilitário ppriv com a opção -l para listar os privilégios disponíveis no sistema.
No prompt, digite ppriv -l zone para relatar o conjunto de privilégios disponíveis na região.
global# ppriv -l zone |
Você verá uma exibição semelhante a esta:
contract_event contract_observer cpc_cpu . . . |
Use o utilitário ppriv com a opção -l e a expressão zone para listar privilégios da região.
Efetue login na região não global. Este exemplo usa uma região nomeada my-zone.
No prompt, digite ppriv -l zone para relatar o conjunto de privilégios disponíveis na região.
my-zone# ppriv -l zone |
Você verá uma exibição semelhante a esta:
contract_event contract_observer file_chown . . . |
Use o utilitário ppriv com a opção -l, a expressão zone e a opção -v para listar os privilégios da região.
Efetue login na região não global. Este exemplo usa uma região nomeada my-zone.
No prompt, digite ppriv - l -v zone para relatar o conjunto de privilégios disponíveis na região, com uma descrição de cada privilégio.
my-zone# ppriv -l -v zone |
Você verá uma exibição semelhante a esta:
contract_event Allows a process to request critical events without limitation. Allows a process to request reliable delivery of all events on any event queue. contract_observer Allows a process to observe contract events generated by contracts created and owned by users other than the process's effective user ID. Allows a process to open contract event endpoints belonging to contracts created and owned by users other than the process's effective user ID. file_chown Allows a process to change a file's owner user ID. Allows a process to change a file's group ID to one other than the process' effective group ID or one of the process' supplemental group IDs. . . . |
Execute as etapas abaixo para usar a funcionalidade do DTrace, como descrita em Execução do DTrace em uma região não global.
Use a propriedade zonecfg limitpriv para adicionar os privilégios dtrace_proc e dtrace_user.
global# zonecfg -z my-zone zonecfg:my-zone> set limitpriv="default,dtrace_proc,dtrace_user" zonecfg:my-zone> exit |
Dependendo de seus requisitos, você pode adicionar um ou outro privilégio, ou ambos os privilégios.
Inicialize a região.
global# zoneadm -z my-zone boot |
Efetue login na região.
global# zlogin my-zone |
Execute o programa DTrace.
my-zone# dtrace -l |
Para verificar o status de serviços SMF em uma região não global nativa, use o comando zlogin.
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 .
A partir da linha de comando, digite o seguinte para mostrar todos os serviços, inclusive os desativados.
global# zlogin my-zone svcs -a |
Para obter mais informações, consulte o Capítulo 22Login em regiões não globais (tarefas) e svcs(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 .
Efetue login na região.
global# zlogin my-zone |
Execute o comando svcs com a opção -a para mostrar todos os serviços, inclusive os desativados.
my-zone# svcs -a |
Para obter mais informações, consulte o Capítulo 22Login em regiões não globais (tarefas) e svcs(1).
Você pode montar sistemas de arquivos em uma região não global em execução. Os procedimentos a seguir são tratados.
Como administrador global na região global, você pode importar dispositivos básicos e de bloco para a região não global. Após a importação dos dispositivos, o administrador de região tem acesso ao disco. O administrador de região pode em seguida criar um novo sistema de arquivos no disco e executar uma das seguintes ações:
Montar manualmente o sistema de arquivos
Colocar o sistema de arquivos em /etc/vfstab para que seja montado na inicialização da região
Como administrador global, você também pode montar um sistema de arquivos da região global para a região não global.
Este procedimento usada o driver do arquivo lofi, que exporta um arquivo como dispositivo de bloco.
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 .
Altere os diretórios para /usr/tmp.
global# cd /usr/tmp |
Crie um novo sistema de arquivos UFS.
global# mkfile 10m fsfile |
Anexe p arquivo como um dispositivo de bloco.
O primeiro slot disponível, que é /dev/lofi/1, se nenhum outro dispositivo lofi foi criado, é usado.
global# lofiadm -a `pwd`/fsfile |
Você também obterá o dispositivo de caracteres necessário.
Importe os dispositivos para a região my-zone .
global# zonecfg -z my-zone zonecfg:my-zone> add device zonecfg:my-zone:device> set match=/dev/rlofi/1 zonecfg:my-zone:device> end zonecfg:my-zone> add device zonecfg:my-zone:device> set match=/dev/lofi/1 zonecfg:my-zone:device> end |
Reinicialize a região.
global# zoneadm -z my-zone boot |
Efetue login na região e verifique se os dispositivos foram importados com êxito.
my-zone# ls -l /dev/*lofi/* |
Você deverá ver uma exibição semelhante a esta:
brw------- 1 root sys 147, 1 Jan 7 11:26 /dev/lofi/1 crw------- 1 root sys 147, 1 Jan 7 11:26 /dev/rlofi/1 |
Para obter mais informações, consulte as páginas do manual lofiadm(1M) e lofi(7D).
Você deve ser o administrador de região e ter o perfil Gerenciamento de região para executar este procedimento. Este procedimento usa o comando newfs, que está descrito na página do manual newfs(1M).
Torne-se superusuário ou tenha o perfil de direitos Gerenciamento de região na lista de perfis.
Na região my-zone, crie um novo sistema de arquivos no disco.
my-zone# newfs /dev/lofi/1 |
Responda sim no prompt.
newfs: construct a new file system /dev/rlofi/1: (y/n)? y |
Você deverá ver uma exibição semelhante a esta:
/dev/rlofi/1: 20468 sectors in 34 cylinders of 1 tracks, 602 sectors 10.0MB in 3 cyl groups (16 c/g, 4.70MB/g, 2240 i/g) super-block backups (for fsck -F ufs -o b=#) at: 32, 9664, 19296, |
Verifique se há erros no sistema de arquivos.
my-zone# fsck -F ufs /dev/rlofi/1 |
Você deverá ver uma exibição semelhante a esta:
** /dev/rlofi/1 ** Last Mounted on ** Phase 1 - Check Blocks and Sizes ** Phase 2 - Check Pathnames ** Phase 3 - Check Connectivity ** Phase 4 - Check Reference Counts ** Phase 5 - Check Cyl groups 2 files, 9 used, 9320 free (16 frags, 1163 blocks, 0.2% fragmentation) |
Monte o sistema de arquivos.
my-zone# mount -F ufs /dev/lofi/1 /mnt |
Verifique a montagem.
my-zone# grep /mnt /etc/mnttab |
Você verá uma exibição semelhante a esta:
/dev/lofi/1 /mnt ufs rw,suid,intr,largefiles,xattr,onerror=panic,zone=foo,dev=24c0001 1073503869 |
Este procedimento é usado para montar o dispositivo de bloco /dev/lofi/1 no caminho do sistema /mnt. O dispositivo de bloco contém um sistema de arquivos UFS. As seguintes opções são usadas:
logging é usado como a opção de montagem.
yes informa o sistema para montar automaticamente o sistema de arquivos quando a região é inicializada.
/dev/rlofi/1 é o dispositivo de caracteres (ou básico). O comando fsck é executado no dispositivo básico, se necessário.
Torne-se superusuário ou tenha o perfil de direitos Gerenciamento de região na lista de perfis.
Na região my-zone, adicione a seguinte linha a /etc/vfstab:
/dev/lofi/1 /dev/rlofi/1 /mnt ufs 2 yes logging |
Suponha que uma região tem zonepath /export/home/my-zone . Você deseja montar o disco /dev/lofi/1 da região global para /mnt na região não global.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Para montar o disco em /mnt na região não global, digite o seguinte a partir da região global:
global# mount -F ufs /dev/lofi/1 /export/home/my-zone/root/mnt |
Para obter informações sobre lofi, consulte as páginas do manual lofiadm(1M) e lofi(7D).
Este procedimento permite que você adicione acesso somente leitura à mídia de CD ou DVD em uma região não global. O sistema de arquivos Gerenciamento de volume é usado na região não global para montar a mídia. Um CD ou um DVD pode ser usado para instalar um produto na região não global. Este produto usa um DVD nomeado jes_05q4_dvd.
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 .
Determine se o sistema de arquivos Gerenciamento de volume está sendo executado em uma região global.
global# svcs volfs STATE STIME FMRI online Sep_29 svc:/system/filesystem/volfs:default |
(Opcional) Se o sistema de arquivos Gerenciamento de volume não estiver em execução na região global, inicie-o.
global# svcadm volfs enable |
Insira a mídia.
Procure a mídia na unidade.
global# volcheck |
Verifique se o DVD é montado automaticamente.
global# ls /cdrom |
Você verá uma exibição semelhante a esta:
cdrom cdrom1 jes_05q4_dvd |
Faça uma montagem de auto-retorno do sistema de arquivos com as opções ro,nodevices (somente leitura e sem dispositivos) na região não global.
global# zonecfg -z my-zone zonecfg:my-zone> add fs zonecfg:my-zone:fs> set dir=/cdrom zonecfg:my-zone:fs> set special=/cdrom zonecfg:my-zone:fs> set type=lofs zonecfg:my-zone:fs> add options [ro,nodevices] zonecfg:my-zone:fs> end zonecfg:my-zone> commit zonecfg:my-zone> exit |
Reinicialize a região não global.
global# zoneadm -z my-zone reboot |
Use o comando list zoneadm com a opção -v para verificar o status.
global# zoneadm list -v |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared 1 my-zone running /export/home/my-zone native shared |
Efetue login na região não global.
global# zlogin my-zone |
Verifique a montagem do DVD-ROM.
my-zone# ls /cdrom |
Você verá uma exibição semelhante a esta:
cdrom cdrom1 jes_05q4_dvd |
Instale o produto como descrito no guia de instalação do produto.
Saia da região não global.
my-zone# exit |
É aconselhável reter o sistema de arquivos /cdrom na região não global. A montagem sempre refletirá o conteúdo atual da unidade de CD-ROM, ou um diretório vazio se a unidade estiver vazia.
(Opcional) Se desejar remover o sistema de arquivos /cdrom da região não global, adote o procedimento abaixo.
global# zonecfg -z my-zone zonecfg:my-zone> remove fs dir=/cdrom zonecfg:my-zone> commit zonecfg:my-zone> exit |
Em uma região raiz esparsa, /usr é montado somente leitura a partir da região global. Você pode usar este procedimento para adicionar um diretório gravável, como /usr/local, em /usr na região.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Crie um diretório /usr/local na região global.
global# mkdir -p /usr/local |
Especifique um diretório na região global para servir como armazenamento de apoio para o diretório /usr/local da região.
global# mkdir -p /storage/local/my-zone |
Edite a configuração para a região my-zone.
global# zonecfg -z my-zone |
Adicione o sistema de arquivos montado com auto-retorno.
zonecfg:my-zone> add fs zonecfg:my-zone:fs> set dir=/usr/local zonecfg:my-zone:fs> set special=/storage/local/my-zone zonecfg:my-zone:fs> set type=lofs zonecfg:my-zone:fs> end zonecfg:my-zone> commit zonecfg:my-zone> exit |
Inicialize a região.
Este procedimento é usado para exportar diretórios de início ou outros sistemas de arquivos da região global para regiões não globais no mesmo sistema.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Adicione o sistema de arquivos montado com auto-retorno.
global# zonecfg -z my-zone zonecfg:my-zone> add fs zonecfg:my-zone:fs> set dir=/export/home zonecfg:my-zone:fs> set special=/export/home zonecfg:my-zone:fs> set type=lofs zonecfg:my-zone:fs> set options=nodevices zonecfg:my-zone:fs> end zonecfg:my-zone> commit zonecfg:my-zone> exit |
Adicione a seguinte linha no arquivo /etc/auto_home da região:
$HOST:/export/home/& |
Vários caminhos de rede IP (IPMP) em uma região de IP exclusivo é configurada da mesma maneira que na região global.
Você pode configurar uma ou mais interfaces físicas em um grupo de vários caminhos IP, ou grupo IPMP. Após configurar IPMP, o sistema monitora automaticamente as interfaces no grupo IPMP para verificar falhas. Se uma interface no grupo falhar ou for removida para manutenção, IPMP migrará automaticamente, ou falhará, os endereços IP da interface falha. O recipiente desses endereços é uma interface funcional no grupo IPMP da interface falha. O recurso de falha de IPMP preserva a conectividade e impede a interrupção de quaisquer conexões existentes. Adicionalmente, IPMP melhorar o desempenho geral da rede ao propagar automaticamente o tráfego de rede no conjunto de interfaces no grupo IPMP. Este processo é chamado de propagação de carga.
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 .
Configure grupos IPMP como descrito em Configuring IPMP Groups no System Administration Guide: IP Services .
Use este procedimento para configurar IPMP na região global e estenda a funcionalidade de IPMP para regiões não globais.
Cada endereço, ou interface lógica, deve ser associada a uma região não global quando você configura a região. Consulte Uso do comando zonecfg e Como configurar a região para obter instruções.
Este procedimento realiza o seguinte:
As placas bge0 e hme0 são configuradas em um grupo.
O endereço 192.168.0.1 é associado à região não global my-zone.
A placa bge0 é defina como interface física. Assim, o endereço IP é hospedado no grupo que contém as placas bge0 e hme0.
Em uma região em execução, você pode usar o comando ifconfig para fazer a associação. Consulte Interfaces de rede com IP compartilhado e a página do manual ifconfig(1M).
É necessário ser administrador global na região global para executar este procedimento.
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 .
Na região global, configure grupos IPMP como descrito em Configuring IPMP Groups no System Administration Guide: IP Services.
Use o comando zonecfg para configurar a região. Quando você configurar o recurso net, adicione o endereço 192.168.0.1 e a interface física bge0 e a configuração do roteador padrão à região my-zone:
zonecfg:my-zone> add net zonecfg:my-zone:net> set address=192.168.0.1 zonecfg:my-zone:net> set physical=bge0 zonecfg:my-zone:net> set defrouter=10.0.0.1 zonecfg:my-zone:net> end |
Somente bge0 deve ser visível na região não global my-zone.
Se bge0 falhar subseqüentemente e o endereço de dados bge0 falhar em hme0 na região global, os endereços de my-zone também migrarão.
Se o endereço 192.168.0.1 se mover para hme0, somente hme0 será visível agora na região não global my-zone. Esta placa será associada ao endereço 192.168.0.1 , e bge0 não será mais visível.
O comando dladm é usado a partir da região global para administrar links de dados.
O comando dladm pode ser usado com o subcomando show-linkprop para mostrar a atribuição de links de dados a regiões com IP exclusivo em execução.
É necessário ser administrador global na região global para administrar links de dados.
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 .
Mostre a atribuição de links de dados no sistema.
global# dladm show-linkprop |
Na primeira tela, a região 49bge, a que foi atribuído bge0, não foi inicializada
global# dladm show-linkprop LINK PROPERTY VALUE DEFAULT POSSIBLE bge0 zone -- -- -- ath0 channel 6 -- -- ath0 powermode ? off off,fast,max ath0 radio ? on on,off ath0 speed 11 -- 1,2,5.5,6,9,11,12,18,24,36,48,54 ath0 zone -- -- -- |
A região 49bge foi inicializada.
global# zoneadm -z 49bge boot |
O comando dladm show-linkprop é executado novamente. Observe que o link bge0 agora está atribuído a 49bge.
global# dladm show-linkprop LINK PROPERTY VALUE DEFAULT POSSIBLE bge0 zone 49bge -- -- ath0 channel 6 -- -- ath0 powermode ? off off,fast,max ath0 radio ? on on,off ath0 speed 11 -- 1,2,5.5,6,9,11,12,18,24,36,48,54 ath0 zone -- -- -- |
O comando dladm pode ser usado com o subcomando set-linkprop para atribuir temporariamente links de dados a regiões com IP exclusivo em execução. A atribuição persistente deve ser feita através do comando zonecfg.
É necessário ser administrador global na região global para administrar links de dados.
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 .
Use dladm set-linkprop com -t para adicionar bge0 a uma região em execução chamada excl.
global# dladm set-linkprop -t -p zone=excl bge0 LINK PROPERTY VALUE DEFAULT POSSIBLE bge0 zone excl -- -- |
A opção -p produz uma exibição usando um formato estável analisável por máquina.
O comando dladm pode ser usado com o subcomando reset-linkprop para redefinir o valor de link bge0 a ser não atribuído.
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 .
Use dladm reset-linkprop com -t para desfazer a atribuição de região do dispositivo bge0.
global# dladm reset-linkprop -t -p zone=excl bge0 LINK PROPERTY VALUE DEFAULT POSSIBLE bge0 zone excl -- -- |
A opção -p produz uma exibição usando um formato estável analisável por máquina.
Se a região em execução estiver usando o dispositivo, a reatribuição falhará e uma mensagem de erro será exibida. Consulte Região com IP exclusivo usa dispositivo, por isso dladm reset-linkprop falha.
Limites especificados através do comando prctl não são persistentes. Os limites estão em vigor somente até o sistema ser reinicializado. Para definir compartilhamentos em uma região permanentemente, consulte Como configurar a região e Como definir zone.cpu-shares na região global.
A região global recebe um compartilhamento por padrão. Você pode usar este procedimento para alterar a alocação padrão. Observe que você deve redefinir compartilhamentos alocados através do comando prctl sempre que reinicializar o sistema.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Use o utilitário prctl para atribuir dois compartilhamentos à região global:
# prctl -n zone.cpu-shares -v 2 -r -i zone global |
(Opcional) Para verificar o número de compartilhamentos atribuídos à região global, digite:
# prctl -n zone.cpu-shares -i zone global |
Para obter mais informações sobre o utilitário prctl, consulte a página do manual prctl(1).
Esse procedimento pode ser usado para qualquer região, não apenas na região global.
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 .
Use o comando prctl para especificar um novo valor para cpu-shares.
# prctl -n zone.cpu-shares -r -v value -i zone zonename |
idtype é zonename ou zoneid. value é o novo valor.
Esta seção trata de tarefas associadas ao uso de perfis de direito em regiões não globais.
O perfil Gerenciamento de região confere o poder para gerenciar todas as regiões não globais no sistema para um usuário.
É necessário ser administrador global na região global para executar este procedimento.
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 .
Crie uma função que inclua o perfil de direitos de gerenciamento de região e atribua a função a um usuário.
Para criar e atribuir a função usando o Console de gerenciamento Solaris, consulte Configuring RBAC (Task Map) no System Administration Guide: Security Services . Consulte a tarefa “Como criar e atribuir uma função usando a GUI.”
Para criar e atribuir a função na linha de comando, consulte Managing RBAC no System Administration Guide: Security Services . Consulte a tarefa “Como criar uma função a partir da linha de comando.”
Você pode executar comandos de região em um perfil usando o programa pfexec. O programa executa comandos com os atributos especificados pelos perfis de usuário no banco de dados de exec_attr. O programa é chamado pelos shells de perfil pfksh, pfcsh e pfsh.
Use o programa pfexec para efetuar login em uma região, por exemplo my-zone.
machine$ pfexec zlogin my-zone |
Os procedimentos abaixo podem ser usados para fazer backup de arquivos em regiões. Lembre-se de também fazer backup dos arquivos de configuração das regiões.
Você pode executar backups completos ou incrementais usando o comando ufsdump. Este procedimento faz o backup da região /export/my-zone para /backup/my-zone.ufsdump , onde my-zone é substituído pelo nome de uma região no sistema. Você pode desejar ter um sistema de arquivos separado, por exemplo, um sistema de arquivos montado em /backup, para armazenar os backups.
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 .
(Opcional) Desligue a região para colocar a região em um estado inativo e para evitar a criação de backups de sistemas de arquivos compartilhados.
global# zlogin -S my-zone init 0 |
Verifique o status da região.
global# zoneadm list -cv |
Você verá uma exibição semelhante a esta:
ID NAME STATUS PATH BRAND IP 0 global running / native shared - my-zone installed /export/home/my-zone native shared |
Execute o backup.
global# ufsdump 0f /backup/my-zone.ufsdump /export/my-zone |
Você verá uma exibição semelhante a esta:
DUMP: Date of this level 0 dump: Wed Aug 10 16:13:52 2005 DUMP: Date of last level 0 dump: the epoch DUMP: Dumping /dev/rdsk/c0t0d0s0 (bird:/) to /backup/my-zone.ufsdump. DUMP: Mapping (Pass I) [regular files] DUMP: Mapping (Pass II) [directories] DUMP: Writing 63 Kilobyte records DUMP: Estimated 363468 blocks (174.47MB). DUMP: Dumping (Pass III) [directories] DUMP: Dumping (Pass IV) [regular files] DUMP: 369934 blocks (180.63MB) on 1 volume at 432 KB/sec DUMP: DUMP IS DONE |
Inicialize a região.
global# zoneadm -z my-zone boot |
Esta abordagem usa o comando fssnap, que cria uma imagem temporária de um sistema de arquivos destinado a operações de backup.
Este método pode ser usado para fornecer um backup limpo e consistente dos arquivos de região somente, e pode ser executado enquanto regiões estão em execução. No entanto, é recomendável suspender ou fazer ponto de verificação de aplicativos ativos que estão atualizando arquivos quando o instantâneo é criado. Um aplicativo que atualize arquivos quando o instantâneo é criado pode deixar esses arquivos em um estado inconsistente internamente, truncado ou inutilizável.
No procedimento de exemplo abaixo, observe o seguinte:
Há uma região nomeada my-zone em /export/home .
/export/home é um sistema de arquivos separado.
O backup de destino é /backup/my-zone.ufsdump. Você deve criar o diretório backup em /.
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 .
Crie um instantâneo.
global# fssnap -o bs=/export /export/home |
Você verá uma exibição semelhante a esta:
dev/fssnap/0 |
Monte o instantâneo.
global# mount -o ro /dev/fssnap/0 /mnt |
Faça backup my-zone a partir do instantâneo.
global# ufsdump 0f /backup/my-zone.ufsdump /mnt/my-zone |
Você verá uma exibição semelhante a esta:
DUMP: Date of this level 0 dump: Thu Oct 06 15:13:07 2005 DUMP: Date of last level 0 dump: the epoch DUMP: Dumping /dev/rfssnap/0 (pc2:/mnt) to /backup/my-zone.ufsdump. DUMP: Mapping (Pass I) [regular files] DUMP: Mapping (Pass II) [directories] DUMP: Writing 32 Kilobyte records DUMP: Estimated 176028 blocks (85.95MB). DUMP: Dumping (Pass III) [directories] DUMP: Dumping (Pass IV) [regular files] DUMP: 175614 blocks (85.75MB) on 1 volume at 2731 KB/sec DUMP: DUMP IS DONE |
Desmonte o instantâneo.
global# umount /mnt |
Exclua o instantâneo.
global# fssnap -d /dev/fssnap/0 |
Observe que o instantâneo também é removido do sistema quando o sistema é reinicializado.
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 .
Altere diretórios para o diretório raiz.
global# cd / |
Faça backup de arquivos my-zone que não sejam montados com auto-retorno para /backup/my-zone.cpio.
global# find export/my-zone -fstype lofs -prune -o -local | cpio -oc -O /backup/my-zone.cpio type as one line |
Verifique os resultados.
global# ls -l backup/my-zone.cpio |
Você verá uma exibição semelhante a esta:
-rwxr-xr-x 1 root root 99680256 Aug 10 16:13 backup/my-zone.cpio |
Você deve criar arquivos de backup das configurações da região não global. Você pode usar os backups para recriar as regiões mais tarde, se necessário. Crie a cópia da configuração da região depois de ter efetuado login na região pela primeira vez e depois de ter respondido as perguntas de sysidtool. Este procedimento usa uma região nomeada my-zone e um arquivo de backup nomeado my-zone.config para ilustrar o processo.
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 .
Imprima a configuração para a região my-zone em um arquivo nomeado my-zone.config.
global# zonecfg -z my-zone export > my-zone.config |
Você pode usar arquivos de backup as configurações da região não global para restaurar regiões não globais, se necessário. Este procedimento usa uma região nomeada my-zone e um arquivo de backup nomeado my-zone.config para ilustrar o processo de restauração de uma região.
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 .
Especifique que my-zone.config seja usado como o arquivo de comando zonecfg para recriar a região my-zone.
global# zonecfg -z my-zone -f my-zone.config |
Instale a região.
global# zoneadm -z my-zone install |
Para impedir que o sistema exiba as perguntas de sysidtool no login inicial da região, exclua o arquivo zonepath /root/etc/.UNCONFIGURED, por exemplo:
global# rm /export/home/my-zone/root/etc/.UNCONFIGURED |
Se houver arquivos específicos de região para restaurar, como dados de aplicativo, restaure manualmente (e possivelmente mescle manualmente) arquivos a partir de um backup para um sistema de arquivos raiz da região recém-criada.
Este capítulo fornece informações sobre como atualizar o sistema do Solaris 10 ou uma versão posterior, se você estiver executando Solaris Zones. São fornecidos links para documentos apropriados de instalação do Solaris.
O Solaris Live Upgrade agora tem suporte em um sistema com regiões instaladas . O zonepath não pode estar no ZFS.
O suporte ao Solaris Live Upgrade em sistemas com o zonepath no ZFS começam a partir desta versão. Em uma região com o zonepath no ZFS, somente o Solaris Live Upgrade pode ser usado para atualizar o sistema.
Você pode usar o recurso Solaris Live Upgrade para migrar as regiões para um sistema de arquivos raiz ZFS. Uma região em um sistema de arquivos não compartilhado é migrada automaticamente quando o sistema de arquivos raiz UFS for migrado para um sistema de arquivos raiz ZFS. Se a região estiver em um sistema de arquivos UFS compartilhado, então a região deve ser atualizada como nas versões anteriores do Solaris. Para mais informações, consulte Migrando um sistema de arquivos raiz UFS para um sistema de arquivos raiz ZFS (Oracle Solaris Live Upgrade) no Guia de administração do ZFS Oracle Solaris.
Você deve fazer backup das regiões global e não global no sistema do Solaris antes de executar uma atualização. Para obter informações, consulte Sobre backup de um sistema do Solaris com regiões instaladas e Backup de um sistema do Solaris com regiões instaladas.
Você pode usar o Solaris Live Upgrade, o programa de instalação interativo padrão do Solaris, ou o programa de instalação personalizado JumpStart para atualizar o sistema do Solaris com regiões instaladas. Para obter informações, consulte Upgrading With Non-Global Zones no Solaris 10 8/07 Installation Guide: Planning for Installation and Upgrade. Quando o zonepath estiver no ZFS, consulte também O que há de novo neste capítulo para o Solaris 10 8/07? e O que há de novo neste capítulo para o Solaris 10 10/08?.
Existem inúmeras considerações sobre o uso do Live Upgrade em um sistema com regiões instaladas. É fundamental evitar transições de estado de região durante as operações lucreate e lumount.
Quando você usa o comando lucreate para produzir um ambiente de inicialização alternativo (ABE), se uma determinada região não estiver em execução, então a região não pode ser inicializada até que lucreate tenha sido concluído.
Quando você usa o comando lucreate para produzir um ABE, se uma determinada região estiver em execução, ela deve ser parada ou reinicializada até que lucreate seja concluído.
Quando um ABE é montado por lumount, você não pode inicializar regiões ou reiniciá-las, embora as regiões que estavam sendo executadas antes de a operação lumount possam continuar sendo executadas.
Como uma região não global pode ser controlada por um administrador de região não global assim como pelo administrador de região global, é melhor parar todas as regiões durante as operações lucreate ou lumount .
Quando as operações de Live Upgrade estão sendo realizadas, o envolvimento do administrador de região não global é crítico. A atualização afeta o trabalho dos administradores, que estarão lidando com as alterações que ocorrem como um resultado da atualização. Os administradores de região devem garantir que quaisquer pacotes locais fiquem estáveis durante a seqüência, manipulem quaisquer tarefas de pós-atualização como ajustes do arquivo de configuração, e sejam agendados geralmente para próximo da interrupção do sistema.
Leia Regiões com um recurso fs definido com um tipo de lofs não podem ser atualizadas para a versão Solaris 10 11/06 antes de atualizar o sistema.
Você pode usar o Solaris Live Upgrade, o programa de instalação interativo padrão do Solaris, ou o programa de instalação personalizado JumpStart para atualizar o sistema do Solaris com regiões instaladas. O Solaris Live Upgrade não tem suporte nesta versão. Para obter informações, consulte Solaris 10 11/06 Installation Guide: Solaris Live Upgrade and Upgrade Planning e Solaris 10 11/06 Installation Guide: Custom JumpStart and Advanced Installations .
As informações gerais sobre planejamento e requisitos para todos os tipos de instalações e atualizações estão documentadas no Capítulo 4, System Requirements, Guidelines, and Upgrade (Planning), no Solaris 10 11/06 Installation Guide: Planning for Installation and Upgrade. Observe que a mídia usada para a instalação deve ser um DVD ou uma imagem de instalação de rede criada a partir de um DVD.
A interface da versão Solaris 10 está documentada no Solaris 10 11/06 Installation Guide: Basic Installations.
As considerações especiais e limitações para personalizar instalações do JumpStart estão descritas no Capítulo 8, Custom JumpStart (Reference), no Solaris 10 11/06 Installation Guide: Custom JumpStart and Advanced Installations.
Informações sobre execução de instalação ou atualização na rede são fornecidas em Solaris 10 11/06 Installation Guide: Network-Based Installations.
Este capítulo é novo para a versão Solaris 10 6/06.
Para obter uma lista completa dos novos recursos do Solaris 10 e uma descrição das versões do Solaris, consulte Novidades no Oracle Solaris 10 9/10.
O zonepath de uma região global não deve residir no ZFS nestas versões. Esta ação pode resultar em problemas de correção e possivelmente impedir que o sistema seja atualizado para uma atualização posterior da versão Solaris 10.
Observe que o sistema de arquivos raiz de uma região não global pode residir no ZFS a partir do Solaris 10 10/08. Assim, o Solaris Live Upgrade pode ser usado para atualizar o sistema.
Se a seguinte mensagem de erro for exibida:
dladm: warning: cannot reset link property 'zone' on 'bge0': operation failed |
Referente a Como usar dladm reset-linkprop , a tentativa de usar dladm reset-linkprop falhou. A região em execução excl está usando o dispositivo, que foi atribuído executando ifconfig bge0 plumb no interior da região.
Para redefinir o valor, use o procedimento ifconfig bge0 unplumb no interior da região e reexecute o comando dladm.
A presença de arquivos dentro de uma hierarquia de sistema de arquivos quando uma região não global é iniciada pela primeira vez indica que os dados do sistema de arquivos são gerenciados pela região global. Quando a região global foi instalada, diversos arquivos de pacote na região global foram duplicados no interior da região. Esses arquivos devem residir diretamente no zonepath. Se os arquivos residirem sob um sistema de arquivos criado por um administrador de região em dispositivos de disco ou conjuntos de dados do ZFS adicionados à região, podem ocorrer problemas de pacote e correção.
O problema com o armazenamento de qualquer um dos dados do sistema de arquivos que são gerenciados pela região global em um sistema de arquivos local pode ser descrito usando ZFS como em exemplo. Se um conjunto de dados do ZFS foi delegado para uma região não global, o administrador de região não deve usar esse conjunto de dados para armazenar qualquer um dos dados do sistema de arquivos que sejam gerenciados pela região global. A correção ou a atualização da configuração podem não ser corretos.
Por exemplo, um conjunto de dados do ZFS delegado não deve ser usado como um sistema de arquivos /var. O sistema operacional do Solaris entrega pacotes de núcleo que instalam componentes em /var. Esses pacotes têm de acessar /var quando são atualizados ou corrigidos, o que não é possível se /var estiver montado em um conjunto de dados delegado do ZFS.
Montagens do sistema de dados sob partes da hierarquia controlada pela região global têm suporte. Por exemplo, se existir um diretório /usr/local vazio na região global, o administrador de região pode montar outros conteúdos sob esse diretório.
Você pode usar um conjunto de dados delegado do ZFS para sistemas de arquivos que não precisam ser acessados durante correção ou atualização, como /export na região não global.
Caso o estado do sistema associado à região não possa ser destruído, a operação de parada falhará no meio do processo. Isto deixa a região em um estado intermediário, algo entre execução e instalada. Neste estado não há processos de usuário ativos nem segmentos do kernel, e nenhum pode ser criado. Quando a operação de parada falha, você deve intervir manualmente para concluir o processo.
A causa mais comum de uma falha é incapacidade do sistema de desmontar todos os sistemas de arquivos. Diferentemente de um desligamento de sistema tradicional do Solaris, que destrói o estado do sistema, regiões devem garantir que nenhuma montagem executada durante a inicialização da região ou durante a operação da região permaneça depois de a região ter sido parada. Mesmo que zoneadm assegure que não haja processos em execução na região, a operação de desmontagem pode falhar se processos na região global tiverem arquivos abertos na região. Use as ferramentas descritas nas páginas do manual proc(1) (consulte pfiles) e fuser(1M) para localizar esses processos e tomar a ação apropriada. Depois de se ter lidado com esses processos, invocar zoneadm halt deveria parar totalmente a região.
Para uma região que não pode ser interrompido, a partir da versão Solaris 10 09/10, você pode migrar de uma região que não foi removida, utilizando a opção zoneadm attach - F para forçar o anexo sem uma validação. O sistema de destino deve ser corretamente configurado para hospedar a região. Uma configuração incorreta pode resultar em um comportamento indefinido. Além disso, não há nenhuma maneira de saber o estado dos arquivos dentro da região.
Se o conjunto de privilégios da região contiver um privilégio não permitido, não tiver um privilégio necessário ou incluir um nome de privilégio desconhecido, uma tentativa de verificação, pronto ou inicialização da região irá falhar com uma mensagem de erro como a seguinte:
zonecfg:zone5> set limitpriv="basic" . . . global# zoneadm -z zone5 boot required privilege "sys_mount" is missing from the zone's privilege set zoneadm: zone zone5 failed to verify |
Se você vir a seguinte mensagem ao inicializar a região como descrito em Como inicializar uma região:
# zoneadm -z my-zone boot zoneadm: zone 'my-zone': WARNING: hme0:1: no matching subnet found in netmasks(4) for 192.168.0.1; using default of 255.255.255.0. |
A mensagem é somente um aviso e o comando teve êxito. A mensagem indica que o sistema não pôde localizar netmask para ser usado para o endereço IP especificado na configuração da região.
Para impedir que o aviso seja exibido em reinicializações subseqüentes, assegure-se de que os bancos de dados corretos de netmasks estejam listados no arquivo /etc/nsswitch.conf na região global e de que pelo menos um desses bancos de dados contenham uma sub-rede e netmasks a serem usados para a região my-zone.
Por exemplo, se o arquivo /etc/inet/netmasks e o banco de dados NIS local forem usados para resolver netmasks na região global, a entrada apropriada em /etc/nsswitch.conf é como a seguir:
netmasks: files nis
A sub-rede e as informações de netmask correspondentes para a região my-zone podem então ser adicionadas a /etc/inet/netmasks para uso subseqüente.
Para obter mais informações sobre o comando netmasks, consulte a página do manual netmasks(4).
O sistema de destino deve executar as mesmas versões dos seguintes pacotes e correções do sistema operacional necessários que as versões instaladas no host original.
Pacotes que entregam arquivos sob o recurso inherit-pkg-dir
Pacotes em que SUNW_PKG_ALLZONES=true
Se pacotes e correções forem diferentes do host original e do novo host, você poderá ver uma exibição semelhante à seguinte:
host2# zoneadm -z my-zone attach These packages installed on the source system are inconsistent with this system: SUNWgnome-libs (2.6.0,REV=101.0.3.2005.12.06.20.27) version mismatch (2.6.0,REV=101.0.3.2005.12.19.21.22) SUNWudaplr (11.11,REV=2005.12.13.01.06) version mismatch (11.11,REV=2006.01.03.00.45) SUNWradpu320 (11.10.0,REV=2005.01.21.16.34) is not installed SUNWaudf (11.11,REV=2005.12.13.01.06) version mismatch (11.11,REV=2006.01.03.00.45) NCRos86r (11.10.0,REV=2005.01.17.23.31) is not installed These packages installed on this system were not installed on the source system: SUNWukspfw (11.11,REV=2006.01.03.00.45) was not installed SUNWsmcmd (1.0,REV=2005.12.14.01.53) was not installed These patches installed on the source system are inconsistent with this system: 120081 is not installed 118844 is not installed 118344 is not installed These patches installed on this system were not installed on the source system: 118669 was not installed 118668 was not installed 116299 was not installed |
Para migrar a região com êxito, use um dos métodos a abaixo:
Atualize o novo host com os pacotes e correções corretos, de modo que o conteúdo seja o mesmo em ambos os sistemas. Para obter mais informações, consulte o Capítulo 25Sobre pacotes e correções em um sistema do Solaris com regiões instaladas (visão geral) e Capítulo 26Adição e remoção de pacotes e correções em um sistema do Solaris com regiões instaladas (tarefas).
Se o novo host possui versões mais recentes de pacotes de região dependente ou patches associados, utilize zoneadm attach com a opção -u ou -U para atualizar tais pacotes dentro da região para que correspondam ao novo host. Consulte Sobre migração de uma região.
Para migrar a região com êxito, instale a mesma versão do Solaris que está em execução no host original em um sistema com a mesma arquitetura.
Verifique a versão do Solaris em execução no sistema original.
host1# uname -a |
Instale a mesma versão no novo host.
Consulte a documentação de instalação do Solaris em docs.sun.com.
Para migrar com êxito a região, use a opção -u no zoneadm attach.
Verifique a arquitetura do sistema em ambos os sistemas.
host1# uname -a |
Se as arquiteturas forem diferentes, use a opção -u com zoneadm attach para realizar a anexação.
host2# zoneadm -z my-zone attach -u |
Para obter mais informações, consulte Como migrar uma região não global.
Este problema foi corrigido na versão Solaris 10 8/07.
Se todas as regiões não globais configuradas com recursos lofs fs estão montando diretórios que existem na minirraiz, o sistema poderá ser atualizado a partir de uma versão anterior do Solaris 10 para a versão Solaris 10 11/06 usando-se a atualização padrão. Por exemplo, um diretório /opt montado comlofs não apresenta problemas para a atualização.
No entanto, se uma região não global estiver configurada com uma montagem de lofs não padrão, como um diretório /usr/local montado com lofs, a seguinte mensagem de erro será exibida:
The zones upgrade failed and the system needs to be restored from backup. More details can be found in the file /var/sadm/install_data/upgrade_log on the upgrade root file system. |
Embora esta mensagem de erro afirme que o sistema deve ser restaurado de backup, o sistema na verdade está funcionando bem, e pode ser atualizado com êxito usando-se a seguinte solução:
Reinicialize o sistema com o sistema operacional instalado.
Reconfigure as regiões, removendo os recursos fs definidos com um tipo de lofs.
Após remover estes recursos, atualize o sistema para o Solaris 10 11/06.
Após a atualização, você poderá reconfigurar as regiões novamente para restaurar recursos fs adicionais que foram removidos.