Home

Awesome

Maven metadata URL CI status Docker Pulls Gitter chat

Mongoose Bundle

The repo contains the automation scripts to build/test/deploy the Mongoose backward compatibility bundle. Previously the repo contained the Mongoose sources for the basic functionality and some commonly used extensions. Currently it was split into the independent repos and the corresponding components. Each component has its own documentation, CI versioning. For the mongoose documentation refer this link.

Bundle Contents

The components listed below are included in this backward compatibility bundle.

RepoDescriptionLatest ReleaseIntegration StatusIssue Tracker Link
mongoose-baseMongoose storage performance testing tool - base functionalityMaven metadata URLGitlab pipeline statusBASE
mongoose-load-step-pipelineLoad operations pipeline (create,delay,read-then-update, for example), extensionMaven metadata URLGitlab pipeline statusBASE
mongoose-load-step-weightedWeighted load extension, allowing to generate 20% write and 80% read operations, for exampleMaven metadata URLGitlab pipeline statusBASE
mongoose-storage-driver-coopCooperative multitasking storage driver primitive, utilizing fibersMaven metadata URLGitlab pipeline statusBASE
mongoose-storage-driver-nettyNetty-storage-driver-nettyd storage driver primitive, extends the cooperative multitasking storage driver primitiveMaven metadata URLGitlab pipeline statusBASE
mongoose-storage-driver-nioNon-blocking I/O storage driver primitive, extends the cooperative multitasking storage driver primitiveMaven metadata URLGitlab pipeline statusBASE
mongoose-storage-driver-httpHTTP storage driver primitive, extends the Netty-storage-driver-httpd storage driver primitiveMaven metadata URLGitlab pipeline statusBASE
mongoose-storage-driver-fsVFS storage driver, extends the NIO storage driver primitiveMaven metadata URLGitlab pipeline statusFS
mongoose-storage-driver-atmosDell EMC Atmos storage driver, extends the HTTP storage driver primitiveMaven metadata URLGitlab pipeline statusBASE
mongoose-storage-driver-s3Amazon S3 storage driver, extends the HTTP storage driver primitiveMaven metadata URLGitlab pipeline statusS3
mongoose-storage-driver-swiftOpenStack Swift storage driver, extends the HTTP storage driver primitiveMaven metadata URLGitlab pipeline statusSWIFT

Additional Extensions

The additional extension are not included in this bundle.

RepoDescriptionLatest ReleaseIntegration StatusIssue Tracker Link
mongoose-storage-driver-preemptPreemptive multitasking storage driver primitive, using thread-per-task approach for the I/OMaven metadata URLGitlab pipeline statusBASE
mongoose-storage-driver-hdfsApache HDFS storage driver, extends the NIO storage driver primitiveMaven metadata URLGitlab pipeline statusHDFS
mongoose-storage-driver-pravegaPravega storage driver, extends the preemptive multitasking storage driver primitiveMaven metadata URLGitlab pipeline statusPRAVEGA
mongoose-storage-driver-kafkaApache Kafka storage driver, extends the preemptive multitasking storage driver primitiveMaven metadata URLGitlab pipeline statusKAFKA
mongoose-storage-driver-pulsarApache Pulsar storage driver, extends the cooperative multitasking storage driver primitiveMaven metadata URLGitlab pipeline statusPULSAR

Auxiliary Tools

RepoDescriptionLatest ReleaseIntegration StatusIssue Tracker Link
darzeeMongoose GUI web applicationTBDTBDGUI
mongoose-helm-chartsHelm charts to easily deploy Mongoose in K8s environmentTBDTBDHELM
e2e-latency-generatorThe tool consuming the Mongoose's operations trace output data and producing the raw end-to-end latency data and heatmap chart---
scenario-converter-3to4This tool converts the Json-scenarios used in the Mongoose v3.* into new JavaScript-scenarios.---

Backward Compatibility Notes

Example:

java -jar mongoose-bundle-<BUNDLE_VERSION>.jar \
    --storage-driver-type=s3 \
    --storage-net-node-port=9020

Build bundle

./gradlew clean jar
ls -l build/libs

Deploy

Bare Jar Download

https://repo.maven.apache.org/maven2/com/github/emc-mongoose/mongoose-bundle/

Docker

docker run ... emcmongoose/mongoose[:<VERSION>] ...

Dependency

The following dependency graph should be considered when running Mongoose w/o Docker and using some specific extension. For example, using the mongoose-storage-driver-hdfs extension will require to have the mongoose-storage-driver-coop and mongoose-storage-driver-nio extensions in the ~/.mongoose/<BASE_VERSION>/ext directory (with proper versions).

mongoose-base
    |___ mongoose-load-step-pipeline
    |___ mongoose-load-step-weighted
    |___ mongoose-storage-driver-coop
    |       |___ mongoose-storage-driver-netty
    |       |       |___ mongoose-storage-driver-http
    |       |               |___ mongoose-storage-driver-atmos
    |       |               |___ mongoose-storage-driver-s3
    |       |               |___ mongoose-storage-driver-swift
    |       |___ mongoose-storage-driver-nio
    |       |       |___ mongoose-storage-driver-fs
    |       |       |___ mongoose-storage-driver-hdfs
    |       |___ mongoose-storage-driver-pulsar
    |___ mongoose-storage-driver-preempt
            |___ mongoose-storage-driver-kafka
            |___ mongoose-storage-driver-pravega