Merge "Moved elastic apps to OS::Neutron::LoadBalancer"

This commit is contained in:
Jenkins 2013-12-04 09:27:28 +00:00 committed by Gerrit Code Review
commit b15e79f351
6 changed files with 64 additions and 42 deletions

View File

@ -3,7 +3,7 @@
"Parameters": {
"KeyName": {
"Description": "Key Pair name for Load Balancer",
"Description": "Key Pair",
"Type": "String",
"Default": "$keyName"
}

View File

@ -1,22 +1,39 @@
{
"Resources" : {
"$lbName" : {
"Type" : "AWS::ElasticLoadBalancing::LoadBalancer",
"Properties" : {
"AvailabilityZones" : { "Fn::GetAZs" : "" },
"Instances" : [{"Ref": "$instanceName"}],
"Listeners" : [ {
"LoadBalancerPort" : "$lbPort",
"InstancePort" : "80",
"Protocol" : "HTTP"
}]
"Resources": {
"${lbName}-HealthMonitor": {
"Type": "OS::Neutron::HealthMonitor",
"Properties": {
"type": "HTTP",
"delay": 3,
"max_retries": 3,
"timeout": 10,
"http_method": "GET",
"expected_codes": "200",
"url_path": "/"
}
},
"${lbName}-Pool": {
"Type": "OS::Neutron::Pool",
"Properties": {
"protocol": "HTTP",
"subnet_id": {"Ref": "subnet"},
"lb_method": "ROUND_ROBIN",
"name": "${lbName}-Pool",
"vip": {
"name": "${lbName}-Pool-VIP",
"address": "$lbIp",
"protocol_port": "$lbPort"
},
"monitors": [{"Ref": "${lbName}-HealthMonitor"}]
}
},
"${lbName}-LoadBalancer": {
"Type": "OS::Neutron::LoadBalancer",
"Properties": {
"pool_id": {"Ref": "${lbName}-Pool"},
"protocol_port": "$lbPort",
"members": [{"Ref": "$instanceName"}]
}
}
},
"Outputs": {
"LoadBalancerIP": {
"Value": { "Fn::GetAtt": [ "$lbName", "DNSName" ] },
"Description": ""
}
}
}
}

View File

@ -1,13 +1,7 @@
{
"AWSTemplateFormatVersion": "2010-09-09",
"Parameters": {
"KeyName": {
"Description": "Key Pair name for Load Balancer",
"Type": "String",
"Default": "murano-lb-key"
}
},
"Parameters": {},
"Resources": {
"$instanceName": {

View File

@ -10,13 +10,13 @@ forms:
hidden: true
attributeNames: false
description: >-
The ASP.NET application will be installed on a number of IIS Web
The ASP.NET application will be installed on a number of IIS Web
Servers, and load balancing will be configured.
- name: name
type: string
label: Service Name
description: >-
Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
underline are allowed.
minLength: 2
maxLength: 64
@ -44,7 +44,7 @@ forms:
label: Domain
required: false
description: >-
Service can be joined to the Active Directory domain. If you want to
Service can be joined to the Active Directory domain. If you want to
create an AD domain create the AD Service first.
helpText: Optional field for a domain to which service can be joined
- name: repository
@ -66,6 +66,11 @@ forms:
maxValue: 100
initial: 2
helpText: Enter an integer value between 2 and 100
- name: loadBalancerIp
type: clusterip
label: Load Balancer VIP
description: Specify IP number where Load Balancer will be running
helpText: Enter an free IP address from the subnet where instances will be created
- name: loadBalancerPort
type: integer
label: Load Balancer port
@ -79,8 +84,8 @@ forms:
label: Hostname template
description: >-
For your convenience all instance hostnames can be named
in the same way. Enter a name and use # character for incrementation.
For example, host# turns into host1, host2, etc. Please follow Windows
in the same way. Enter a name and use # character for incrementation.
For example, host# turns into host1, host2, etc. Please follow Windows
hostname restrictions.
required: false
regexpValidator: '^(([a-zA-Z0-9#][a-zA-Z0-9-#]*[a-zA-Z0-9#])\.)*([A-Za-z0-9#]|[A-Za-z0-9#][A-Za-z0-9-#]*[A-Za-z0-9#])$'
@ -106,7 +111,7 @@ forms:
type: flavor
label: Instance flavor
description: >-
Select registered in Openstack flavor. Consider that service performance
Select registered in Openstack flavor. Consider that service performance
depends on this parameter.
required: false
- name: osImage
@ -114,7 +119,7 @@ forms:
imageType: windows
label: Instance image
description: >-
Select valid image for a service. Image should already be prepared and
Select valid image for a service. Image should already be prepared and
registered in glance.
- name: availabilityZone
type: azone

View File

@ -14,7 +14,7 @@ forms:
type: string
label: Service Name
description: >-
Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
Enter a desired name for a service. Just A-Z, a-z, 0-9, dash and
underline are allowed.
minLength: 2
maxLength: 64
@ -34,15 +34,15 @@ forms:
descriptionTitle: Passwords
description: >-
Windows requires strong password for service administration.
Your password should have at least one letter in each
register, a number and a special character. Password length should be
Your password should have at least one letter in each
register, a number and a special character. Password length should be
a minimum of 7 characters.
- name: domain
type: domain
label: Domain
required: false
description: >-
Service can be joined to the Active Directory domain. If you want to
Service can be joined to the Active Directory domain. If you want to
create an AD domain create the AD Service first.
helpText: Optional field for a domain to which service can be joined
- name: dcInstances
@ -54,6 +54,11 @@ forms:
label: Instance Count
description: Several instances with IIS Service can be created at one time.
helpText: Enter an integer value between 2 and 100
- name: loadBalancerIp
type: clusterip
label: Load Balancer VIP
description: Specify IP number where Load Balancer will be running
helpText: Enter an free IP address from the subnet where instances will be created
- name: loadBalancerPort
type: integer
label: Load Balancer port
@ -67,8 +72,8 @@ forms:
label: Hostname template
description: >-
For your convenience all instance hostnames can be named
in the same way. Enter a name and use # character for incrementation.
For example, host# turns into host1, host2, etc. Please follow Windows
in the same way. Enter a name and use # character for incrementation.
For example, host# turns into host1, host2, etc. Please follow Windows
hostname restrictions.
required: false
regexpValidator: '^(([a-zA-Z0-9#][a-zA-Z0-9-#]*[a-zA-Z0-9#])\.)*([A-Za-z0-9#]|[A-Za-z0-9#][A-Za-z0-9-#]*[A-Za-z0-9#])$'
@ -94,7 +99,7 @@ forms:
type: flavor
label: Instance flavor
description: >-
Select registered in Openstack flavor. Consider that service performance
Select registered in Openstack flavor. Consider that service performance
depends on this parameter.
required: false
- name: osImage
@ -102,7 +107,7 @@ forms:
imageType: windows
label: Instance image
description: >-
Select valid image for a service. Image should already be prepared and
Select valid image for a service. Image should already be prepared and
registered in glance.
- name: availabilityZone
type: azone

View File

@ -53,13 +53,14 @@
<parameter name="mappings">
<map>
<mapping name="instanceName"><select path="state.hostname"/></mapping>
<mapping name="lbIp"><select path="::loadBalancerIp"/></mapping>
<mapping name="lbPort"><select path="::loadBalancerPort"/></mapping>
<mapping name="lbName"><select path="::name"/></mapping>
</map>
</parameter>
<success>
<set path="temp.registeredWithLB"><true/></set>
<set path="::uri">http://<select source="outputs" path="LoadBalancerIP"/>:<select path="::loadBalancerPort"/></set>
<set path="::uri">http://<select path="::loadBalancerIp"/>:<select path="::loadBalancerPort"/></set>
</success>
<failure>
<report entity="unit" level="error">