# MANUAL TÉCNICO - MANUTENÇÃO E PERFORMANCE ZFS - TRUENAS SCALE

**Código:** ITGENG 0017/26 | **Classificação:** RESTRITO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}

## 1. HISTÓRICO DE REVISÃO

> ⚠️ **REGRA DE OURO:**
> 1. **Autor:** João Pedro Toledo Gonçalves.
> 2. **Descrição:** Criação do documento.

| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |

## 2. OBJETIVO
Definir procedimentos de rotina para manutenção da integridade dos dados (Scrub), substituição de discos falhos e diagnóstico avançado de performance e eficiência ZFS.

## 3. PRÉ-REQUISITOS
- [ ] Acesso Root/SSH ao servidor Truenas.
- [ ] Conhecimento da topologia do Pool (via `zpool status`).

## 4. MANUTENÇÃO PREVENTIVA (ROTINA)

### 1. Data Scrubbing (Limpeza de Dados)
O Scrub lê **todos os dados** e verifica checksums para corrigir "Bit Rot" (corrupção silenciosa).

*   **Comando Manual (Shell):** `zpool scrub {{NOME_POOL}}`
*   **Via GUI:** `System Settings` > `Scrub Tasks`.
    *   **Frequência Recomendada:** 1x por Mês (Discos Enterprise) ou 2x por Mês (Discos Consumer).
    *   **Monitoramento:** Acompanhe o progresso com `zpool status -v`.

### 2. Testes S.M.A.R.T.
O ZFS cuida dos dados, o S.M.A.R.T cuida do disco físico.

*   **Short Test:** Diário.
*   **Long Test:** Semanal.
*   **Configuração:** `Data Protection` > `S.M.A.R.T. Tests`.

## 5. DIAGNÓSTICO DE PERFORMANCE

> 🚀 **DICA DE OURO:** Use o Shell para obter a verdade nua e crua.

### A. Verificar Latência e Throughput em Tempo Real
```bash
zpool iostat -v -y 2 10
```
*   Mostra leitura/escrita por disco individual. Procure por discos lentos (High Latency) que travam o pool inteiro.

### B. Verificar Eficiência do Cache (ARC)
```bash
arc_summary
```
*   Procure por **"ARC Size (Current)"**. Se estiver em "Max", você pode precisar de mais RAM.
*   Procure por **"Cache Hit Ratio"**.
    *   > 90%: Ótimo.
    *   < 80%: Considere L2ARC ou Mais RAM.

### C. Verificar Compressão e Deduplicação
```bash
zpool list
```
*   **DEDUP:** Se for > 1.00x, você tem deduplicação. Se for 1.00x com DEDUP ON, **desligue imediatamente** (está gastando RAM à toa).
*   **COMPRESS:** Razão de compressão do pool. 1.20x ou mais é excelente.

## 6. SUBSTITUIÇÃO DE DISCO (DEGRADED STATE)

Se o dashboard alertar "Pool Degraded", um disco falhou.

1.  **Identifique o disco:**
    *   Vá em `Storage` > `Manage Devices`.
    *   Procure pelo disco com status `OFFLINE`, `UNAVAIL` ou `FAULTED`.
    *   Anote o Serial Number.
2.  **Troca Física:**
    *   Substitua o disco fisicamente (Hot-swap, se suportado).
3.  **Processo de Replace:**
    *   Na GUI, clique no disco falho > **Replace**.
    *   Selecione o novo disco na lista.
    *   Clique em **Save**.
4.  **Resilvering:**
    *   O ZFS reconstruirá os dados. Isso pode levar horas/dias.
    *   **Monitore:** `zpool status` mostra a velocidade e tempo estimado.
    *   > ⚠️ **CRÍTICO:** Durante o resilver, o pool está vulnerável. Evite carga pesada.

## 7. VALIDAÇÃO E CHECKLIST
- [ ] O último Scrub rodou sem erros (0 errors)?
- [ ] Todos os discos estão `ONLINE`?
- [ ] O ARC Hit Ratio está saudável (>80%)?
