MooseFS 4.57.7 Released: Faster GUI and Prometheus Support

July 3rd, 2025 | MooseFS Team

post_thumbnail

We are pleased to announce the release of MooseFS 4.57.7, a version that introduces major architectural improvements with a focus on performance, observability, and maintainability. This release brings a significant evolution in how MooseFS is managed and monitored – particularly through a complete overhaul of the Web GUI and a new foundation for metrics collection.

While much of the work in this version is technical in nature, administrators and users will benefit from a smoother experience, better diagnostics, and more efficient resource usage. The changes also prepare MooseFS for future extensibility and integrations.

Reengineered GUI: New Server, Unified Package, and Faster Response

One of the most visible – and impactful – changes in MooseFS 4.57.7 is the complete replacement of the legacy Web GUI server.

The old GUI architecture consisted of two components: mfscgi and mfscgiserv, both based on Python scripts. These have now been replaced by a new, dedicated GUI server written in C, introduced as part of the new mfsgui package.

This new GUI server brings several key improvements:

  • Improved performance: Users will notice much faster loading times, especially in charts and tables.
  • Simplified configuration: Settings are now handled through a proper configuration file (/etc/mfsgui.cfg), replacing the previous method of editing inline HTML content.
  • Visual consistency: The overall appearance of the GUI remains familiar, but various refinements have been made for improved usability. Tabs have been reorganized, and several tables have been cleaned up and restyled for clarity.

The GUI has also been refactored internally to support these changes and to make future improvements easier to implement.

Prometheus Metrics Integration

Another major enhancement in this release is native support for Prometheus-compatible metrics. Metrics are now directly available from the new GUI server without impacting the performance or availability of the interface.

This change allows administrators to seamlessly integrate MooseFS into their existing monitoring and observability pipelines – no third-party exporters or workarounds required.

Internal Refactors and Technical Improvements

In addition to visible changes, MooseFS 4.57.7 includes several internal updates aimed at improving code quality, maintainability, and stability across core components.

Client Code Improvement

We replaced the use of a potentially unsafe sprintf() function in client code. While the original use was not exploitable, the change was made to eliminate warnings on macOS and to follow modern safe coding practices.

CLI Refactor

The command-line interface code was reorganised into multiple Python modules to improve maintainability. There are no functional changes for end users – this refactor is internal and backward-compatible.

Daemon and Master Enhancements

  • A rare and long-standing bug in lock handling within the MooseFS master has been fixed. This issue only manifested under complex operation sequences and was reported in GitHub issue.
  • A defensive check was added in the daemons to handle an edge case where poll() might return zero. This scenario is highly unlikely but now safely accounted for.
  • An issue with disabling the Linux Out-of-Memory (OOM) killer has been resolved. The error-handling logic was previously misinterpreting return values, and the disabling operation was being performed incorrectly. This fix was prompted by an insightful community question in GitHub Discussions.

Upgrade Notes

Users upgrading to MooseFS 4.57.7 should take note of the following:

  • Uninstall mfscgi and mfscgiserv if present, and install mfsgui in their place.
  • Move GUI-related configuration to the new /etc/mfsgui.cfg file. Legacy configuration embedded in HTML is no longer used.
  • If you are using Prometheus or planning to, configure your monitoring system to collect metrics directly from the GUI server.

No changes are required for CLI usage or client interactions beyond standard package upgrades.

Conclusion

MooseFS 4.57.7 brings meaningful improvements to system transparency, configuration management, and long-term stability. By replacing the legacy Python GUI with a purpose-built C implementation, we’ve significantly improved speed and flexibility – while laying the groundwork for future enhancements.

We recommend all users upgrade to this version to benefit from its improvements and to ensure compatibility with upcoming features.

If you have feedback or questions, feel free to join the discussion on GitHub or contact us directly.