Dina Belova f021bc9953 Make main docs page more readable
* Edit index.rst to dynamically import sub-pages
* Rename results folders to be similar to test plans folders
* Rename results headers to be similar to test plans headers

Co-Authored-By: David Burnazyan <dburnazyan@mirantis.com>
Closes-Bug: #1609923
Change-Id: I7d0d9a534c931a85ea7b074cee5429d1175f038b
2016-08-08 14:12:05 -07:00

13 KiB

OpenStack control plane performance report

Abstract

This document includes OpenStack control plane performance test results. All tests have been performed regarding openstack_control_plane_performance_test_plan

Environment description

Environment contains 4 types of servers:

  • rally node
  • controller node
  • compute-osd node
  • compute node
Amount of servers each role
Role Servers count
rally 1
controller 3
compute 176
compute-osd 20

Hardware configuration of each server

All servers have same configuration describing in table below

Description of servers hardware
server vendor,model HP,DL380 Gen9
CPU
vendor,model ----------------+ processor_count ----------------+ core_count ----------------+ frequency_MHz Intel,E5-2680 v3 -------------------------------+ 2 -------------------------------+ 12 -------------------------------+ 2500
RAM
vendor,model ----------------+ amount_MB HP,752369-081 -------------------------------+ 262144
NETWORK
interface_name ----------------+ vendor,model ----------------+ bandwidth p1p1 -------------------------------+ Intel,X710 Dual Port -------------------------------+ 10G
STORAGE

dev_name ----------------+ vendor,model

----------------+ SSD/HDD ----------------+ size

/dev/sda -------------------------------+ | raid10 - HP P840 | 12 disks EH0600JEDHE -------------------------------+ HDD -------------------------------+ 3,6TB

Network configuration of each server

All servers have same network configuration:

Network Scheme of the environment

Here is the part of switch configuration for each switch port which connected to ens1f0 interface of a server:

switchport mode trunk
switchport trunk native vlan 600
switchport trunk allowed vlan 600-602,630-649
spanning-tree port type edge trunk
spanning-tree bpduguard enable
no snmp trap link-status

Software configuration on servers with controller, compute and compute-osd roles

Services on servers by role
Role Service name
controller
horizon
keystone
nova-api
nava-scheduler
nova-cert
nova-conductor
nova-consoleauth
nova-consoleproxy
cinder-api
cinder-backup
cinder-scheduler
cinder-volume
glance-api
glance-glare
glance-registry
neutron-dhcp-agent
neutron-l3-agent
neutron-metadata-agent
neutron-openvswitch-agent
neutron-server
heat-api
heat-api-cfn
heat-api-cloudwatch
ceph-mon
rados-gw
memcached
rabbitmq_server
mysqld
galera
corosync
pacemaker
haproxy
compute
nova-compute
neutron-l3-agent
neutron-metadata-agent
neutron-openvswitch-agent
compute-osd
nova-compute
neutron-l3-agent
neutron-metadata-agent
neutron-openvswitch-agent
ceph-osd
Software version on servers with controller, compute and compute-osd roles
Software Version
OpenStack Mitaka
Ceph Hammer
Ubuntu Ubuntu 14.04.3 LTS

You can find outputs of some commands and /etc folder in the following archives:

controller-1.tar.gz <configs/controller-1.tar.gz>
controller-2.tar.gz <configs/controller-2.tar.gz>
controller-3.tar.gz <configs/controller-3.tar.gz>
compute-1.tar.gz <configs/compute-1.tar.gz>
compute-osd-1.tar.gz <configs/compute-osd-1.tar.gz>

Software configuration on servers with rally role

On this server should be installed Rally. How to do it you can find in Rally installation documentation

Software version on server with rally role
Software Version
Rally 0.4.0
Ubuntu Ubuntu 14.04.3 LTS

Testing process

Some test parameters
Name Value
Volume size to create in Cinder 1GB
Flavor to create VM from m1.tiny
Image name to create VM from cirros
  1. Create work directory on server with Rally role. In future we will call that directory as WORK_DIR

  2. Create directory "plugins" in WORK_DIR and copy to that directory nova_performance.py <../../test_plans/control_plane/plugins/nova_performance.py> plugin.

  3. Create directory "scenarios" in WORK_DIR and copy to that directory boot_attach_live_migrate_and_delete_server_with_secgroups.json <rally_scenarios/boot_attach_live_migrate_and_delete_server_with_secgroups.json>, create-and-delete-image.json <rally_scenarios/create-and-delete-image.json> and keystone.json <rally_scenarios/keystone.json> scenarios.

  4. Create deployment.json file in WORK_DIR and fill it with OpenStack environment info. It should looks like this:

    configs/deployment.json

  5. Create job-params.yaml file in WORK_DIR and fill it with scenarios info. It should looks like this:

    configs/job-params.yaml

  6. Perform tests:

    configs/run_test_script.sh

As a result of this part we got the following HTML file:

rally_report.html <configs/rally_report.html>

Test results

All values in tables below are in seconds.

Cinder

Operation Mean (sec) 90%ile (sec) 50%ile (sec) Max (sec) Min (sec)
create_volume 2.619 2.754 2.593 2.988 2.453
delete_volume 2.339 2.449 2.323 2.666 2.200

Glance

Operation Mean (sec) 90%ile (sec) 50%ile (sec) Max (sec) Min (sec)
create_image 44.204 56.243 43.835 74.826 22.382
delete_image 1.579 2.049 1.540 3.846 0.718

Keystone

Operation Mean (sec) 90%ile (sec) 50%ile (sec) Max (sec) Min (sec)
authenticate 0.099 0.135 0.093 0.718 0.054

Neutron

Operation Mean (sec) 90%ile (sec) 50%ile (sec) Max (sec) Min (sec)
create_20_rules 4.535 4.883 4.515 5.577 3.873
create_2_security_groups 0.412 0.477 0.401 0.670 0.292
delete_2_security_groups 0.380 0.480 0.371 0.771 0.234

Nova

Operation Mean (sec) 90%ile (sec) 50%ile (sec) Max (sec) Min (sec)
attach_volume 2.806 2.985 2.781 3.294 2.563
boot_server 11.989 12.937 11.953 14.265 9.482
delete_server 2.531 2.670 2.467 4.817 2.348
detach_volume 2.701 2.861 2.684 3.201 2.464
find_host_to_migrate 0.554 0.682 0.520 0.954 0.419
live_migrate 15.351 15.715 15.221 28.692 12.623