Change-Id: I68acbcd3f656faa57540d2d7d4b8e1f2ffb8cfae Closes-Bug: #1609927
6.1 KiB
OpenStack load testing
- status
-
ready
- version
-
1.0
- Abstract
This test plan describes a set of scenarios to measure maximum number of requests per second for a particular OpenStack API service.
- Conventions
-
- RPS Requests-per-second - number of requests send to an API endpoint per second
Test Plan
Rally is a benchmarking tool that was designed specifically for OpenStack API testing. To make this possible, Rally automates and unifies multi-node OpenStack deployment, cloud verification, benchmarking & profiling. This is a simple way to check cloud workability and performance of control plane operations running on it. This test plan describes several Rally scenarios that can cover almost all most important in perms of performance basic cloud operations e.g. VMs creation, work with the security groups, authentication and other operations.
Test Environment
Preparation
This test plan can be executed with help of Rally tool.
Environment description
The environment description includes hardware specification of servers, network parameters, operation system and OpenStack deployment characteristics.
Hardware
This section contains list of all types of hardware nodes.
Parameter | Value | Comments |
model | e.g. Supermicro X9SRD-F | |
CPU | e.g. 6 x Intel(R) Xeon(R) CPU E5-2620 v2 @ 2.10GHz | |
role | e.g. compute or network |
Network
This section contains list of interfaces and network parameters. For complicated cases this section may include topology diagram and switch parameters.
Parameter | Value | Comments |
network role | e.g. provider or public | |
card model | e.g. Intel | |
driver | e.g. ixgbe | |
speed | e.g. 10G or 1G | |
MTU | e.g. 9000 | |
offloading modes | e.g. default |
Software
This section describes installed software.
Parameter | Value | Comments |
OS | e.g. Ubuntu 14.04.3 | |
OpenStack | e.g. Mitaka | |
Hypervisor | e.g. KVM | |
Neutron plugin | e.g. ML2 + OVS | |
L2 segmentation | e.g. VLAN / VxLAN / GRE | |
virtual routers | e.g. HA / DVR |
Test Case 1: Neutron Load Testing
Description
In this scenario Neutron API is loaded with constant flow of requests. The number of requests per second is tuned to keep success rate at 100%. Duration of operations is collected and stats are calculated. The result is presented in table format.
List of performance metrics
Priority | Value | Measurement Units | Description |
---|---|---|---|
1 | RPS | Number of API requests per second |
Tools
This test plan can be executed with help of Rally. Following is the list of Rally scenarios.
Create Neutron networks
In this scenario Rally creates networks at constant rate. The single iteration includes the following operations:
- create network
rally_scenarios/neutron_create_networks.json
Create Neutron network with 1 port
In this scenario Rally creates Neutron network with one port at constant rate. The single iteration includes the following operations:
- create network
- create one port
rally_scenarios/neutron_create_network_with_port.json
Create Neutron ports
In this scenario Rally creates Neutron network and ports at constant rate. The single iteration includes the following operations:
- create network
- create 20 ports in each of network
- list all ports
rally_scenarios/neutron_create_and_list_ports.json
Create Cinder volumes
In this scenario Rally creates volumes at constant rate. The single iteration includes the following operations:
- create volume
rally_scenarios/cinder_create_volumes.json
Boot Nova servers
In this scenario Rally boots Nova servers at constant rate:
- boot server
rally_scenarios/nova_boot_servers.json
Reports
- Test plan execution reports:
-
openstack_load_report