diff options
-rw-r--r-- | yardstick/benchmark/scenarios/networking/vtc_instantiation_validation_noisy.py | 4 | ||||
-rw-r--r-- | yardstick/benchmark/scenarios/networking/vtc_throughput_noisy.py | 4 | ||||
-rw-r--r-- | yardstick/vTC/apexlake/experimental_framework/benchmarks/benchmark_base_class.py | 3 | ||||
-rw-r--r-- | yardstick/vTC/apexlake/experimental_framework/benchmarks/instantiation_validation_noisy_neighbors_benchmark.py | 8 | ||||
-rw-r--r-- | yardstick/vTC/apexlake/experimental_framework/benchmarks/multi_tenancy_throughput_benchmark.py | 10 |
@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.\ |