O primeiro plugin Bacula desenhado nativamente para HPC. Filesystems paralelos (Lustre, GPFS / IBM Spectrum Scale, BeeGFS, CephFS, WekaFS), namespaces com bilhões de arquivos, scheduling ciente de Slurm/PBS/LSF, deduplicação consciente de checkpoints AI/ML, e restripe-on-restore. Pure-Rust, com isolamento de processos via PTCOMM — sem AGPL do Bacula vinculada estaticamente.

Por que um plugin dedicado para HPC?

O File Daemon do Bacula caminha o filesystem single-threaded (findlib/find_one.creaddir + save_file() sequencial). Em um Lustre com 1 bilhão de arquivos isso é inviável — o gargalo é readdir+lstat, não banda.

Bacula Enterprise 18.2 oferece plugins dedicados para HDFS, Quobyte, NDMP, NetApp e Nutanix — mas zero suporte nativo para os filesystems paralelos que de fato rodam HPC. Esse plugin fecha essa lacuna.

Funcionalidades inovadoras (os diferenciais)

  • Walker paralelo de namespace — work-stealing rayon, 1 worker por MDT do Lustre / NSD do GPFS / metadata-target do BeeGFS. Substitui o find_one_file single-threaded do FD. 10–100× a vazão de metadados.
  • Sharding de namespace (Shard=N/M) — divide o namespace em N shards por hash-of-inode ou subtree pinning, e roda N jobs Bacula concorrentes contra N streams SD. Bacula não tem multiplexing de stream dentro do job — sharding é a única forma de saturar fabric HPC.
  • Incrementais nativos do filesystem — Lustre ChangeLogs, GPFS mmapplypolicy, CephFS rstats+rctime, BeeGFS metadata-shard scan. “Mudou desde X” sem precisar de 1 bilhão de stat().
  • Reader paralelo stripe-aware — lê OSTs do Lustre / NSDs do GPFS em paralelo via llapi_layout_get_by_path; remonta in-order via PTCOMM. Leitura sequencial naive deixa ≥80% da banda HPC no chão.
  • Orquestração Slurm/PBS/LSF — submete o scan como job-step Slurm em nó de compute; quiesce concorrentes; JobComp hook para captura de checkpoint AI/ML. Backup roda no fabric rápido, não no login node.
  • Dedup consciente de checkpoint AI/ML — integração com PodHeitor Global Deduplication via content-defined chunking ajustado a tensor-stride boundaries. Checkpoints de treino mudam ~5% por epoch — 95%+ de dedup é realista.
  • Restripe-on-restore — persiste o layout original do Lustre como RestoreObject; restaura recriando striping antes de escrever. Preserva características de performance, não só bytes.
  • Modo “metadata snapshot” só de namespace — captura noturna rápida de inode + ACL + xattr; dados em massa semanalmente. Recovery catastrófico precisa do namespace primeiro; bulk pode vir de fita.
  • Integração HSM — Lustre HSM (archive/release/restore como tier). Backup vira ação HSM de primeira classe, não scan hostil.
  • Bandwidth shaping por carga Slurm — lê utilização viva do cluster; explode em idle, throttla em jobs de alta prioridade. QoS estático não funciona em HPC compartilhado.

Diferenciais comerciais

Recurso Bacula Community Bacula Enterprise / Veeam PodHeitor HPC
Lustre / GPFS / BeeGFS / CephFS / WekaFS nativo Não Não Sim
Walker paralelo (10–100× FD padrão) Não Não Sim
Sharding de namespace + N streams SD Não Não Sim
Incrementais via changelog do FS Não Parcial Sim
Slurm/PBS/LSF orchestration Não Não Sim
Restripe-on-restore Não Não Sim
HSM como tier Não Não Sim
Custo Grátis (sem suporte) $$$$ ≥50% mais barato que Enterprise/Veeam

Compatibilidade

  • Bacula Community 15.0.3+
  • Filesystems: Lustre 2.14+, IBM Spectrum Scale (GPFS) 5.x, BeeGFS 7.x, CephFS, WekaFS
  • Schedulers: Slurm 22.05+, PBS Pro, LSF, OpenPBS
  • Distros: RHEL/Oracle/Rocky/Alma 9.x, Debian 12+, Ubuntu 22.04+
  • Arquitetura: x86_64 (musl static-pie binary)
  • Rust toolchain: 1.95+ (build), runtime sem dependência

Instalação

Instalação via pacote .deb ou .rpm oficial — sem build em produção:

# RHEL / Oracle Linux / Rocky / Alma 9.x
sudo dnf install podheitor-hpc-plugin-0.1.0-1.el9.x86_64.rpm
# Sub-pacote opcional para hosts com Lustre client:
sudo dnf install podheitor-hpc-plugin-lustre-0.1.0-1.el9.x86_64.rpm

# Debian / Ubuntu
sudo dpkg -i podheitor-hpc-plugin_0.1.0-1_amd64.deb
sudo dpkg -i podheitor-hpc-plugin-lustre_0.1.0-1_amd64.deb

Os pacotes instalam libpodheitor_hpc_fd.so em /opt/bacula/plugins/, o backend podheitor-hpc-backend, a CLI podheitor-hpc, unit systemd, e exemplos de configuração. bacula-fd reinicia automaticamente via post-install.

Whitepaper técnico

📘 Ler o whitepaper técnico completo — arquitetura interna, modelo de paralelismo, sharding, drivers de changelog, restripe-on-restore, benchmarks Phase 10 e topologias de deployment.

📄 Versão executiva (PDF): PodHeitor HPC Whitepaper PDF

Pronto para mudar?

Traga sua proposta de renovação ou contratação do Bacula Enterprise, Veeam, Commvault ou NetBackup. Garantimos no mínimo 50% de desconto, com mais funcionalidades inclusas.

Heitor Faria — Fundador, PodHeitor International
[email protected]
☎ +1 (789) 726-1749 · +55 (61) 98268-4220 (WhatsApp)
30 dias de trial comercial gratuito para workloads qualificadas.

Disponível em: pt-brPortuguêsenEnglish (Inglês)esEspañol (Espanhol)