Moved elastic apps to OS::Neutron::LoadBalancer
Change-Id: Icfd01a303b0ae36e87d455135b6ad7c9ac25c651
This commit is contained in:
		| @@ -3,7 +3,7 @@ | ||||
|  | ||||
|     "Parameters": { | ||||
|         "KeyName": { | ||||
|             "Description": "Key Pair name for Load Balancer", | ||||
|             "Description": "Key Pair", | ||||
|             "Type": "String", | ||||
|             "Default": "$keyName" | ||||
|         } | ||||
|   | ||||
| @@ -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": "" | ||||
|         } | ||||
|     } | ||||
| } | ||||
| } | ||||
|   | ||||
| @@ -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": { | ||||
|   | ||||
| @@ -17,13 +17,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 | ||||
| @@ -51,7 +51,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 | ||||
| @@ -73,6 +73,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 | ||||
| @@ -86,8 +91,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#])$' | ||||
| @@ -113,7 +118,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 | ||||
| @@ -121,7 +126,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 | ||||
|   | ||||
| @@ -20,7 +20,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 | ||||
| @@ -40,15 +40,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 | ||||
| @@ -60,6 +60,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 | ||||
| @@ -73,8 +78,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#])$' | ||||
| @@ -100,7 +105,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 | ||||
| @@ -108,7 +113,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 | ||||
|   | ||||
| @@ -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"> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Serg Melikyan
					Serg Melikyan