Age | Commit message (Collapse) | Author | Files | Lines |
|
Added pktgen VNF topology, VNF descriptor and traffic profile files.
JIRA: YARDSTICK-1346
Change-Id: Ifb1824edb2dc8db1afa83a53573fb2ed1c2a79ea
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
This new profile is based on the DPDK pktgen traffic generator. The traffic
generator is controlled using LUA [1]. Those string commands are sent to
the traffic generator using an open socket. Host address and open port are
needed parameters.
The following actions are implemented:
- start injection
- stop injection
- change injection rate
- clear all stats
- help message command
[1] http://pktgen-dpdk.readthedocs.io/en/latest/lua.html
JIRA: YARDSTICK-1345
Change-Id: I560a168d194cedc9fdba312ec84437933efc8d9b
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
Add DPDK pktgen traffic generator. This traffic generator is designed
only to work in with a MQ aware runner. Implements two consumer methods:
- runner_method_start_iteration
- runner_method_stop_iteration
"run_traffic" method will only initialize the traffic profile object.
This traffic generator uses a socket port (LUA port, default 22022) to
send the command messages.
Link: http://pktgen-dpdk.readthedocs.io/en/latest/index.html
JIRA: YARDSTICK-1344
Change-Id: I89bba0f462fa1c22b33f1253f67f7c41e6e721a5
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
|
|
|
|
|
|
|
|
delete_custom_resource_definition()"
|
|
|
|
Currently the docker images fails to build on aarch64 because the installation
of the requirements step fails. The failure is caused by the timers which expire
and don't mark the job as finished.
JIRA: ARMBAND-391
Change-Id: Ic84982f81d064af1c27cf776d12a57eadc20957a
Signed-off-by: Cristina Pauna <cristina.pauna@enea.com>
|
|
JIRA: YARDSTICK-1317
Change-Id: I2dc924334199761d63dce9aebe9ce200ca0fddf8
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
|
|
Increase rounding digits in IXIA RFC2544 for:
- Drop percentage: 6 digits
- Rate: 5 digits, both for fps and % line rate.
JIRA: YARDSTICK-1338
Change-Id: Iae6e49dd3d15035452f28976af0b16222fa8e23c
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
Accept line rate percentage or fps a initial rate for IXIA RFC2544 traffic profile:
traffic_profile:
traffic_type : IXIARFC2544Profile
frame_rate : 100%
traffic_profile:
traffic_type : IXIARFC2544Profile
frame_rate : 5000fps
JIRA: YARDSTICK-1336
Change-Id: I85b3dd0daf563bb7af098a3aa5bb872961fb009b
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
|
|
JIRA: YARDSTICK-1330
Change-Id: I05303a1d0783421472883806f97441dd63f7f740
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
JIRA: YARDSTICK-1321
Change-Id: Id0f3a5d93f11674fd3908a7f5cf7214afcfa3600
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
|
|
Accept strings and list of strings as "args" and "commands"
in a Kubernetes container.
JIRA: YARDSTICK-1329
Change-Id: I56470741072fb7f9a62d695c51fcb0cc3f3ff1b9
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
this Dockerfile target to generate a image with testing tool
installed, similar to yardstick-image for VM. The docker image
is used by k8s to start pods and test.
JIRA: YARDSTICK-1287
Change-Id: Id09a3fb6d880869c8f523d688b2ef641fb434541
Signed-off-by: rexlee8776 <limingjiang@huawei.com>
|
|
|
|
|
|
The configuration parameter "imagePullPolicy" defines how Kubernetes
retrieves de image. By default, Kubernetes will always try to pull the
latest image from the repository [1]. Three possible arguments are accepted:
- Always
- IfNotPresent
- Never
Example of Kubernetes pod definition:
containers:
- name: vcmts-pktgen-pod-0
image: openretriever/yardstick
imagePullPolicy: IfNotPresent
Example of Yardstick definition:
context:
name: k8syardstick
type: Kubernetesservers:
vnf:
image: openretriever/yardstick
imagePullPolicy: IfNotPresent
[1] https://kubernetes.io/docs/concepts/containers/images/
JIRA: YARDSTICK-1328
Change-Id: I83bfb01670eef22218b1affd7d37af14e32a622e
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
In Kubernetes context, service NodePort can contain more than one port
defined. Actually, by default port SSH (22) is always created. If more
than one port is defined in the service template, 'name' parameter is
mandatory.
Names must be lowercase, containing alphanumeric characters or '-'.
Verification regex used by Kubernetes: [a-z0-9]([-a-z0-9]*[a-z0-9])?
JIRA: YARDSTICK-1324
Change-Id: I82791761d8eae24196c2f16aee9900af28d44c57
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
In Kubernetes context, NodePort information returned in context should be
a dictionary. In [1], the node information is dumped in a yaml file. The
NodePort object doesn't have a serialize implementation; instead of
returning the object, an equivalent dictionary should be returned.
[1]https://github.com/opnfv/yardstick/blob/f6fa0d7422f0669d049dbf07a51eb39b1dc25830/yardstick/benchmark/scenarios/networking/vnf_generic.py#L293
JIRA: YARDSTICK-1323
Change-Id: If4844c9b074920a7a7d8c1a424b681f9f8a4b0c5
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
|
|
This patch is supposed to be coordinated with
https://gerrit.opnfv.org/gerrit/59901
to support dpdk scenario for Bottlenecks
JIRA: YARDSTICK-1332
Change-Id: I4ae3d05523d0624d689702cb8eb23be364830de1
Signed-off-by: Yang (Gabriel) Yu <Gabriel.yuyang@huawei.com>
|
|
|
|
|
|
JIRA: YARDSTICK-1320
Change-Id: I5b762d4732440008630093e1d0952f7e41a8a191
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
|
|
JIRA: YARDSTICK-1325
Change-Id: Idc56237f3a8435c6636be2a6e7c6b04662d831ee
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
|
|
* Move some common mocking into the setUp()
The same return values was being set for moch_ssh
in each test method.
* Remove duplicate statements in test_vsperf_dpdk.py:VsperfDPDKTestCase
The same assert* were being called for multiple methods,
which were checking that setup worked as expected.
These checks are not required each time.
Change-Id: I325fc98ee569dcf7988951c82da0c02d5e465a16
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
|
|
Change-Id: I0b0fddf8dfdd68fa144b28dba911352e9a4974fd
JIRA: YARDSTICK-1253
Signed-off-by: Emma Foley <emma.l.foley@intel.com>
|
|
This new class is designed to be used in a ``GenericVNF`` object (VNF
or traffic generator) in a builder pattern. This consumer class will
be instantiated when initializing the ``GenericVNF`` derived object.
The ``GenericVNFConsumer`` endpoint is the ``GenericVNF``derived object
itself.
``GenericVNFEndpoint`` is an interface class to be inherited in a
``GenericVNF`` child object; the VNF object will implement the endpoints
methods.
NewVNF(GenericVNF, GenericVNFEndpoint):
def __init__(self, name, vnfd, task_id):
...
self._consumer = vnf_base.GenericVNFConsumer([task_id], self)
self._consumer.start_rpc_server()
JIRA: YARDSTICK-1293
Change-Id: I1bcd980352099e9ebefdab0c96d51aa46f6a1e54
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
Kubernetes context provides a list of NodePort services to each
replication controller. "_get_server" should return this information
in the server description dictionary:
server: { ...
'service_ports': <list of NodePort objects>
}
Relevant NodePort object attributes:
- port
- node_port
- target_port
- protocol
- name
JIRA: YARDSTICK-1313
Change-Id: Ie481cdea4761f162e3b3329e4e2c5a982faea9e9
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
Add to "Kubernetes" context the "interfaces" information when retrieving
a server. This information is needed for NSPerf test cases.
The interface information comes from the resource controller network list.
Each replication controller will have one port per network defined.
JIRA: YARDSTICK-1303
Change-Id: Ifb0e17df295c042a643128c705a93876af999bad
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
Some DPDK archive releases have different prefix in the
unzipped archived folder name. Fixed scripts to determine
the DPDK path using find.
JIRA: YARDSTICK-1307
Change-Id: Id50bc1256f458e94aa7d4050a0f8ea3462fe9083
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
|
|
|
|
|
|
|
|
When a kubernetes context is returning the node info it is
assumed that the first port defined is the ssh port which may
not be the case. This patch will address this issue by looking
for a defined port 22.
JIRA: YARDSTICK-1301
Change-Id: I65dee1bcf62f21ebcaefeaa2666bb0ad53f3876c
Signed-off-by: John O Loughlin <john.oloughlin@intel.com>
|
|
In [1], the DPDK version string is converted to a number to be compared.
If DPDK version format is "major.minor.revision", this conversion will fail.
[1] https://github.com/opnfv/yardstick/blob/master/ansible/roles/install_dpdk/tasks/main.yml#L119
JIRA: YARDSTICK-1306
Change-Id: Id8d32f28627ff5a0ff8d4fb604282ba2d9931c25
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
"GenericTrafficGen.get_mq_producer_id" uses a wrong method to retrieve
the MQ producer ID. "MessagingProducer" ID is a property called "id".
JIRA: YARDSTICK-1312
Change-Id: Id72836b1cde59059359907bd3a315a1abb55778e
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
|
|
|
|
Refactor SSH handling and library mocks.
JIRA: YARDSTICK-1236
Change-Id: I591601f8ea8bf4bbd5c43300ff29d7930af5c3c6
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|
|
Coverage report will also search for new code introduced in
/yardstick/tests/functional. Any modification in functional
test cases must be omitted from coverage report.
JIRA: YARDSTICK-1308
Change-Id: Ib9c48102340f70d8d79f78dc81cbfe7b29c81115
Signed-off-by: Rodolfo Alonso Hernandez <rodolfo.alonso.hernandez@intel.com>
|