aboutsummaryrefslogtreecommitdiffstats
path: root/samples/pktgen.yaml
blob: 13464a84d285bb3aff38913f9d8f9313e5e62ad7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
##############################################################################
# Copyright (c) 2017 Ericsson AB and others.
#
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Apache License, Version 2.0
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
---
# Sample benchmark task config file
# measure network throughput using pktgen
# with 2 stepping parameters. One stepping
# in positive and the other in negative direction

schema: "yardstick:task:0.1"

scenarios:
-
  type: Pktgen
  options:
    duration: 20

  host: demeter.demo
  target: poseidon.demo

  runner:
    type: Arithmetic
    interval: 2
    iter_type: nested_for_loops
    # run with packetsize/number_of_ports: 60,20; 60,10; ... 70,10
    iterators:
      -
       name: packetsize
       start: 60
       stop: 70
       step: 5
      -
       name: number_of_ports
       start: 20
       stop: 10
       step: -10

  sla:
    max_ppm: 1000
    action: monitor

context:
  name: demo
  image: yardstick-image
  flavor: yardstick-flavor
  user: ubuntu

  placement_groups:
    pgrp1:
      policy: "availability"

  servers:
    demeter:
      floating_ip: true
      placement: "pgrp1"
    poseidon:
      floating_ip: true
      placement: "pgrp1"

  networks:
    test:
      cidr: '10.0.1.0/24'
}).$promise.then(function(response) { if (response.status == 1) { if (response.result.task.status == -1) { response.result.task['stausWidth'] = '5%'; } else if (response.result.task.status == 0) { response.result.task['stausWidth'] = '50%'; } else if (response.result.task.status == 1) { response.result.task['stausWidth'] = '100%'; } else if (response.result.task.status == 2) { response.result.task['stausWidth'] = 'red'; } $scope.taskDetailData = response.result.task; if ($scope.taskDetailData.environment_id != null) { getItemIdDetail($scope.taskDetailData.environment_id); } } }, function(error) { toaster.pop({ type: 'error', title: 'fail', body: 'unknow error', timeout: 3000 }); }) } function getItemIdDetail(id) { mainFactory.ItemDetail().get({ 'envId': id }).$promise.then(function(response) { if (response.status == 1) { $scope.displayEnv = response.result.environment; if (response.result.environment.pod_id != null) { getPodDetail(response.result.environment.pod_id); } else if (response.result.environment.image_id != null) { getImageDetail(response.result.environment.image_id); } else if (response.result.environment.openrc_id != null) { getOpenrcDetail(response.result.environment.openrc_id != null); } else if (response.result.environment.container_id.length != 0) { $scope.displayContainerDetail = []; var containerArray = response.result.environment.container_id; for (var i = 0; i < containerArray.length; i++) { getContainerId(containerArray[i]); } } } else { toaster.pop({ type: 'error', title: 'fail', body: response.error_msg, timeout: 3000 }); } }, function(error) { toaster.pop({ type: 'error', title: 'fail', body: 'unknow error', timeout: 3000 }); }) } //getopenRcid function getOpenrcDetail(openrcId) { mainFactory.getEnvironmentDetail().get({ 'openrc_id': openrcId }).$promise.then(function(response) { //openrc数据 $scope.openrcInfo = response.result; // buildToEnvInfo($scope.openrcInfo.openrc) }, function(response) { }) } //getImgDetail function getImageDetail(id) { mainFactory.ImageDetail().get({ 'image_id': id }).$promise.then(function(response) { if (response.status == 1) { $scope.imageDetail = response.result.image; } }, function(error) { toaster.pop({ type: 'error', title: 'fail', body: 'unknow error', timeout: 3000 }); }) } //getPodDetail function getPodDetail(id) { mainFactory.podDeatil().get({ 'podId': id }).$promise.then(function(response) { if (response.status == 1) { $scope.podDetail = response.result.pod; } }, function(error) { toaster.pop({ type: 'error', title: 'fail', body: 'unknow error', timeout: 3000 }); }) } //getContainerDetail function getContainerId(containerId) { mainFactory.containerDetail().get({ 'containerId': containerId }).$promise.then(function(response) { if (response.status == 1) { $scope.container = response.result.container; $scope.displayContainerDetail.push($scope.container); } else { toaster.pop({ type: 'error', title: 'fail', body: response.error_msg, timeout: 3000 }); } }, function(error) { toaster.pop({ type: 'error', title: 'fail', body: 'unknow error', timeout: 3000 }); }) } $scope.goBack = function goBack() { window.history.back(); } } ]);