diff options
author | Mark Beierl <mark.beierl@emc.com> | 2016-05-04 22:53:07 -0400 |
---|---|---|
committer | Mark Beierl <mark.beierl@emc.com> | 2016-05-05 14:58:39 -0400 |
commit | 05e863781ce6746fabec176d1fc5f7454f2cdd73 (patch) | |
tree | 0ff7f2aa9e55b33c3f95c0521bbd3991a9e4e2c0 /storperf/resources | |
parent | 1e0544d70dabed4f33e0624cb4a7cde4c8c6b691 (diff) |
Add Stats report and Swagger UI
Add Swagger web ui at /swagger
Add ability to fetch read/write latency status via ReST ui
Can now delete where stack was removed from OpenStack but not from the
storperf DB
Change to use Floating IPs instead of private IP
Fix delete bug where there was no dependency on resources in
the resource group.
JIRA: STORPERF-19
JIRA: STORPERF-20
Change-Id: I0a4b3386789c38d6745906ba896b8ff851dc122f
Signed-off-by: Mark Beierl <mark.beierl@emc.com>
Diffstat (limited to 'storperf/resources')
-rw-r--r-- | storperf/resources/hot/agent-group.yaml | 47 | ||||
-rw-r--r-- | storperf/resources/hot/storperf-agent.yaml | 28 |
2 files changed, 57 insertions, 18 deletions
diff --git a/storperf/resources/hot/agent-group.yaml b/storperf/resources/hot/agent-group.yaml index 315ecf3..4a1df8e 100644 --- a/storperf/resources/hot/agent-group.yaml +++ b/storperf/resources/hot/agent-group.yaml @@ -10,13 +10,13 @@ heat_template_version: 2013-05-23 parameters: - agent_network: + public_network: type: string constraints: - custom_constraint: neutron.network flavor: type: string - default: "StorPerf Agent" + default: "m1.small" key_name: type: string default: StorPerf @@ -38,18 +38,59 @@ parameters: resources: slaves: type: OS::Heat::ResourceGroup + depends_on: [storperf_subnet, storperf_network_router_interface, storperf_open_security_group] properties: count: {get_param: agent_count} resource_def: { type: "storperf-agent.yaml", properties: { - agent_network: {get_param: agent_network}, + public_network: {get_param: public_network}, + agent_network: {get_resource: storperf_network}, flavor: {get_param: flavor}, + storperf_open_security_group: {get_resource: storperf_open_security_group}, key_name: {get_param: key_name}, volume_size: {get_param: volume_size} } } + storperf_network: + type: OS::Neutron::Net + properties: + name: storperf-network + + storperf_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: storperf_network } + cidr: 172.16.0.0/16 + gateway_ip: 172.16.0.1 + + storperf_network_router: + type: OS::Neutron::Router + properties: + external_gateway_info: + network: { get_param: public_network } + + storperf_network_router_interface: + type: OS::Neutron::RouterInterface + properties: + router_id: { get_resource: storperf_network_router } + subnet_id: { get_resource: storperf_subnet } + + storperf_open_security_group: + type: OS::Neutron::SecurityGroup + properties: + description: An open security group to allow all access to the StorPerf slaves + rules: + - remote_ip_prefix: 0.0.0.0/0 + protocol: tcp + port_range_min: 22 + port_range_max: 22 + - remote_ip_prefix: 0.0.0.0/0 + protocol: icmp + + + outputs: slave_ips: { description: "Slave addresses", diff --git a/storperf/resources/hot/storperf-agent.yaml b/storperf/resources/hot/storperf-agent.yaml index ffda9c4..5d99a26 100644 --- a/storperf/resources/hot/storperf-agent.yaml +++ b/storperf/resources/hot/storperf-agent.yaml @@ -22,6 +22,8 @@ parameters: username: type: string default: storperf + storperf_open_security_group: + type: string volume_size: type: number description: Size of the volume to be created. @@ -33,7 +35,10 @@ parameters: type: string constraints: - custom_constraint: neutron.network - + public_network: + type: string + constraints: + - custom_constraint: neutron.network resources: storperf_agent: @@ -69,20 +74,13 @@ resources: properties: network_id: { get_param: agent_network } security_groups: - - { get_resource: storperf_security_group } + - { get_param: storperf_open_security_group } - storperf_security_group: - type: OS::Neutron::SecurityGroup + storperf_floating_ip: + type: OS::Neutron::FloatingIP properties: - description: Neutron security group rules - name: StorPerf-Security-Group - rules: - - remote_ip_prefix: 0.0.0.0/0 - protocol: tcp - direction: ingress - - remote_ip_prefix: 0.0.0.0/0 - protocol: icmp - direction: ingress + floating_network_id: { get_param: public_network } + port_id: { get_resource: storperf_agent_port } agent_volume: type: OS::Cinder::Volume @@ -97,5 +95,5 @@ resources: outputs: storperf_agent_ip: - description: The IP address of the agent on the StorPerf network - value: { get_attr: [ storperf_agent, first_address ] }
\ No newline at end of file + description: The floating IP address of the agent on the public network + value: { get_attr: [ storperf_floating_ip, floating_ip_address ] }
\ No newline at end of file |