Skip to main content

A data path performance tool for OpenStack clouds.

Project description

VMTP is a data path performance tool for OpenStack clouds.

Features

If you need a quick and simple way to get VM level or host level single-flow throughput and latency numbers from any OpenStack cloud, and take into account various Neutron topologies, this is the tool to use. VMTP is a python application that will automatically perform ping connectivity, ping round trip time measurement (latency) and TCP/UDP throughput measurement for the following flows on any OpenStack deployment:

  • VM to VM same network (private fixed IP)

  • VM to VM different network same tenant (intra-tenant L3 fixed IP)

  • VM to VM different network and tenant (floating IP inter-tenant L3)

Optionally, when an external Linux host is available:

  • External host/VM download and upload throughput/latency (L3/floating IP)

Optionally, when SSH login to any Linux host (native or virtual) is available:

  • Host to host throughput (intra-node and inter-node)

Optionally, VMTP can extract automatically CPU usage from all native hosts in the cloud during the throughput tests, provided the Ganglia monitoring service (gmond) is installed and enabled on those hosts.

For VM-related flows, VMTP will automatically create the necessary OpenStack resources (router, networks, subnets, key pairs, security groups, test VMs), perform the throughput measurements then cleanup all related resources before exiting.

See the usage page for the description of all the command line arguments supported by VMTP.

Pre-requisite

VMTP runs on any Python 2.X envirnment (validated on Linux and MacOSX).

For native/external host throughputs

  • A public key must be installed on the target hosts (see ssh password-less access below)

For pre-existing native host throughputs

  • Firewalls must be configured to allow TCP/UDP ports 5001 and TCP port 5002

For running VMTP Docker Image

  • Docker is installed. See here for instructions.

Sample Results Output

VMTP will display the results to stdout with the following data:

- Session general information (date, auth_url, OpenStack encaps, VMTP version, OpenStack release, Agent type, CPU...)
- List of results per flow, for each flow:
|   flow name
|   to and from IP addresses
|   to and from availability zones (if VM)
|   - results:
|   |   -TCP
|   |   |  packet size
|   |   |  throughput value
|   |   |  number of retransmissions
|   |   |  round trip time in ms
|   |   |  - CPU usage (if enabled), for each host in the openstack cluster
|   |   |  | baseline (before test starts)
|   |   |  | 1 or more readings during test
|   |   -UDP
|   |   |  - for each packet size
|   |   |  | throughput value
|   |   |  | loss rate
|   |   |  | CPU usage (if enabled)
|   |   - ICMP
|   |   |  average, min, max and stddev round trip time in ms

Detailed results can also be stored in a file in JSON format using the –json command line argument and/or stored directly into a MongoDB server.

Limitations and Caveats

VMTP only measures performance for single-flows at the socket/TCP/UDP level (in a VM or natively). Measured numbers therefore reflect what most applications will see.

It is not designed to measure driver level data path performance from inside a VM (such as bypassing the kernel TCP stack and write directly to virtio), there are better tools that can address this type of mesurement.

License

VMTP is licensed under Apache License 2.0.

Below are the benchmark tools that are used in VMTP, and you must accept the license of each tool before using VMTP.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vmtp-2.0.1.tar.gz (163.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vmtp-2.0.1-py2-none-any.whl (8.7 kB view details)

Uploaded Python 2

File details

Details for the file vmtp-2.0.1.tar.gz.

File metadata

  • Download URL: vmtp-2.0.1.tar.gz
  • Upload date:
  • Size: 163.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for vmtp-2.0.1.tar.gz
Algorithm Hash digest
SHA256 c8f9fd0bb657af895ae6062f4786e450d39f0bcf276d6b563cd3bd1675adb088
MD5 d41b11797e1cf1b3851ece2c8a09b1da
BLAKE2b-256 1a3caa4ea785200aec0f1b8c2d199a7b6e67aaa2874b508662ad371363c54eb1

See more details on using hashes here.

File details

Details for the file vmtp-2.0.1-py2-none-any.whl.

File metadata

File hashes

Hashes for vmtp-2.0.1-py2-none-any.whl
Algorithm Hash digest
SHA256 6d6a607c2dc09c4b843c8a841c2994019aed01f04a375990853512a70f2f431c
MD5 22184042851f1b61dc4539c444802a14
BLAKE2b-256 598ab6dc0f55416c984e50c9679c87c7104032727b2200a01efc7ba52d2bc5c7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page