Module: JUICE

JuiceFS distributed filesystem using PostgreSQL as metadata engine, with PITR-capable shared storage.

JuiceFS is a high-performance POSIX-compatible distributed filesystem that can use PostgreSQL as its metadata engine.

Pigsty’s JUICE module provides complete JuiceFS deployment and management, with multi-instance support, automated installation, monitoring integration, and filesystem PITR via PostgreSQL backup recovery.


Features

  • PostgreSQL Metadata Engine: Uses PostgreSQL for filesystem metadata storage, with HA and PITR capability
  • Flexible Data Storage: Supports PostgreSQL Large Object, MinIO, S3 and other storage backends
  • Multi-Instance Support: Single node can mount multiple independent JuiceFS filesystems
  • PITR Capability: Leverage PostgreSQL backup recovery for filesystem point-in-time recovery
  • Monitoring Integration: Auto-integrated with VictoriaMetrics monitoring system

Config Example

Typical JuiceFS configuration using PostgreSQL as metadata and data storage:

juice_instances:
  jfs:
    path  : /fs
    meta  : postgres://dbuser_meta:[email protected]:5432/meta
    data  : --storage postgres --bucket 10.10.10.10:5432/meta --access-key dbuser_meta --secret-key DBUser.Meta
    port  : 9567

Use Cases

JUICE module is suitable for:

  • AI Coding Sandbox: Persistent storage for Code-Server, JupyterLab
  • Shared Storage: Multi-node mount same filesystem for file sharing
  • Data Lake Storage: Large capacity storage for data analysis, ML tasks
  • Backup Archive: Low-cost data archiving using object storage backends

Documentation

  • Configuration: Configure JuiceFS instances, storage backends and mount options
  • Parameters: JUICE module parameter reference
  • Playbook: Deployment and management playbook guide
  • Administration: JuiceFS management SOPs, including scaling, PITR recovery
  • Monitoring: JuiceFS metrics and Grafana dashboards
  • FAQ: Common questions about JUICE module

Configuration

Choose appropriate storage backends and configure JuiceFS filesystem instances

Parameters

JUICE module provides 2 global parameters for JuiceFS deployment and configuration

Playbooks

Use ansible playbooks to manage JuiceFS filesystems, common commands reference.

Administration

JuiceFS filesystem management SOP - create, remove, expand, and troubleshoot

Monitoring

JuiceFS filesystem monitoring metrics and Grafana dashboards

FAQ

Frequently asked questions about the JUICE module


Last Modified 2026-01-25: v4.0 batch update (65761a0)