FAQ
Port Conflicts?
Multiple instances on the same node must use different port values. Example:
juice_instances:
fs1:
path: /fs1
meta: postgres://...
port: 9567
fs2:
path: /fs2
meta: postgres://...
port: 9568
Why does changing data not take effect?
data is only used by juicefs format --no-update. After filesystem creation it will not change.
To switch backend, migrate data and reformat manually.
How to add a new instance?
- Add instance definition in config
- Run:
./juice.yml -l <host> -e fsname=<name>
How to remove an instance?
- Set instance
statetoabsent - Run:
./juice.yml -l <host> -t juice_clean
Removal does not delete PostgreSQL metadata or object storage data.
Where is file data stored?
Depends on data:
--storage postgres: data in PostgreSQLpg_largeobject--storage minio/s3: data in object storage bucket
Metadata is stored in the metadata engine defined by meta (in Pigsty production scenarios, this is usually PostgreSQL).
Multi-node mount notes?
- Use the same
metaand instance name on all nodes - Only one node needs to format; others will skip
- Ensure
portdoes not conflict on each node
Monitoring target not generated?
juice_register only writes /infra/targets/juice/ when infra group exists.
You can run manually:
./juice.yml -l <host> -t juice_register
How to change mount options?
After updating mount in the instance, refresh config first and then manually restart the service:
./juice.yml -l <host> -t juice_config,juice_launch
systemctl restart juicefs-<name>
Feedback
Was this page helpful?
Thanks for the feedback! Please let us know how we can improve.
Sorry to hear that. Please let us know how we can improve.