summaryrefslogtreecommitdiffstats
path: root/heat
diff options
context:
space:
mode:
authorMofassir Arif <mofassir@gmail.com>2015-10-22 12:39:37 -0700
committerMofassir Arif <mofassir@gmail.com>2015-11-05 06:17:02 -0800
commit95bf8a8c96b2be94512e042f3f3c82edcbebf84d (patch)
tree7c7d1acd4dd596e84699a18d04e6ba2790e6fec2 /heat
parented6de63572d92bb5af8be22ced0a749400f4d3d4 (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.yaml120
-rw-r--r--heat/SampleHeat.yaml42
-rw-r--r--heat/TEST.yaml133
-rw-r--r--heat/WorkingTemplate.yaml70
-rw-r--r--heat/heat.yaml91
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] }
+
+
+
+