diff options
author | Mofassir Arif <mofassir@gmail.com> | 2015-10-22 12:39:37 -0700 |
---|---|---|
committer | Mofassir Arif <mofassir@gmail.com> | 2015-11-05 06:17:02 -0800 |
commit | 95bf8a8c96b2be94512e042f3f3c82edcbebf84d (patch) | |
tree | 7c7d1acd4dd596e84699a18d04e6ba2790e6fec2 /heat | |
parent | ed6de63572d92bb5af8be22ced0a749400f4d3d4 (diff) |
Python Framework for QTIP
Dhrystone Whetstone and DPI benchmarks have been implemented
CLI arguments have been implemented
test case are sorted based on category such as compute,network and storage
glance and heat client have been used to generate the stack.
automatic upload of QTIP image and delete function for existing stack before
creating new stack has been implemented
system information collecton and result generation has been implemented
JIRA: QTIP-17
Signed-off-by: Mofassir Arif <mofassir_arif@dell.com>
Change-Id: I4b7b134017723c30c771cc14d2edce33fcb8ba00
Diffstat (limited to 'heat')
-rw-r--r-- | heat/HeatTemplate.yaml | 120 | ||||
-rw-r--r-- | heat/SampleHeat.yaml | 42 | ||||
-rw-r--r-- | heat/TEST.yaml | 133 | ||||
-rw-r--r-- | heat/WorkingTemplate.yaml | 70 | ||||
-rw-r--r-- | heat/heat.yaml | 91 |
5 files changed, 456 insertions, 0 deletions
diff --git a/heat/HeatTemplate.yaml b/heat/HeatTemplate.yaml new file mode 100644 index 00000000..4b0aa7aa --- /dev/null +++ b/heat/HeatTemplate.yaml @@ -0,0 +1,120 @@ +heat_template_version: 2014-10-16 +outputs: + description: this + instance_ip_1: + description: IP address of the instance + value: + get_attr: + - floating_ip_1 + - floating_ip_address + instance_ip_2: + description: IP address of the instance + value: + get_attr: + - floating_ip_2 + - floating_ip_address +parameters: + availability_zone: + default: compute1 + description: The AvailZone. + type: string + private_net_name: + default: private_network + type: string + public_network: + default: provider_network + description: Public + label: Publi_N_ID + type: string +resources: + demo1_security_Group: + properties: + name: demo1_security_Group + rules: + - port_range_max: 22 + port_range_min: 22 + protocol: tcp + - protocol: icmp + type: OS::Neutron::SecurityGroup + floating_ip_1: + properties: + floating_network: + get_param: public_network + type: OS::Neutron::FloatingIP + floating_ip_2: + properties: + floating_network: + get_param: public_network + type: OS::Neutron::FloatingIP + floating_ip_assoc_1: + properties: + floatingip_id: + get_resource: floating_ip_1 + port_id: + get_resource: public_port_1 + type: OS::Neutron::FloatingIPAssociation + floating_ip_assoc_2: + properties: + floatingip_id: + get_resource: floating_ip_2 + port_id: + get_resource: public_port_2 + type: OS::Neutron::FloatingIPAssociation + my_instance_1: + properties: + availability_zone: nova + flavor: m1.small + image: Cirros + networks: + - port: + get_resource: public_port_1 + type: OS::Nova::Server + my_instance_2: + properties: + availability_zone: nova + flavor: m1.small + image: Cirros + networks: + - port: + get_resource: public_port_2 + type: OS::Nova::Server + private_network: + type: OS::Neutron::Net + private_subnet: + properties: + cidr: 10.10.17.0/24 + dns_nameservers: [ "8.8.8.8" ] + network_id: { get_resource: private_network } + type: OS::Neutron::Subnet + public_port_1: + properties: + fixed_ips: + - subnet_id: + get_resource: private_subnet + network: + get_resource: private_network + security_groups: + - get_resource: demo1_security_Group + type: OS::Neutron::Port + public_port_2: + properties: + fixed_ips: + - subnet_id: + get_resource: private_subnet + network: + get_resource: private_network + security_groups: + - get_resource: demo1_security_Group + type: OS::Neutron::Port + router_1: + properties: + external_gateway_info: + network: { get_param: public_network } + type: OS::Neutron::Router + router_interface: + properties: + router_id: { get_resource: router_1 } + subnet: { get_resource: private_subnet } + type: OS::Neutron::RouterInterface +outputs: + description: 'none' diff --git a/heat/SampleHeat.yaml b/heat/SampleHeat.yaml new file mode 100644 index 00000000..28c37b97 --- /dev/null +++ b/heat/SampleHeat.yaml @@ -0,0 +1,42 @@ +heat_template_version: 2014-10-16 +parameters: + + public_network: + type: string + label: Publi_N_ID + description: Public + default: 'provider_network' + + private_net_name: + type: string + default: 'private_network' + + availability_zone: + type: string + description: The AvailZone. + default: compute1 + +resources: + + private_network: + type: OS::Neutron::Net + private_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: private_network } + cidr: '10.10.17.0/24' + dns_nameservers: [ '8.8.8.8' ] + gateway_ip: '10.10.17.1' + allocation_pools: [ {"start":'10.10.17.2', "end": '10.10.17.200'} ] + router_1: + type: OS::Neutron::Router + properties: + external_gateway_info: + network: { get_param: public_network } + router_interface: + type: OS::Neutron::RouterInterface + properties: + router_id: { get_resource: router_1 } + subnet: { get_resource: private_subnet } +outputs: + description: 'none' diff --git a/heat/TEST.yaml b/heat/TEST.yaml new file mode 100644 index 00000000..17ba9cc8 --- /dev/null +++ b/heat/TEST.yaml @@ -0,0 +1,133 @@ +heat_template_version: 2013-05-23 + +description: > + HOT template to create a new neutron network plus a router to the public + network, and for deploying two servers into the new network. The template also + assigns floating IP addresses to each server so they are routable from the + public network. +parameters: + key_name: + type: string + description: Name of keypair to assign to servers + default: 'key' + image: + type: string + description: Name of image to use for servers + default: 'QTIP_CentOS' + flavor: + type: string + description: Flavor to use for servers + default: 'm1.large' + public_net: + type: string + description: > + ID or name of public network for which floating IP addresses will be allocated + default: 'provider_network' + private_net_name: + type: string + description: Name of private network to be created + default: 'private_network' + private_net_cidr: + type: string + description: Private network address (CIDR notation) + default: '10.10.17.0/24' + private_net_gateway: + type: string + description: Private network gateway address + default: '10.10.17.1' + private_net_pool_start: + type: string + description: Start of private network IP address allocation pool + default: '10.10.17.2' + private_net_pool_end: + type: string + description: End of private network IP address allocation pool + default: '10.10.17.200' + +resources: + private_net: + type: OS::Neutron::Net + properties: + name: { get_param: private_net_name } + + private_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: private_net } + cidr: { get_param: private_net_cidr } + gateway_ip: { get_param: private_net_gateway } + allocation_pools: + - start: { get_param: private_net_pool_start } + end: { get_param: private_net_pool_end } + + router: + type: OS::Neutron::Router + properties: + external_gateway_info: + network: { get_param: public_net } + + router_interface: + type: OS::Neutron::RouterInterface + properties: + router_id: { get_resource: router } + subnet_id: { get_resource: private_subnet } + + server1: + type: OS::Nova::Server + properties: + name: Server1 + image: { get_param: image } + flavor: { get_param: flavor } + + networks: + - port: { get_resource: server1_port } + + server1_port: + type: OS::Neutron::Port + properties: + network_id: { get_resource: private_net } + fixed_ips: + - subnet_id: { get_resource: private_subnet } + + server1_floating_ip: + type: OS::Neutron::FloatingIP + properties: + floating_network: { get_param: public_net } + port_id: { get_resource: server1_port } + + server2: + type: OS::Nova::Server + properties: + name: Server2 + image: { get_param: image } + flavor: { get_param: flavor } + + networks: + - port: { get_resource: server2_port } + + server2_port: + type: OS::Neutron::Port + properties: + network_id: { get_resource: private_net } + fixed_ips: + - subnet_id: { get_resource: private_subnet } + + server2_floating_ip: + type: OS::Neutron::FloatingIP + properties: + floating_network: { get_param: public_net } + port_id: { get_resource: server2_port } + +outputs: + server1_private_ip: + description: IP address of server1 in private network + value: { get_attr: [ server1, first_address ] } + server1_public_ip: + description: Floating IP address of server1 in public network + value: { get_attr: [ server1_floating_ip, floating_ip_address ] } + server2_private_ip: + description: IP address of server2 in private network + value: { get_attr: [ server2, first_address ] } + server2_public_ip: + description: Floating IP address of server2 in public network + value: { get_attr: [ server2_floating_ip, floating_ip_address ] } diff --git a/heat/WorkingTemplate.yaml b/heat/WorkingTemplate.yaml new file mode 100644 index 00000000..299962d4 --- /dev/null +++ b/heat/WorkingTemplate.yaml @@ -0,0 +1,70 @@ +heat_template_version: 2014-10-16 +outputs: + + instance_ip_1: + description: IP address of the instance + value: {get_attr: [floating_ip_1, floating_ip_address]} +parameters: + availability_zone: + default: compute1 + description: The AvailZone. + type: string + private_net_name: + default: private_network + type: string + public_network: + default: provider_network + description: Public + label: Publi_N_ID + type: string +resources: + demo1_security_Group: + properties: + name: demo1_security_Group + rules: + - port_range_max: 22 + port_range_min: 22 + protocol: tcp + - protocol: icmp + type: OS::Neutron::SecurityGroup + floating_ip_1: + properties: + floating_network: {get_param: public_network} + type: OS::Neutron::FloatingIP + floating_ip_assoc_1: + properties: + floatingip_id: {get_resource: floating_ip_1} + port_id: {get_resource: public_port_1} + type: OS::Neutron::FloatingIPAssociation + my_instance_1: + properties: + availability_zone: nova + flavor: m1.small + image: Cirros + networks: + - port: {get_resource: public_port_1} + type: OS::Nova::Server + private_network: + type: OS::Neutron::Net + private_subnet: + properties: + cidr: 10.10.17.0/24 + dns_nameservers: + - 8.8.8.8 + network_id: { get_resource: private_network } + type: OS::Neutron::Subnet + public_port_1: + properties: + network: {get_resource: private_network} + security_groups: [{get_resource: demo1_security_Group}] + type: OS::Neutron::Port + router_1: + properties: + external_gateway_info: + network: { get_param: public_network } + type: OS::Neutron::Router + router_interface: + properties: + router_id: { get_resource: router_1 } + subnet: { get_resource: private_subnet } + type: OS::Neutron::RouterInterface diff --git a/heat/heat.yaml b/heat/heat.yaml new file mode 100644 index 00000000..2ed45429 --- /dev/null +++ b/heat/heat.yaml @@ -0,0 +1,91 @@ + heat_template_version: 2014-10-16 + + description: Test10 + + parameters: + + public_network: + type: string + label: Public Network name or ID + description: Public network with floating IPs + default: "provider_network" + + private_net_name: + type: string + default: "private_network" + + flavor: + type: string + label: Flavor + default: m1.large + + image: + type: string + label: Image name + default: CentOS + + availability_zone: + type: string + description: The Availability Zone to launch the instance. + default: compute1 + + resources: + + private_network: + type: OS::Neutron::Net + + + private_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: private_network } + cidr: 10.10.17.0/24 + dns_nameservers: + - 8.8.8.8 + + router_1: + type: OS::Neutron::Router + properties: + external_gateway_info: + network: { get_param: public_network } + + router_interface: + type: OS::Neutron::RouterInterface + properties: + router_id: { get_resource: router_1 } + subnet: { get_resource: private_subnet } + + public_port: + type: OS::Neutron::Port + properties: + network: { get_resource: private_network } + security_groups: [{ get_resource: demo1_security_Group }] + + floating_ip: + type: OS::Neutron::FloatingIP + properties: + floating_network: { get_param: public_network } + + floating_ip_assoc: + type: OS::Neutron::FloatingIPAssociation + properties: + floatingip_id: { get_resource: floating_ip } + port_id: { get_resource: public_port } + + demo1_security_Group: + type: OS::Neutron::SecurityGroup + properties: + name: demo1_security_Group + rules: + - protocol: tcp + port_range_min: 22 + port_range_max: 22 + - protocol: icmp + outputs: + instance_ip: + description: IP address of the instance + value: { get_attr: [floating_ip, floating_ip_address] } + + + + |