Hasty Briefsbeta

Longhorn – A Kubernetes-Native Filesystem

4 days ago
  • #Storage
  • #DisasterRecovery
  • #Kubernetes
  • Longhorn is a distributed block storage solution for Kubernetes, similar to ZFS but designed for Kubernetes environments.
  • It allows provisioning block devices from pools (e.g., SSD and HDD pools) and creating storage classes with customizable properties.
  • Longhorn features a web console for easy management, built-in snapshot-based backups (commonly to S3-compatible buckets), and synchronous replication.
  • Installation is done via Helm charts, with configurations managed through ArgoCD, including CPU guarantees, replica counts, and backup targets.
  • Nodes and disks are configured with specific properties (e.g., disk paths, scheduling, tags) to define storage behavior.
  • Storage classes specify replica counts, disk selectors, and recurring backup jobs for volumes.
  • Longhorn volumes can be dynamically attached and detached, enabling seamless failover between nodes.
  • Backup functionality is built-in, with schedules defined via custom resources (RecurringJob) and backup targets configurable for different environments.
  • Disaster recovery (DR) setups can use standby volumes that sync from backups, ready for instant activation.
  • Longhorn's web interface provides intuitive management, though permanent configurations are recommended to be managed via GitOps (e.g., ArgoCD).
  • Migration to Longhorn involves creating new volumes and syncing data from old volumes, often using rsync.