8 releases

0.3.1 Aug 9, 2024
0.3.0 Jun 5, 2024
0.2.2 Nov 3, 2023
0.2.1 Oct 20, 2023
0.1.1 Mar 2, 2022

#392 in Filesystem

Download history 90/week @ 2024-08-05 13/week @ 2024-08-12 11/week @ 2024-09-16 22/week @ 2024-09-23 7/week @ 2024-09-30

436 downloads per month

GPL-3.0-or-later

145KB
4K SLoC

mmoxi

A Rust library and collection of tools for IBM Spectrum Scale (formerly GPFS) file systems.

Motivation

The Rust library at the moment is mostly mm* -Y parsing for easier access in tooling. We did all the mm* -Y parsing and tooling in shell scripts before. You can certainly do this, but writing good tooling in bash just doesn't scale. Having a library for access to the parsed output just makes writing tools so much easier.

Notable exceptions to parsing in the library and listing in tooling are:

  1. An nmon integration that groups NSDs by (fs,pool)-tuple to be shown in nmons Disk Group I/O mode:

    mmoxi cache nmon
    NMON=g nmon -s 1 -d 1024 -g '/run/mmlocal-nmon-cache'
    

    This gives a better view of file servers and how much I/O they do with NSD groups rather than individual NSDs or everything summed up.

  2. Prometheus metrics for:

    • disk availability
    • disk pool size
    • disk pool group I/O
    • quotas

Docs and Usage

See the docs for library documentation and mmoxi help [subcommand...] for the CLI tools.

Installation

cargo install

cargo install mmoxi

from source

git clone https://github.com/idiv-biodiversity/mmoxi.git
cd mmoxi
cargo build --release
install -Dm755 target/release/mmoxi ~/bin/mmoxi

Dependencies

~3–12MB
~138K SLoC