mmoxi is both an executable binary that can be run, and a library that can be used in Rust programs.
Installing the command-line executable
Assuming you have Rust/Cargo installed , run this command in a terminal:
cargo install mmoxi
It will make the mmoxi command available in your PATH if you've allowed the PATH to be modified when installing Rust . cargo uninstall mmoxi uninstalls.
Adding mmoxi library as a dependency
Run this command in a terminal, in your project's directory:
cargo add mmoxi
To add it manually, edit your project's Cargo.toml file and add to the [dependencies] section:
mmoxi = "0.4.2"
The mmoxi library will be automatically available globally.
Read the mmoxi library documentation .
Back to the crate overview .
Readme
mmoxi
A Rust library and collection of tools for IBM Storage Scale (formerly
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:
An nmon integration that groups NSDs by ( fs, pool) -tuple to be shown
in nmon s 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.
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