summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--yardstick/benchmark/scenarios/networking/vtc_instantiation_validation_noisy.py4
-rw-r--r--yardstick/benchmark/scenarios/networking/vtc_throughput_noisy.py4
-rw-r--r--yardstick/vTC/apexlake/experimental_framework/benchmarks/benchmark_base_class.py3
-rw-r--r--yardstick/vTC/apexlake/experimental_framework/benchmarks/instantiation_validation_noisy_neighbors_benchmark.py8
-rw-r--r--yardstick/vTC/apexlake/experimental_framework/benchmarks/multi_tenancy_throughput_benchmark.py10 @media only all and (prefers-color-scheme: dark) { .highlight .hll { background-color: #49483e } .highlight .c { color: #75715e } /* Comment */ .highlight .err { color: #960050; background-color: #1e0010 } /* Error */ .highlight .k { color: #66d9ef } /* Keyword */ .highlight .l { color: #ae81ff } /* Literal */ .highlight .n { color: #f8f8f2 } /* Name */ .highlight .o { color: #f92672 } /* Operator */ .highlight .p { color: #f8f8f2 } /* Punctuation */ .highlight .ch { color: #75715e } /* Comment.Hashbang */ .highlight .cm { color: #75715e } /* Comment.Multiline */ .highlight .cp { color: #75715e } /* Comment.Preproc */ .highlight .cpf { color: #75715e } /* Comment.PreprocFile */ .highlight .c1 { color: #75715e } /* Comment.Single */ .highlight .cs { color: #75715e } /* Comment.Special */ .highlight .gd { color: #f92672 } /* Generic.Deleted */ .highlight .ge { font-style: italic } /* Generic.Emph */ .highlight .gi { color: #a6e22e } /* Generic.Inserted */ .highlight .gs { font-weight: bold } /* Generic.Strong */ .highlight .gu { color: #75715e } /* Generic.Subheading */ .highlight .kc { color: #66d9ef } /* Keyword.Constant */ .highlight .kd { color: #66d9ef } /* Keyword.Declaration */ .highlight .kn { color: #f92672 } /* Keyword.Namespace */ .highlight .kp { color: #66d9ef } /* Keyword.Pseudo */ .highlight .kr { color: #66d9ef } /* Keyword.Reserved */ .highlight .kt { color: #66d9ef } /* Keyword.Type */ .highlight .ld { color: #e6db74 } /* Literal.Date */ .highlight .m { color: #ae81ff } /* Literal.Number */ .highlight .s { color: #e6db74 } /* Literal.String */ .highlight .na { color: #a6e22e } /* Name.Attribute */ .highlight .nb { color: #f8f8f2 } /* Name.Builtin */ .highlight .nc { color: #a6e22e } /* Name.Class */ .highlight .no { color: #66d9ef } /* Name.Constant */ .highlight .nd { color: #a6e22e } /* Name.Decorator */ .highlight .ni { color: #f8f8f2 } /* Name.Entity */ .highlight .ne { color: #a6e22e } /* Name.Exception */ .highlight .nf { color: #a6e22e } /* Name.Function */ .highlight .nl { color: #f8f8f2 } /* Name.Label */ .highlight .nn { color: #f8f8f2 } /* Name.Namespace */ .highlight .nx { color: #a6e22e } /* Name.Other */ .highlight .py { color: #f8f8f2 } /* Name.Property */ .highlight .nt { color: #f92672 } /* Name.Tag */ .highlight .nv { color: #f8f8f2 } /* Name.Variable */ .highlight .ow { color: #f92672 } /* Operator.Word */ .highlight .w { color: #f8f8f2 } /* Text.Whitespace */ .highlight .mb { color: #ae81ff } /* Literal.Number.Bin */ .highlight .mf { color: #ae81ff } /* Literal.Number.Float */ .highlight .mh { color: #ae81ff } /* Literal.Number.Hex */ .highlight .mi { color: #ae81ff } /* Literal.Number.Integer */ .highlight .mo { color: #ae81ff } /* Literal.Number.Oct */ .highlight .sa { color: #e6db74 } /* Literal.String.Affix */ .highlight .sb { color: #e6db74 } /* Literal.String.Backtick */ .highlight .sc { color: #e6db74 } /* Literal.String.Char */ .highlight .dl { color: #e6db74 } /* Literal.String.Delimiter */ .highlight .sd { color: #e6db74 } /* Literal.String.Doc */ .highlight .s2 { color: #e6db74 } /* Literal.String.Double */ .highlight .se { color: #ae81ff } /* Literal.String.Escape */ .highlight .sh { color: #e6db74 } /* Literal.String.Heredoc */ .highlight .si { color: #e6db74 } /* Literal.String.Interpol */ .highlight .sx { color: #e6db74 } /* Literal.String.Other */ .highlight .sr { color: #e6db74 } /* Literal.String.Regex */ .highlight .s1 { color: #e6db74 } /* Literal.String.Single */ .highlight .ss { color: #e6db74 } /* Literal.String.Symbol */ .highlight .bp { color: #f8f8f2 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #a6e22e } /* Name.Function.Magic */ .highlight .vc { color: #f8f8f2 } /* Name.Variable.Class */ .highlight .vg { color: #f8f8f2 } /* Name.Variable.Global */ .highlight .vi { color: #f8f8f2 } /* Name.Variable.Instance */ .highlight .vm { color: #f8f8f2 } /* Name.Variable.Magic */ .highlight .il { color: #ae81ff } /* Literal.Number.Integer.Long */ } @media (prefers-color-scheme: light) { .highlight .hll { background-color: #ffffcc } .highlight .c { color: #888888 } /* Comment */ .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ .highlight .k { color: #008800; font-weight: bold } /* Keyword */ .highlight .ch { color: #888888 } /* Comment.Hashbang */ .highlight .cm { color: #888888 } /* Comment.Multiline */ .highlight .cp { color: #cc0000; font-weight: bold } /* Comment.Preproc */ .highlight .cpf { color: #888888 } /* Comment.PreprocFile */ .highlight .c1 { color: #888888 } /* Comment.Single */ .highlight .cs { color: #cc0000; font-weight: bold; background-color: #fff0f0 } /* Comment.Special */ .highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ .highlight .ge { font-style: italic } /* Generic.Emph */ .highlight .gr { color: #aa0000 } /* Generic.Error */ .highlight .gh { color: #333333 } /* Generic.Heading */ .highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ .highlight .go { color: #888888 } /* Generic.Output */ .highlight .gp { color: #555555 } /* Generic.Prompt */ .highlight .gs { font-weight: bold } /* Generic.Strong */ .highlight .gu { color: #666666 } /* Generic.Subheading */ .highlight .gt { color: #aa0000 } /* Generic.Traceback */ .highlight .kc { color: #008800; font-weight: bold } /* Keyword.Constant */ .highlight .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */ .highlight .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */ .highlight .kp { color: #008800 } /* Keyword.Pseudo */ .highlight .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */ .highlight .kt { color: #888888; font-weight: bold } /* Keyword.Type */ .highlight .m { color: #0000DD; font-weight: bold } /* Literal.Number */ .highlight .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */ .highlight .na { color: #336699 } /* Name.Attribute */ .highlight .nb { color: #003388 } /* Name.Builtin */ .highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */ .highlight .no { color: #003366; font-weight: bold } /* Name.Constant */ .highlight .nd { color: #555555 } /* Name.Decorator */ .highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */ .highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */ .highlight .nl { color: #336699; font-style: italic } /* Name.Label */ .highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ .highlight .py { color: #336699; font-weight: bold } /* Name.Property */ .highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */ features['parameters'].append(NUM_OF_NEIGHBORS)
features['parameters'].append(AMOUNT_OF_RAM)
features['parameters'].append(NUMBER_OF_CORES)
+ features['parameters'].append(NETWORK_NAME)
+ features['parameters'].append(SUBNET_NAME)
features['allowed_values'][NUM_OF_NEIGHBORS] = \
['1', '2', '3', '4', '5', '6', '7', '8', '9', '10']
features['allowed_values'][NUMBER_OF_CORES] = \
@@ -50,6 +54,8 @@ class InstantiationValidationNoisyNeighborsBenchmark(
features['default_values'][NUM_OF_NEIGHBORS] = '1'
features['default_values'][NUMBER_OF_CORES] = '1'
features['default_values'][AMOUNT_OF_RAM] = '256M'
+ features['default_values'][NETWORK_NAME] = ''
+ features['default_values'][SUBNET_NAME] = ''
return features
def init(self):
@@ -58,6 +64,8 @@ class InstantiationValidationNoisyNeighborsBenchmark(
'local out_file = "' +
self.results_file + '"')
heat_param = dict()
+ heat_param['network'] = self.params[NETWORK_NAME]
+ heat_param['subnet'] = self.params[SUBNET_NAME]
heat_param['cores'] = self.params['number_of_cores']
heat_param['memory'] = self.params['amount_of_ram']
for i in range(0, int(self.params['num_of_neighbours'])):
diff --git a/yardstick/vTC/apexlake/experimental_framework/benchmarks/multi_tenancy_throughput_benchmark.py b/yardstick/vTC/apexlake/experimental_framework/benchmarks/multi_tenancy_throughput_benchmark.py
index 3182837c5..ee02bcc93 100644
--- a/yardstick/vTC/apexlake/experimental_framework/benchmarks/multi_tenancy_throughput_benchmark.py
+++ b/yardstick/vTC/apexlake/experimental_framework/benchmarks/multi_tenancy_throughput_benchmark.py
@@ -18,6 +18,10 @@ from experimental_framework.benchmarks import rfc2544_throughput_benchmark \
from experimental_framework import common
+NETWORK_NAME = 'network'
+SUBNET_NAME = 'subnet'
+
+
class MultiTenancyThroughputBenchmark(base.RFC2544ThroughputBenchmark):
def __init__(self, name, params):
@@ -35,6 +39,8 @@ class MultiTenancyThroughputBenchmark(base.RFC2544ThroughputBenchmark):
features['parameters'].append('num_of_neighbours')
features['parameters'].append('amount_of_ram')
features['parameters'].append('number_of_cores')
+ features['parameters'].append(NETWORK_NAME)
+ features['parameters'].append(SUBNET_NAME)
features['allowed_values']['num_of_neighbours'] = \
['1', '2', '3', '4', '5', '6', '7', '8', '9', '10']
features['allowed_values']['number_of_cores'] = \
@@ -42,6 +48,8 @@ class MultiTenancyThroughputBenchmark(base.RFC2544ThroughputBenchmark):
features['allowed_values']['amount_of_ram'] = \
['256M', '1G', '2G', '3G', '4G', '5G', '6G', '7G', '8G', '9G',
'10G']
+ features['default_values'][NETWORK_NAME] = ''
+ features['default_values'][SUBNET_NAME] = ''
features['default_values']['num_of_neighbours'] = '1'
features['default_values']['number_of_cores'] = '1'
features['default_values']['amount_of_ram'] = '256M'
@@ -58,6 +66,8 @@ class MultiTenancyThroughputBenchmark(base.RFC2544ThroughputBenchmark):
heat_param = dict()
heat_param['cores'] = self.params['number_of_cores']
heat_param['memory'] = self.params['amount_of_ram']
+ heat_param['network'] = self.params[NETWORK_NAME]
+ heat_param['subnet'] = self.params[SUBNET_NAME]
for i in range(0, int(self.params['num_of_neighbours'])):
stack_name = self.stack_name + str(i)
common.DEPLOYMENT_UNIT.deploy_heat_template(self.template_file,
diff --git a/yardstick/vTC/apexlake/experimental_framework/deployment_unit.py b/yardstick/vTC/apexlake/experimental_framework/deployment_unit.py
index 186258f7d..596ee7a96 100644
--- a/yardstick/vTC/apexlake/experimental_framework/deployment_unit.py
+++ b/yardstick/vTC/apexlake/experimental_framework/deployment_unit.py
@@ -76,7 +76,6 @@ class DeploymentUnit:
if not os.path.isfile(template_file):
raise ValueError('The specified file does not exist ("' +
template_file + '")')
- self.heat_manager.validate_heat_template(template_file)
try:
self.heat_manager.create_stack(template_file, stack_name,
parameters)
diff --git a/yardstick/vTC/apexlake/experimental_framework/heat_manager.py b/yardstick/vTC/apexlake/experimental_framework/heat_manager.py
index 28c069f6c..ab3df5c38 100644
--- a/yardstick/vTC/apexlake/experimental_framework/heat_manager.py
+++ b/yardstick/vTC/apexlake/experimental_framework/heat_manager.py
@@ -76,9 +76,10 @@ class HeatManager:
:param stack_name: Name of the stack to be checked (type: str)
:return: (type: str)
"""
- for stack in self.heat.stacks.list():
- if stack.stack_name == stack_name:
- return stack.stack_status
+ if self.heat:
+ for stack in self.heat.stacks.list():
+ if stack.stack_name == stack_name:
+ return stack.stack_status
return 'NOT_FOUND'
def validate_heat_template(self, heat_template_file):
diff --git a/yardstick/vTC/apexlake/heat_templates/stress_workload.yaml b/yardstick/vTC/apexlake/heat_templates/stress_workload.yaml
index 85477fe85..9820705a4 100644
--- a/yardstick/vTC/apexlake/heat_templates/stress_workload.yaml
+++ b/yardstick/vTC/apexlake/heat_templates/stress_workload.yaml
@@ -9,24 +9,18 @@ parameters:
type: string
memory:
type: string
+ network:
+ type: string
+ subnet:
+ type: string
resources:
- internal_net:
- type: OS::Neutron::Net
- properties:
- name: traffic_network
- internal_subnet:
- type: OS::Neutron::Subnet
- properties:
- network_id: { get_resource: internal_net }
- cidr: 10.100.0.0/24
-
port:
type: OS::Neutron::Port
properties:
- network: { get_resource: internal_net }
+ network: { get_param: network }
fixed_ips:
- - subnet: { get_resource: internal_subnet }
+ - subnet: { get_param: subnet }
vm1:
type: OS::Nova::Server
@@ -49,28 +43,22 @@ resources:
dhclient eth1
sed -i 's/localhost/localhost traffic_vm1/g' /etc/hosts
- touch /etc/resolfconf/resolv.conf.d/tail
- echo 'nameserver 8.8.8.8' > /etc/resolvconf/resolv.conf.d/tail
+ touch /etc/resolvconf/resolv.conf.d/tail
+ echo 'nameserver 10.118.32.193' > /etc/resolvconf/resolv.conf.d/tail
resolvconf -u
+ echo 'nameserver 10.118.32.193' > /etc/resolv.conf
+
# Installation of stress
apt-get install -y stress
cd /home/clouduser
- # Setup merlin
- rm -rf merlin
- mkdir merlin
- cd merlin
- wget http://10.2.1.65/~iolie/merlin/MerlinAgent-12-06-2015-TNovaVM-001.zip
- apt-get install -y zip
- unzip MerlinAgent-12-06-2015-TNovaVM-001.zip
- ./updateConfiguration.py ./instrumentation.cfg tags source=tnova_vm
- ./updateConfiguration.py ./instrumentation.cfg tags role=cpu_stress
- nohup ./Agent.py ./instrumentation.cfg >log.out 2>&1 &
- cd ..
# workload setup
- nohup stress -c #CORES --vm-bytes #MEMORY
+ echo 'stress -c $CORES --vm-bytes $MEMORY' > ./stress.sh
+ chmod +x ./stress.sh
+ nohup ./stress.sh &
+ #nohup stress -c #CORES --vm-bytes #MEMORY
params:
$NAME: { get_param: name }
diff --git a/yardstick/vTC/apexlake/tests/instantiation_validation_noisy_bench_test.py b/yardstick/vTC/apexlake/tests/instantiation_validation_noisy_bench_test.py
index 463035743..f65600f6e 100644
--- a/yardstick/vTC/apexlake/tests/instantiation_validation_noisy_bench_test.py
+++ b/yardstick/vTC/apexlake/tests/instantiation_validation_noisy_bench_test.py
@@ -67,6 +67,8 @@ class InstantiationValidationInitTest(unittest.TestCase):
expected['parameters'].append('throughput')
expected['parameters'].append('vlan_sender')
expected['parameters'].append('vlan_receiver')
+ expected['parameters'].append('network')
+ expected['parameters'].append('subnet')
expected['parameters'].append(mut.NUM_OF_NEIGHBORS)
expected['parameters'].append(mut.AMOUNT_OF_RAM)
expected['parameters'].append(mut.NUMBER_OF_CORES)
@@ -83,6 +85,8 @@ class InstantiationValidationInitTest(unittest.TestCase):
expected['default_values']['throughput'] = '1'
expected['default_values']['vlan_sender'] = '-1'
expected['default_values']['vlan_receiver'] = '-1'
+ expected['default_values']['network'] = ''
+ expected['default_values']['subnet'] = ''
expected['default_values'][mut.NUM_OF_NEIGHBORS] = '1'
expected['default_values'][mut.NUMBER_OF_CORES] = '1'
expected['default_values'][mut.AMOUNT_OF_RAM] = '256M'
@@ -106,6 +110,8 @@ class InstantiationValidationInitTest(unittest.TestCase):
self.iv.results_file = 'res_file'
self.iv.params = {'number_of_cores': 1,
'amount_of_ram': 1,
+ 'network': 1,
+ 'subnet': 1,
'num_of_neighbours': 1}
self.iv.template_file = 'template.yaml'
self.iv.init()
@@ -115,7 +121,10 @@ class InstantiationValidationInitTest(unittest.TestCase):
'res_file' + '"')
mock_deploy_heat.assert_called_once_with('template.yaml',
'neighbour0',
- {'cores': 1, 'memory': 1})
+ {'cores': 1,
+ 'memory': 1,
+ 'network': 1,
+ 'subnet': 1})
self.assertEqual(self.iv.neighbor_stack_names, ['neighbour0'])
@mock.patch('experimental_framework.common.replace_in_file')
diff --git a/yardstick/vTC/apexlake/tests/multi_tenancy_throughput_benchmark_test.py b/yardstick/vTC/apexlake/tests/multi_tenancy_throughput_benchmark_test.py
index 6544fea43..fc5a7fddb 100644
--- a/yardstick/vTC/apexlake/tests/multi_tenancy_throughput_benchmark_test.py
+++ b/yardstick/vTC/apexlake/tests/multi_tenancy_throughput_benchmark_test.py
@@ -77,6 +77,8 @@ class TestMultiTenancyThroughputBenchmark(unittest.TestCase):
heat_param = dict()
heat_param['cores'] = num_of_cores
heat_param['memory'] = amount_of_ram
+ heat_param['network'] = ''
+ heat_param['subnet'] = ''
neighbor_stack_names = list()
deployment_unit.\