Oracle Guia de instalação do Solaris 10 9/10: Solaris Live Upgrade e planejamento da atualização

Capítulo 11 Solaris Live Upgrade e ZFS (visão geral)

Com o Solaris Live Upgrade é possível migrar os sistemas de arquivos UFS para um conjunto raiz ZFS e criar sistemas de arquivos raiz ZFS a partir de um conjunto raiz ZFS existente.


Observação –

Criar ambientes de inicialização com o Solaris Live Upgrade é novidade na versão 10 10/08 do Solaris. Quando efetuar o Solaris Live Upgrade para um sistema de arquivos UFS, os parâmetros da linha de comando e operação do Solaris Live Upgrade permanecem inalteradas. Para efetuar o Solaris Live Upgrade em um sistema com sistemas de arquivos UFS, consulte Parte I, Atualizando com o Solaris Live Upgrade deste livro.


As seções a seguir fornecem um visão geral destas tarefas:

Novidade da versão 10 10/09 do Solaris

A partir do Solaris 10 10/09, é possível instalar um perfil JumpStart para identificar um arquivo Flash de um pool raiz ZFS.

É possível criar um arquivo Flash em um sistema que executa um sistema de arquivos raiz UFS ou ZFS. O arquivo Flash de um sistema de arquivos raiz ZFS contém toda a hierarquia do pool, exceto para volumes de dump e intercâmbio, e todos os conjuntos de dados excluídos. Os volumes de despejo e permuta são criados quando o arquivo Flash é instalado.

Você pode usar o método de instalação do arquivo Flash da seguinte forma:

Para limitações e instruções detalhadas, consulte Instalando um sistema de arquivos raiz ZFS (instalação de arquivo do Oracle Solaris Flash) no Guia de administração do ZFS Oracle Solaris.

Introdução sobre a utilização do Solaris Live Upgrade com ZFS

Se você possuir um sistema de arquivos UFS, o Solaris Live Upgrade trabalha da mesma forma que nas versões anteriores. Agora é possível migrar a partir de sistemas de arquivos UFS para um conjunto raiz ZFS e criar novos ambientes de inicialização dentro de um conjunto raiz ZFS. Para essas tarefas, o comando lucreate foi aprimorado com a opção -p. A sintaxe do comando é a seguinte:


# lucreate [-c active_BE_name] -n BE_name [-p zfs_root_pool]

A opção -p especifica o conjunto ZFS no qual o novo ambiente de inicialização reside. Essa opção pode ser omitida se os ambiente de inicialização fonte e destino estiverem dentro do mesmo conjunto.

O comando lucreate opção -m não é suportado com ZFS. Outras opções do comando lucreate trabalham normalmente, com algumas exceções. Para limitações, consulte Requisitos e limitações do sistema ao utilizar o Solaris Live Upgrade.

Migrando a partir de um sistema de arquivos UFS para um conjunto raiz ZFS

Se você criar um ambiente de inicialização a partir do sistema atualmente em execução, o comando lucreate copia o sistema de arquivos (/) raiz UFS para um conjunto raiz ZFS. O processo de cópia pode demorar um pouco, dependendo do sistema.

Ao migrar a partir de um sistema de arquivos UFS, o ambiente de inicialização fonte pode ser um sistema de arquivos (/) raiz UFS em um segmento de disco. Não é possível criar um ambiente de inicialização em um sistema de arquivos UFS a partir de um ambiente de inicialização fonte em um conjunto raiz ZFS.

Migrando a partir de um sistema de arquivos (/) raiz UFS para um conjunto raiz ZFS

Os comandos a seguir criam um conjunto raiz ZFS e um novo ambiente de inicialização a partir de um sistema de arquivos (/) raiz UFS no conjunto raiz ZFS. Um conjunto raiz ZFS deve existir antes da operação lucreate e deve ser criado com segmentos em vez de discos inteiros para ser atualizável e inicializável. O disco não pode possuir um rótulo EFI, mas deve ser um rótulo SMI. Para mais limitações, consulte Requisitos e limitações do sistema ao utilizar o Solaris Live Upgrade.

Figura 11–1 mostra o comando zpool que cria um conjunto raiz, rpool, em um segmento separado, c0t1d0s5. Esse segmento de disco c0t0d0s0 contém um sistema de arquivos (/) raiz UFS. No comando lucreate, a opção -c nomeia o sistema atualmente em execução, c0t0d0 , que é um sistema de arquivos (/) raiz UFS. A opção -n atribui o nome para o ambiente de inicialização a ser criado, new-zfsBE. A opção -p especifica onde colocar o novo ambiente de inicialização, rpool. O sistema de arquivos /export UFS e o volume /swap não são copiados para o novo ambiente de inicialização.

