1 .. This work is licensed under a Creative Commons Attribution 4.0 International
3 .. http://creativecommons.org/licenses/by/4.0
4 .. (c) OPNFV, Huawei Technologies Co.,Ltd and others.
6 *************************************
7 Yardstick Test Case Description TC074
8 *************************************
10 .. _Storperf: https://wiki.opnfv.org/display/storperf/Storperf
12 +-----------------------------------------------------------------------------+
15 +--------------+--------------------------------------------------------------+
16 |test case id | OPNFV_YARDSTICK_TC074_Storperf |
18 +--------------+--------------------------------------------------------------+
19 |metric | Storage performance |
21 +--------------+--------------------------------------------------------------+
22 |test purpose | Storperf integration with yardstick. The purpose of StorPerf |
23 | | is to provide a tool to measure block and object storage |
24 | | performance in an NFVI. When complemented with a |
25 | | characterization of typical VF storage performance |
26 | | requirements, it can provide pass/fail thresholds for test, |
27 | | staging, and production NFVI environments. |
29 | | The benchmarks developed for block and object storage will |
30 | | be sufficiently varied to provide a good preview of expected |
31 | | storage performance behavior for any type of VNF workload. |
33 +--------------+--------------------------------------------------------------+
34 |configuration | file: opnfv_yardstick_tc074.yaml |
36 | | * agent_count: 1 - the number of VMs to be created |
37 | | * agent_image: "Ubuntu-14.04" - image used for creating VMs |
38 | | * public_network: "ext-net" - name of public network |
39 | | * volume_size: 2 - cinder volume size |
40 | | * block_sizes: "4096" - data block size |
41 | | * queue_depths: "4" |
42 | | * StorPerf_ip: "192.168.200.2" |
43 | | * query_interval: 10 - state query interval |
44 | | * timeout: 600 - maximum allowed job time |
46 +--------------+--------------------------------------------------------------+
47 |test tool | Storperf_ |
49 | | StorPerf is a tool to measure block and object storage |
50 | | performance in an NFVI. |
52 | | StorPerf is delivered as a Docker container from |
53 | | https://hub.docker.com/r/opnfv/storperf/tags/. |
55 +--------------+--------------------------------------------------------------+
56 |references | Storperf_ |
60 +--------------+--------------------------------------------------------------+
61 |applicability | Test can be configured with different: |
67 | | * query_interval |
69 | | * target=[device or path] |
70 | | The path to either an attached storage device |
71 | | (/dev/vdb, etc) or a directory path (/opt/storperf) that |
72 | | will be used to execute the performance test. In the case |
73 | | of a device, the entire device will be used. If not |
74 | | specified, the current directory will be used. |
75 | | * workload=[workload module] |
76 | | If not specified, the default is to run all workloads. The |
77 | | workload types are: |
78 | | - rs: 100% Read, sequential data |
79 | | - ws: 100% Write, sequential data |
80 | | - rr: 100% Read, random access |
81 | | - wr: 100% Write, random access |
82 | | - rw: 70% Read / 30% write, random access |
83 | | * nossd: Do not perform SSD style preconditioning. |
84 | | * nowarm: Do not perform a warmup prior to |
86 | | * report= [job_id] |
87 | | Query the status of the supplied job_id and report on |
88 | | metrics. If a workload is supplied, will report on only |
91 | | There are default values for each above-mentioned option. |
93 +--------------+--------------------------------------------------------------+
94 |pre-test | If you do not have an Ubuntu 14.04 image in Glance, you will |
95 |conditions | need to add one. A key pair for launching agents is also |
98 | | Storperf is required to be installed in the environment. |
99 | | There are two possible methods for Storperf installation: |
100 | | Run container on Jump Host |
101 | | Run container in a VM |
103 | | Running StorPerf on Jump Host |
105 | | - Docker must be installed |
106 | | - Jump Host must have access to the OpenStack Controller |
108 | | - Jump Host must have internet connectivity for |
109 | | downloading docker image |
110 | | - Enough floating IPs must be available to match your |
113 | | Running StorPerf in a VM |
115 | | - VM has docker installed |
116 | | - VM has OpenStack Controller credentials and can |
117 | | communicate with the Controller API |
118 | | - VM has internet connectivity for downloading the |
120 | | - Enough floating IPs must be available to match your |
123 | | No POD specific requirements have been identified. |
125 +--------------+--------------------------------------------------------------+
126 |test sequence | description and expected result |
128 +--------------+--------------------------------------------------------------+
129 |step 1 | The Storperf is installed and Ubuntu 14.04 image is stored |
130 | | in glance. TC is invoked and logs are produced and stored. |
132 | | Result: Logs are stored. |
134 +--------------+--------------------------------------------------------------+
135 |test verdict | None. Storage performance results are fetched and stored. |
137 +--------------+--------------------------------------------------------------+