Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cloudmercato/os-benchmark
Handy tool for Object Storage performance benchmark
https://github.com/cloudmercato/os-benchmark
Last synced: 2 months ago
JSON representation
Handy tool for Object Storage performance benchmark
- Host: GitHub
- URL: https://github.com/cloudmercato/os-benchmark
- Owner: cloudmercato
- Created: 2020-06-11T01:32:26.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-11-20T19:45:52.000Z (2 months ago)
- Last Synced: 2024-11-20T20:32:21.495Z (2 months ago)
- Language: Python
- Size: 213 KB
- Stars: 11
- Watchers: 3
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.rst
Awesome Lists containing this project
- awesome-starred - cloudmercato/os-benchmark - Handy tool for Object Storage performance benchmark (others)
README
Object Storage Benchmark
========================.. image:: https://badge.fury.io/py/os-benchmark.svg
:target: https://badge.fury.io/py/os-benchmark.. image:: https://travis-ci.org/cloudmercato/os-benchmark.svg?branch=master
:target: https://travis-ci.org/cloudmercato/os-benchmark.. image:: https://coveralls.io/repos/github/cloudmercato/os-benchmark/badge.svg?branch=master
:target: https://coveralls.io/github/cloudmercato/os-benchmark?branch=master.. image:: https://readthedocs.org/projects/object-storage-benchmark/badge/?version=latest
:target: https://object-storage-benchmark.readthedocs.io/?badge=latest
:alt: Documentation Status**OS-Benchmark** is a simple tool to measure object storage operations.
Features
--------Benchmarks
~~~~~~~~~~- **Upload timing**
- **Download timing**
- **Multi-part Download timing**
- **Copy timing**
- **cURL timing**
- **Video Streaming**
- **Apache Benchmark**
- **Ping**
- **TCP-Ping**
- **Traceroute**
- **TCP-Traceroute**Install
-------::
pip install os-benchmark
Usage
-----Configuration
~~~~~~~~~~~~~You need to specify a YAML config file such as following: ::
---
my_exoscale: # Configuration ID
driver: exoscale # Driver key
aws_access_key_id: mykey # Drivers params
aws_secret_access_key: mysecrect
endpoint_url: https://sos-ch-dk-2.exo.io
In command line, ``--config-file`` and ``--config-raw`` can be used to make the
choice, else ``~/.osb.yml``, then ``/etc/osb.yml`` will be used.Command line
~~~~~~~~~~~~::
os-benchmark --help
usage: os-benchmark [--config-file CONFIG_FILE] [--config-raw CONFIG_RAW]
[--config-name CONFIG_NAME] [-v {0,1,2}] [-i]
{help,create-bucket,list-buckets,delete-bucket,list-objects,upload,delete-object,clean-bucket,clean,time-upload,time-download,time-multi-download}
...positional arguments:
{help,create-bucket,list-buckets,delete-bucket,list-objects,upload,delete-object,clean-bucket,clean,time-upload,time-download}
Sub-commandoptional arguments:
--config-file CONFIG_FILE
Specify a configuration file to use.
--config-raw CONFIG_RAW
Provide a raw configuration as JSON instead of a
stored file.
--config-name CONFIG_NAME
Select a driver configuration to use.
-v {0,1,2}, --verbosity {0,1,2}
Verbosity level; 0=minimal output, 1=normal output
2=verbose output
-i, --noinput Disable any prompt
Test example: File uploading
~~~~~~~~~~~~~~~~~~~~~~~~~~~~::
$ os-benchmark time-upload --object-size 1 --object-number 5
version 0.1
operation upload
ops 5
time 2.701468
rate 1.850845
bw 0.000002
object_size 1
total_size 5
avg 0.539478
stddev 0.126987
med 0.537267
min 0.415063
max 0.744637Network tests configuration
~~~~~~~~~~~~~~~~~~~~~~~~~~~On linux based OS, if you use a non-root user, it must be allowed to create sockets.
Please use sudo or the following command to allow your user:::setcap cap_net_raw=eip $(readlink -f $(which python))
Contribute
----------This project is created with ❤️ for free by `Cloud Mercato`_ under BSD License. Feel free to contribute by submitting a pull request or an issue.
.. _`Cloud Mercato`: https://www.cloud-mercato.com/