Figura 11–1 Migrando a partir de um sistema de arquivos UFS para um conjunto raiz ZFS

O contexto descreve a ilustração.


Exemplo 11–1 Migrando a partir de um sistema de arquivos (/) raiz UFS para um conjunto raiz ZFS

Este exemplo mostra os mesmos comandos como em Figura 11–1. Os comandos criam um novo conjunto raiz, rpool, e cria um novo ambiente de inicialização no conjunto a partir de um sistema de arquivos (/) raiz UFS. Neste exemplo, o comando zfs list mostra o conjunto raiz ZFS criado pelo comando zpool. O próximo comando zfs list mostra os conjuntos de dados criados pelo comando lucreate.


# zpool create rpool c0t1d0s5
# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool

# lucreate -c c0t0d0 -n new-zfsBE -p rpool
# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool
rpool/ROOT                 5.38G  57.6G    18K  /rpool/ROOT
rpool/ROOT/new-zfsBE       5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
rpool/dump                 1.95G      -  1.95G  - 
rpool/swap                 1.95G      -  1.95G  - 

O novo ambiente de inicialização é rpool/ROOT/new-zfsBE. O ambiente de inicialização, new-zfsBE, está pronto para ser atualizado e ativado.


Migrando um sistema de arquivos UFS com os volumes Solaris Volume Manager configurados para um sistema de arquivos raiz ZFS

É possível migrar o sistema de arquivos UFS se o sistema possuir volumes Solaris Volume Manager (SVM). Para criar um ambiente de inicialização UFS a partir de uma configuração SVM existente, crie um novo ambiente de inicialização a partir do sistema atualmente em execução. A seguir, crie o ambiente de inicialização ZFS a partir do novo ambiente de inicialização UFS.

Visão geral do Solaris Volume Manager (SVM). O ZFS usa o conceito de pools de armazenamento para gerenciar armazenamentos físicos. Os sistemas de arquivos sempre foram construídos em cima de um dispositivo físico. Para endereçar vários dispositivos e fornecer para redundância de dados, o conceito de um gerenciador de volume foi introduzido para fornecer a imagem de um único dispositivo. Portanto, os sistemas de arquivos não devem ser modificados para obter benefícios de vários dispositivos. Este projeto adicionou outra camada de complexidade. Essa complexidade finalmente evita certos avanços do sistema de arquivos, porque o sistema de arquivos não controlava a localização física dos dados nos volumes virtualizados.

Conjuntos de armazenamento ZFS substituem o SVM. O ZFS elimina completamente o gerenciador de volumes. Em vez de forçar você a criar volumes virtualizados, o ZFS agrega os dispositivos em um pool de armazenamento. O conjunto de armazenamento descreve tais características físicas da redundância de dados e do layout do dispositivo de armazenamento e age como um armazenamento de dados arbitrário, a partir do qual sistemas de arquivos podem ser criados. Os sistemas de arquivos não são mais restritos a dispositivos individuais, permitindo, assim, que eles compartilhem espaço com todos os sistemas de arquivos do conjunto. Já não é necessário predeterminar o tamanho de um sistema de arquivos, visto que os sistemas de arquivos crescem automaticamente dentro do espaço alocado para o pool de armazenamento. Quando novos armazenamentos são adicionados, todos os sistemas de arquivos que estão dentro do pool podem usar imediatamente o espaço adicional sem trabalho adicional. Muitas vezes o pool de armazenamento age como um sistema de memória virtual. Quando uma memória DIMM é adicionada a um sistema, o sistema operacional não lhe obriga a chamar comandos para configurar a memória e atribui-la a processos individuais. Todos os processos do sistema usam automaticamente a memória adicional.


Exemplo 11–2 Migrando a partir de um sistema de arquivos (/) raiz UFS com volumes SVM para um conjunto raiz ZFS

Ao migrar um sistema com volumes SVM, os volumes SVM são ignorados. É possível configurar espelhos dentro do conjunto raiz, como no exemplo a seguir.

Neste exemplo, o comando lucreate com a opção -m cria um novo ambiente de inicialização a partir do sistema atualmente em execução. Esse segmento de disco c1t0d0s0 contém um sistema de arquivos (/) raiz UFS configurado com os volumes SVM. O comando zpool cria um conjunto raiz, c1t0d0s0, e um volume RAID-1 (espelho), c2t0d0s0. No segundo comando lucreate, a opção - n atribui o nome para o ambiente de inicialização a ser criado, c0t0d0s0. A opção -s, identifica o sistema de arquivos (/) raiz UFS. A opção -p especifica onde colocar o novo ambiente de inicialização, rpool.


