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.