Ignorar Links de Navegao | |
Sair do Modo de Exibio de Impresso | |
Guia de administração do Oracle Solaris ZFS Oracle Solaris 10 1/13 Information Library (Português (Brasil)) |
1. Sistema de arquivos do Oracle Solaris ZFS (introdução)
2. Introdução ao ZFS do Oracle Solaris
3. Gerenciando pools de armazenamento do Oracle Solaris ZFS
4. Instalando e inicializando um sistema de arquivos raiz do Oracle Solaris ZFS
5. Gerenciando sistemas de arquivos ZFS do Oracle Solaris
6. Trabalhando com instantâneos e clones do Oracle Solaris ZFS
7. Uso de ACLs e atributos para proteger arquivos do Oracle Solaris ZFS
8. Administração delegada do ZFS do Oracle Solaris
9. Tópicos avançados do Oracle Solaris ZFS
10. Solução de problemas e recuperação de pools do Oracle Solaris ZFS
Identificando Problemas no ZFS
Resolvendo Problemas Gerais de Hardware
Identificando Falhas de Hardware e Dispositivo
Relatório de mensagens de erros do ZFS do sistema
Identificando Problemas com Pools de Armazenamento do ZFS
Determinando se há problemas em um pool de armazenamento do ZFS
Revisando a saída de zpool status
Informações gerais sobre o status do pool
Informações de configuração do pool de armazenamento do ZFS
Resolvendo Problemas do Dispositivo de Armazenamento do ZFS
Resolvendo um Dispositivo Ausente ou Removido
Resolvendo um Dispositivo Removido
Reanexando fisicamente um dispositivo
Notificando o ZFS da disponibilidade de um dispositivo
Substituindo ou reparando um dispositivo modificado
Determinando o tipo de falha do dispositivo
Apagando Erros Transitórios do Dispositivo
Substituindo um dispositivo em um pool de armazenamento do ZFS
Determinando se um dispositivo pode ser substituído
Dispositivos que não podem ser substituídos
Substituindo um dispositivo em um pool de armazenamento do ZFS
Exibindo o status do resilvering
Resolvendo Problemas do Sistema de Arquivos do ZFS
Resolvendo Problemas de Dados em um Pool de Armazenamento do ZFS.
Verificando a integridade do sistema de arquivos ZFS
Validação do sistema de arquivos
Controlando o scrubbing de dados do ZFS
Scrubbing explícito de dados do ZFS
Scrubbing e resilvering de dados do ZFS
Resolvendo Problemas de Espaço do ZFS
Relatório de Espaço do Sistema de Arquivos ZFS
Relatórios de Espaço do Pool de Armazenamento do ZFS
Identificando o tipo de corrupção de dados
Reparando arquivos ou diretórios corrompidos
Reparando os Dados Corrompidos com Várias Referências de Bloco
Reparando o dano de todo o pool de armazenamento do ZFS
Reparando uma configuração do ZFS danificada
Reparando um sistema não inicializável
11. Práticas Recomendadas do Oracle Solaris ZFS
As seguintes seções descrevem como identificar e resolver problemas nos sistemas de arquivos ou nos pools de armazenamento do ZFS:
Você pode usar os seguintes recursos para identificar problemas na configuração do seu ZFS:
O pool de armazenamento do ZFS detalhado pode ser exibido através do comando zpool status.
As falhas nos pools e dispositivos são relatadas por meio de mensagens de diagnóstico do ZFS/FMA.
Os comandos anteriores do ZFS que modificaram as informações de estado do pool podem ser exibidos através do comando zpool history.
A maioria das soluções de problemas do ZFS envolvem o comando zpool status. Esse comando analisa as diferentes falhas no sistema e identifica o problema mais grave, apresentando-lhe ações sugeridas e um link a um artigo com mais informações. Observe que o comando identifica somente um único problema com o pool, embora existam vários problemas. Por exemplo, erros de dados corrompidos geralmente implicam que um dos dispositivos falhou, mas substituir os dispositivos danificados não deve resolver todos os problemas de corrupção de dados.
Além disso, um mecanismo de diagnóstico do ZFS gera diagnósticos e relata falhas de pools e dispositivos. Soma de verificação, E/S, dispositivo e erros de pool associados a essas falhas também são reportados. As falhas do ZFS, conforme relatadas por fmd, são exibidas no console, bem como no arquivo de mensagens do sistema. Na maioria dos casos, a mensagem fmd leva você ao comando zpool status para obter instruções de recuperação adicionais.
O processo básico de recuperação realiza-se da seguinte forma:
Se for apropriado, utilize o comando zpool history para identificar os comandos do ZFS que precedem cenário do erro. Por exemplo:
# zpool history tank History for 'tank': 2012-11-12.13:01:31 zpool create tank mirror c0t1d0 c0t2d0 c0t3d0 2012-11-12.13:28:10 zfs create tank/eric 2012-11-12.13:37:48 zfs set checksum=off tank/eric
Nessa saída, note que as somas de verificação estão desativadas no sistema de arquivos tank/eric Esta configuração não é recomendável.
Identifique os erros através das mensagens fmd exibidas no console do sistema ou nos arquivos /var/adm/messages.
Localize as instruções de reparação adicionais através do comando zpool status -x.
Reparar falhas envolve as seguintes etapas:
Substitua o dispositivo indisponível ou ausente e coloque-o on-line.
Restaure a configuração defeituosa ou os dados corrompidos a partir de um backup.
Verifique a recuperação utilizando o comando zpool status -x.
Efetue backup da configuração restaurada, se aplicável.
Essa seção descreve como interpretar a saída de zpool status a fim de diagnosticar os tipos de falhas que podem ocorrer. Embora a maioria do trabalho seja efetuado automaticamente pelo comando, é importante entender exatamente que problemas estão sendo identificados a fim de diagnosticar o tipo da falha. Seções subsequentes descrevem como reparar vários problemas que você pode encontrar.
A forma mais fácil de determinar se há problemas conhecidos no sistema é utilizar o comando zpool status -x. . Esse comando descreve somente os pools que apresentam problemas. Se não houver um pool defeituoso no sistema, o comando exibirá o seguinte:
# zpool status -x all pools are healthy
Sem o sinalizador -x, o comando exibe o status completo de todos os pools (ou do pool solicitado, se especificado na linha de comando), mesmo que os pools não apresentem falhas.
Para obter mais informações sobre opções de linha de comando para o comando zpool status, consulte Consultando status de pool de armazenamento do ZFS.
A saída de zpool status completa se assemelha ao ilustrado abaixo:
# zpool status tank pool: tank state: DEGRADED status: One or more devices could not be opened. Sufficient replicas exist for the pool to continue functioning in a degraded state. action: Attach the missing device and online it using 'zpool online'. see: http://www.sun.com/msg/ZFS-8000-2Q scan: scrub repaired 0 in 0h3m with 0 errors on Mon Nov 12 15:17:02 2012 config: NAME STATE READ WRITE CKSUM tank DEGRADED 0 0 0 mirror-0 DEGRADED 0 0 0 c1t1d0 ONLINE 0 0 0 c1t2d0 UNAVAIL 0 0 0 cannot open errors: No known data errors
Essa saída é descrita na seção a seguir.
Essa seção na saída de zpool status contém os seguintes campos, alguns dos quais são exibidos somente para os pools que apresentam problemas:
Identifica o nome do pool.
Indica a integridade atual do pool. Esta informação se refere somente a capacidade que o pool apresenta de oferecer o nível de replicação necessário.
Descreve o que há de errado com o pool. Esse campo é omitido se nenhum erro for encontrado.
Uma ação recomendada para a reparação de erros. Esse campo é omitido se nenhum erro for encontrado.
Referência a um artigo conhecido com informações sobre a reparação. Os artigos on-line são atualizados com mais frequência do que guias podem ser atualizados. Então, sempre os referencie para o mais atualizado procedimento de reparação. Esse campo é omitido se nenhum erro for encontrado.
Identifique o status atual da operação de scrub, que deve incluir a data e a hora de conclusão do último scrub realizado, um scrub em andamento ou se nenhum scrub foi solicitado.
Identifica erros de dados ou ausência de erros de dados conhecidos.
O campo config na saída zpool status descreve a configuração dos dispositivos no pool, bem como seu estado e quaisquer erros gerados a partir dos dispositivos. O estado pode ser um dos seguintes : ONLINE, FAULTED, DEGRADED ou SUSPENDED. Se for exibido somente ONLINE, a tolerância a falhas do pool foi comprometida.
A segunda seção da saída de configuração exibe os erros de estatísticas. Estes erros estão divididos em três categorias:
READ: erros de E/S ocorridos durante uma solicitação de leitura
WRITE: erros de E/S ocorridos durante uma solicitação de gravação
CKSUM: erros de soma de verificação, significam que o dispositivo retornou dados corrompidos como resultado de uma requisição de leitura
Estes erros podem ser usados para determinar se o dano é permanente. Uma pequena quantidade de erros de E/S pode indicar uma interrupção temporária, enquanto que uma grande quantidade pode indicar um problema permanente com o dispositivo. Estes erros não correspondem necessariamente à corrupção de dados conforme interpretado pelos aplicativos. Se o dispositivo estiver em uma configuração redundante, os dispositivos podem exibir erros incorrigíveis, enquanto nenhum erro aparece no espelho ou no nível do dispositivo RAID-Z. Em tais casos, o ZFS recupera com sucesso os dados bons e tenta reabilitar dados danificados a partir das réplicas existentes.
Para mais informações sobre a interpretação desses erros, consulte Determinando o tipo de falha do dispositivo.
Finalmente, na última coluna da saída de zpool status se encontram informações adicionais auxiliares. Essas informações abrangem o campo estado, auxiliando em diagnósticos de falhas. Se um dispositivo apresenta o estado UNAVAIL, este campo indica se o dispositivo encontra-se inacessível ou se os dados do dispositivo estão corrompidos. Se o dispositivo estiver sendo submetido a um resilvering, este campo exibe o progresso atual.
Para mais informações sobre a monitoração do progresso de resilvering, consulte Exibindo o status do resilvering.
A terceira seção de scrub da saída zpool status descreve o status atual de quaisquer operações de scrubbing explícitas. Se qualquer tipo de erro for detectado no sistema, estas informações serão diferentes, embora possam ser usadas para determinar a precisão do relatório de erro de corrupção de dados. Se o último scrubbing acabou de ser concluído, provavelmente nenhuma corrupção de dados conhecida foi encontrada.
Mensagens de finalização de scrub persistem através da reinicialização do sistema.
Para mais informações sobre o scrubbing de dados e como interpretar essas informações, consulte Verificando a integridade do sistema de arquivos ZFS.
O comando zpool status mostra também se os erros conhecidos estão associados ao pool. Esses erros podem ter sido encontrados durante o scrubbing de dados ou durante uma operação normal. O ZFS mantém um log persistente de todos os erros de dados associados ao pool. Este registro é alternado sempre que um scrubbing completo do sistema for concluído.
Os erros de corrupção de dados são sempre fatais. A presença de tais erros indica que como mínimo um aplicativo sofreu um erro de E/S devido a dados corrompidos dentro do pool. Os erros de dispositivo dentro de um pool redundante não têm como resultado a corrupção de dados e não são registrados como parte deste registro. Por padrão, somente o número de erros encontrado é exibido. Uma lista completa de erros e de suas condições específicas pode ser encontrada usando a opção -v do zpool status. Por exemplo:
# zpool status -v pool: tank state: UNAVAIL status: One or more devices are faulted in response to IO failures. action: Make sure the affected devices are connected, then run 'zpool clear'. see: http://www.sun.com/msg/ZFS-8000-HC scrub: scrub completed after 0h0m with 0 errors on Tue Feb 2 13:08:42 2010 config: NAME STATE READ WRITE CKSUM tank UNAVAIL 0 0 0 insufficient replicas c1t0d0 ONLINE 0 0 0 c1t1d0 UNAVAIL 4 1 0 cannot open errors: Permanent errors have been detected in the following files: /tank/data/aaa /tank/data/bbb /tank/data/ccc
Uma mensagem semelhante também é exibida pelo fmd no console do sistema e no arquivo /var/adm/messages. Estas mensagens também podem ser rastreadas através do comando fmdump.
Para obter mais informações sobre a interpretação dos erros de corrupção de dados, consulte Identificando o tipo de corrupção de dados.