# lucreate -n ufsBE -m /:/dev/md/dsk/d104:ufs
# zpool create rpool mirror c1t0d0s0 c2t1d0s0
# lucreate -n c0t0d0s0 -s ufsBE -p zpool

O ambiente de inicialização, c0t0d0s0, está pronto para ser atualizado e ativado.


Criando um novo ambiente de inicialização a partir de um conjunto raiz ZFS

Também é possível criar um ambiente de inicialização ZFS dentro do mesmo conjunto raiz ou em outro conjunto raiz. Esta seção contém as visões gerais a seguir:

Criando um novo ambiente de inicialização dentro o mesmo conjunto raiz

Ao criar um novo ambiente de inicialização dentro do mesmo conjunto raiz ZFS, o comando lucreate cria um instantâneo do ambiente de inicialização fonte e, em seguida, um clone é feito a partir do instantâneo. A criação do instantâneo e do clone é quase instantânea, e o espaço em disco utilizado é mínimo. A quantidade de espaço finalmente utilizada depende de quantos arquivos são substituídos como parte do processo de atualização. O instantâneo é de somente leitura, mas o clone é um cópia para leitura e escrita do instantâneo. Qualquer alteração feita ao ambiente de inicialização clone não é refletida tanto no instantâneo quanto no ambiente de inicialização fonte, do qual o instantâneo foi feito.


Observação –

À medida que os dados se alteram dentro do conjunto de dados ativo, o instantâneo passa a consumir mais espaço devido às contínuas referências aos dados antigos. Como conseqüência, o instantâneo evita que os dados sejam liberados de novo no pool. Para mais informações sobre instantâneos, consulte Capítulo 7, Trabalhando com instantâneos e clones do ZFS do Oracle Solaris, no Guia de administração do ZFS Oracle Solaris.


Quando o ambiente de inicialização atual reside no mesmo conjunto ZFS, a opção - p é omitida.

Figura 11–2 mostra a criação de um ambiente de inicialização ZFS a partir de um conjunto raiz ZFS. O segmento c0t0d0s0 contém o conjunto raiz ZFS, rpool. No comando lucreate, a opção -n atribui o nome para o ambiente de inicialização a ser criado, new-zfsBE. Um instantâneo do conjunto raiz original é criado rpool@new-zfsBE. O instantâneo utilizado para fazer o clone que é o novo ambiente de inicialização, new-zfsBE. O ambiente de inicialização, new-zfsBE, está pronto para ser atualizado e ativado.

Figura 11–2 Criando um novo ambiente de inicialização no mesmo conjunto raiz

O contexto descreve a ilustração.


Exemplo 11–3 Criando um ambiente de inicialização dentro do mesmo conjunto raiz ZFS

Este exemplo mostra o mesmo comando como em Figura 11–2 que cria um novo ambiente de inicialização no mesmo conjunto raiz. O comando lucreate nomeia o ambiente de inicialização atualmente em execução com a opção -c zfsBE e a -n new-zfsBE cria o novo ambiente de inicialização. O comando zfs list mostra os conjunto de dados ZFS com o novo ambiente de inicialização e instantâneo.


# lucreate -c zfsBE -n new-zfsBE
# zfs list
AME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool
rpool/ROOT                 5.38G  57.6G    18K  /rpool/ROOT
rpool/ROOT/zfsBE           5.38G  57.6G   551M  
rpool/ROOT/zfsBE@new-zfsBE 66.5K      -   551M  -
rpool/ROOT/new-zfsBE       5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
rpool/dump                 1.95G      -  1.95G  - 
rpool/swap                 1.95G      -  1.95G  - 

Criando um novo ambiente de inicialização em outro conjunto raiz

É possível utilizar o comando lucreate para copiar um conjunto raiz ZFS existente em outro conjunto raiz ZFS. O processo de cópia pode demorar um pouco, dependendo do sistema.

Figura 11–3 mostra o comando zpool que cria um conjunto raiz ZFS, rpool2, no c0t1d0s5 porque um conjunto raiz ZFS inicializável ainda não existe. O comando lucreate com a opção -n atribui o nome para o ambiente de inicialização a ser criado, new-zfsBE. A opção -p especifica onde colocar o novo ambiente de inicialização.

Figura 11–3 Criando um novo ambiente de inicialização em outro conjunto raiz

O contexto descreve a ilustração.


Exemplo 11–4 Criando um ambiente de inicialização em um conjunto raiz ZFS diferente

Este exemplo mostra os mesmo comandos como em Figura 11–3 que cria o novo conjunto raiz e, em seguida, um novo ambiente de inicialização no conjunto raiz recém criado. Neste exemplo, o comando zpool create cria rpool2. O comando zfs list mostra que nenhum conjunto de dados ZFS é criado em rpool2. Os conjuntos de dados criados com o comando lucreate.


# zpool create rpool2 c0t2d0s5
# zfs list
NAME                             USED    AVAIL   REFER   MOUNTPOINT 
rpool2                           9.29G    57.6G     20K   /rpool2 
rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT                       5.46G    57.6G     18K   legacy
rpool/ROOT/zfsBE                 5.46G    57.6G   551M  
rpool/dump                       3.99G        -   3.99G   - 
rpool/swap                       3.99G        -   3.99G   - 

O novo conjunto raiz ZFS, rpool2, é criado no segmento de disco c0t2d0s5.


# lucreate -n new-zfsBE -p rpool2
# zfs list
NAME                             USED    AVAIL   REFER   MOUNTPOINT 
rpool2                           9.29G    57.6G     20K   /rpool2 
rpool2/ROOT/                     5.38G    57.6G     18K   /rpool2/ROOT 
rpool2/ROOT/new-zfsBE            5.38G    57.6G    551M   /tmp/.new.luupdall.109859
rpool2/dump                      3.99G        -   3.99G   - 
rpool2/swap                      3.99G        -   3.99G   - 
rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT                       5.46G    57.6G     18K   legacy
rpool/ROOT/zfsBE                 5.46G    57.6G   551M  
rpool/dump                       3.99G        -   3.99G   - 
rpool/swap                       3.99G        -   3.99G   - 

O novo ambiente de inicialização, new-zfsBE, é criado em rpool2 junto com os outros conjuntos de dados, ROOT, despejo e permuta. O ambiente de inicialização, new-zfsBE, está pronto para ser atualizado e ativado.


Criando um novo ambiente de inicialização a partir de uma fonte diferente do sistema atualmente em execução.

Se você estiver criando um ambiente de inicialização a partir de uma fonte diferente do sistema atualmente em execução, é necessário utilizar o comando lucreate com a opção -s. A opção -s trabalha da mesma forma para o sistema de arquivos UFS. A opção -s fornece o caminho para o sistema de arquivos (/) raiz alternativo. Esse sistema de arquivos (/) raiz alternativo é a fonte para a criação do novo conjunto raiz ZFS. A raiz alternativa pode ser tanto um sistema de arquivos raiz (/) UFS quanto um conjunto raiz ZFS. O processo de cópia pode demorar um pouco, dependendo do sistema.


Exemplo 11–5 Criando um ambiente de inicialização a partir de um sistema de arquivos (/) raiz alternativo

O comando a seguir cria um novo conjunto raiz ZFS a partir de um conjunto raiz ZFS existente. A opção -n atribui o nome para o ambiente de inicialização a ser criado, new-zfsBE. A opção -s especifica o ambiente de inicialização, source-zfsBE, a ser utilizando como fonte da cópia, em vez do ambiente de inicialização atualmente em execução. A opção -p especifica para colocar o novo ambiente de inicialização em newpool2.


# lucreate -n new-zfsBE  -s source-zfsBE -p rpool2

O ambiente de inicialização, new-zfsBE, está pronto para ser atualizado e ativado.


Criando um ambiente de inicialização ZFS em um sistema com regiões não globais instaladas.

É possível utilizar o Solaris Live Upgrade para migrar regiões não globais para um sistema de arquivos raiz ZFS. Para uma visão geral, planejamento e procedimentos passo-a-passo, consulte Capítulo 14Solaris Live Upgrade para ZFS com regiões não-globais instaladas.

Recursos adicionais

Para informações adicionais sobre os tópicos incluídos neste capítulo, consulte os recursos listados em Tabela 11–1.

Tabela 11–1 Recursos adicionais

Recurso  

Local 

Para obter informações sobre o ZFS, incluindo uma visão geral, planejamento e instruções passo-a-passo 

Guia de administração do ZFS Oracle Solaris

Para utilizar o Solaris Live Upgrade em um sistema com sistemas de arquivos UFS 

Parte I, Atualizando com o Solaris Live Upgrade deste livro