Commit e559a000 by Feanil Patel

Merge pull request #877 from edx/feanil/cfn_xserver

Feanil/cfn xserver
parents 164b65d0 8d4b9bb8
...@@ -2918,7 +2918,9 @@ ...@@ -2918,7 +2918,9 @@
"s3:Put", "s3:Put",
"ses:SendEmail", "ses:SendEmail",
"ses:SendRawEmail", "ses:SendRawEmail",
"ses:GetSendQuota" "ses:GetSendQuota",
"ec2:DescribeInstances",
"ec2:DescribeTags"
], ],
"Resource":"*" "Resource":"*"
} }
...@@ -3045,7 +3047,7 @@ ...@@ -3045,7 +3047,7 @@
] ]
} }
}, },
"EdxappServerASGroup":{ "EdxappServerAsGroup":{
"Type":"AWS::AutoScaling::AutoScalingGroup", "Type":"AWS::AutoScaling::AutoScalingGroup",
"Properties":{ "Properties":{
"AvailabilityZones":[ "AvailabilityZones":[
...@@ -3082,6 +3084,11 @@ ...@@ -3082,6 +3084,11 @@
"PropagateAtLaunch":true "PropagateAtLaunch":true
}, },
{ {
"Key":"services",
"Value":"edxapp,lms,cms",
"PropagateAtLaunch":true
},
{
"Key":"environment", "Key":"environment",
"Value":{ "Value":{
"Ref":"EnvironmentTag" "Ref":"EnvironmentTag"
...@@ -3120,7 +3127,7 @@ ...@@ -3120,7 +3127,7 @@
"Properties":{ "Properties":{
"AdjustmentType":"ChangeInCapacity", "AdjustmentType":"ChangeInCapacity",
"AutoScalingGroupName":{ "AutoScalingGroupName":{
"Ref":"EdxappServerASGroup" "Ref":"EdxappServerAsGroup"
}, },
"Cooldown":"60", "Cooldown":"60",
"ScalingAdjustment":"1" "ScalingAdjustment":"1"
...@@ -3131,7 +3138,7 @@ ...@@ -3131,7 +3138,7 @@
"Properties":{ "Properties":{
"AdjustmentType":"ChangeInCapacity", "AdjustmentType":"ChangeInCapacity",
"AutoScalingGroupName":{ "AutoScalingGroupName":{
"Ref":"EdxappServerASGroup" "Ref":"EdxappServerAsGroup"
}, },
"Cooldown":"60", "Cooldown":"60",
"ScalingAdjustment":"-1" "ScalingAdjustment":"-1"
...@@ -3156,7 +3163,7 @@ ...@@ -3156,7 +3163,7 @@
{ {
"Name":"AutoScalingGroupName", "Name":"AutoScalingGroupName",
"Value":{ "Value":{
"Ref":"EdxappServerASGroup" "Ref":"EdxappServerAsGroup"
} }
} }
], ],
...@@ -3182,7 +3189,7 @@ ...@@ -3182,7 +3189,7 @@
{ {
"Name":"AutoScalingGroupName", "Name":"AutoScalingGroupName",
"Value":{ "Value":{
"Ref":"EdxappServerASGroup" "Ref":"EdxappServerAsGroup"
} }
} }
], ],
...@@ -3368,7 +3375,7 @@ ...@@ -3368,7 +3375,7 @@
] ]
} }
}, },
"XqueueServerASGroup":{ "XqueueServerAsGroup":{
"Type":"AWS::AutoScaling::AutoScalingGroup", "Type":"AWS::AutoScaling::AutoScalingGroup",
"Properties":{ "Properties":{
"AvailabilityZones":[ "AvailabilityZones":[
...@@ -3443,7 +3450,7 @@ ...@@ -3443,7 +3450,7 @@
"Properties":{ "Properties":{
"AdjustmentType":"ChangeInCapacity", "AdjustmentType":"ChangeInCapacity",
"AutoScalingGroupName":{ "AutoScalingGroupName":{
"Ref":"XqueueServerASGroup" "Ref":"XqueueServerAsGroup"
}, },
"Cooldown":"60", "Cooldown":"60",
"ScalingAdjustment":"1" "ScalingAdjustment":"1"
...@@ -3454,7 +3461,7 @@ ...@@ -3454,7 +3461,7 @@
"Properties":{ "Properties":{
"AdjustmentType":"ChangeInCapacity", "AdjustmentType":"ChangeInCapacity",
"AutoScalingGroupName":{ "AutoScalingGroupName":{
"Ref":"XqueueServerASGroup" "Ref":"XqueueServerAsGroup"
}, },
"Cooldown":"60", "Cooldown":"60",
"ScalingAdjustment":"-1" "ScalingAdjustment":"-1"
...@@ -3479,7 +3486,7 @@ ...@@ -3479,7 +3486,7 @@
{ {
"Name":"AutoScalingGroupName", "Name":"AutoScalingGroupName",
"Value":{ "Value":{
"Ref":"XqueueServerASGroup" "Ref":"XqueueServerAsGroup"
} }
} }
], ],
...@@ -3505,7 +3512,7 @@ ...@@ -3505,7 +3512,7 @@
{ {
"Name":"AutoScalingGroupName", "Name":"AutoScalingGroupName",
"Value":{ "Value":{
"Ref":"XqueueServerASGroup" "Ref":"XqueueServerAsGroup"
} }
} }
], ],
...@@ -3677,7 +3684,7 @@ ...@@ -3677,7 +3684,7 @@
] ]
} }
}, },
"CommonClusterServerASGroup":{ "CommonClusterServerAsGroup":{
"Type":"AWS::AutoScaling::AutoScalingGroup", "Type":"AWS::AutoScaling::AutoScalingGroup",
"Properties":{ "Properties":{
"AvailabilityZones":[ "AvailabilityZones":[
...@@ -3774,7 +3781,7 @@ ...@@ -3774,7 +3781,7 @@
{ {
"Name":"AutoScalingGroupName", "Name":"AutoScalingGroupName",
"Value":{ "Value":{
"Ref":"CommonClusterServerASGroup" "Ref":"CommonClusterServerAsGroup"
} }
} }
], ],
...@@ -3796,7 +3803,7 @@ ...@@ -3796,7 +3803,7 @@
{ {
"Name":"AutoScalingGroupName", "Name":"AutoScalingGroupName",
"Value":{ "Value":{
"Ref":"CommonClusterServerASGroup" "Ref":"CommonClusterServerAsGroup"
} }
} }
], ],
...@@ -4207,13 +4214,13 @@ ...@@ -4207,13 +4214,13 @@
] ]
} }
}, },
"XServer":{ "XserverServer":{
"Type":"AWS::AutoScaling::LaunchConfiguration", "Type":"AWS::AutoScaling::LaunchConfiguration",
"Properties":{ "Properties":{
"IamInstanceProfile":{ "Ref":"XServerInstanceProfile" }, "IamInstanceProfile":{ "Ref":"XServerInstanceProfile" },
"SecurityGroups":[ "SecurityGroups":[
{ {
"Ref":"XServerSecurityGroup" "Ref":"XserverServerSecurityGroup"
} }
], ],
"ImageId":{ "ImageId":{
...@@ -4249,7 +4256,7 @@ ...@@ -4249,7 +4256,7 @@
] ]
} }
}, },
"XServerASGroup":{ "XserverServerAsGroup":{
"Type":"AWS::AutoScaling::AutoScalingGroup", "Type":"AWS::AutoScaling::AutoScalingGroup",
"Properties":{ "Properties":{
"AvailabilityZones":[ "AvailabilityZones":[
...@@ -4301,7 +4308,7 @@ ...@@ -4301,7 +4308,7 @@
} }
], ],
"LaunchConfigurationName":{ "LaunchConfigurationName":{
"Ref":"XServer" "Ref":"XserverServer"
}, },
"MinSize":{ "MinSize":{
"Ref":"XServerDesiredCapacity" "Ref":"XServerDesiredCapacity"
...@@ -4319,23 +4326,23 @@ ...@@ -4319,23 +4326,23 @@
] ]
} }
}, },
"XServerScaleUpPolicy":{ "XserverServerScaleUpPolicy":{
"Type":"AWS::AutoScaling::ScalingPolicy", "Type":"AWS::AutoScaling::ScalingPolicy",
"Properties":{ "Properties":{
"AdjustmentType":"ChangeInCapacity", "AdjustmentType":"ChangeInCapacity",
"AutoScalingGroupName":{ "AutoScalingGroupName":{
"Ref":"XServerASGroup" "Ref":"XserverServerAsGroup"
}, },
"Cooldown":"60", "Cooldown":"60",
"ScalingAdjustment":"1" "ScalingAdjustment":"1"
} }
}, },
"XServerScaleDownPolicy":{ "XserverServerScaleDownPolicy":{
"Type":"AWS::AutoScaling::ScalingPolicy", "Type":"AWS::AutoScaling::ScalingPolicy",
"Properties":{ "Properties":{
"AdjustmentType":"ChangeInCapacity", "AdjustmentType":"ChangeInCapacity",
"AutoScalingGroupName":{ "AutoScalingGroupName":{
"Ref":"XServerASGroup" "Ref":"XserverServerAsGroup"
}, },
"Cooldown":"60", "Cooldown":"60",
"ScalingAdjustment":"-1" "ScalingAdjustment":"-1"
...@@ -4353,14 +4360,14 @@ ...@@ -4353,14 +4360,14 @@
"Threshold":"90", "Threshold":"90",
"AlarmActions":[ "AlarmActions":[
{ {
"Ref":"XServerScaleUpPolicy" "Ref":"XserverServerScaleUpPolicy"
} }
], ],
"Dimensions":[ "Dimensions":[
{ {
"Name":"AutoScalingGroupName", "Name":"AutoScalingGroupName",
"Value":{ "Value":{
"Ref":"XServerASGroup" "Ref":"XserverServerAsGroup"
} }
} }
], ],
...@@ -4379,14 +4386,14 @@ ...@@ -4379,14 +4386,14 @@
"Threshold":"70", "Threshold":"70",
"AlarmActions":[ "AlarmActions":[
{ {
"Ref":"XServerScaleDownPolicy" "Ref":"XserverServerScaleDownPolicy"
} }
], ],
"Dimensions":[ "Dimensions":[
{ {
"Name":"AutoScalingGroupName", "Name":"AutoScalingGroupName",
"Value":{ "Value":{
"Ref":"XServerASGroup" "Ref":"XserverServerAsGroup"
} }
} }
], ],
...@@ -4463,7 +4470,7 @@ ...@@ -4463,7 +4470,7 @@
] ]
} }
}, },
"XServerSecurityGroup":{ "XserverServerSecurityGroup":{
"Type":"AWS::EC2::SecurityGroup", "Type":"AWS::EC2::SecurityGroup",
"Properties":{ "Properties":{
"GroupDescription":"Open up SSH access plus XServer required ports", "GroupDescription":"Open up SSH access plus XServer required ports",
...@@ -4640,6 +4647,7 @@ ...@@ -4640,6 +4647,7 @@
"WorkerServer":{ "WorkerServer":{
"Type":"AWS::AutoScaling::LaunchConfiguration", "Type":"AWS::AutoScaling::LaunchConfiguration",
"Properties":{ "Properties":{
"IamInstanceProfile":{ "Ref":"EdxappInstanceProfile" },
"SecurityGroups":[ "SecurityGroups":[
{ {
"Ref":"WorkerServerSecurityGroup" "Ref":"WorkerServerSecurityGroup"
...@@ -4678,7 +4686,7 @@ ...@@ -4678,7 +4686,7 @@
] ]
} }
}, },
"WorkerServerASGroup":{ "WorkerServerAsGroup":{
"Type":"AWS::AutoScaling::AutoScalingGroup", "Type":"AWS::AutoScaling::AutoScalingGroup",
"Properties":{ "Properties":{
"AvailabilityZones":[ "AvailabilityZones":[
...@@ -4715,6 +4723,11 @@ ...@@ -4715,6 +4723,11 @@
"PropagateAtLaunch":true "PropagateAtLaunch":true
}, },
{ {
"Key":"services",
"Value":"worker",
"PropagateAtLaunch":true
},
{
"Key":"environment", "Key":"environment",
"Value":{ "Value":{
"Ref":"EnvironmentTag" "Ref":"EnvironmentTag"
...@@ -4748,7 +4761,7 @@ ...@@ -4748,7 +4761,7 @@
"Properties":{ "Properties":{
"AdjustmentType":"ChangeInCapacity", "AdjustmentType":"ChangeInCapacity",
"AutoScalingGroupName":{ "AutoScalingGroupName":{
"Ref":"WorkerServerASGroup" "Ref":"WorkerServerAsGroup"
}, },
"Cooldown":"60", "Cooldown":"60",
"ScalingAdjustment":"1" "ScalingAdjustment":"1"
...@@ -4759,7 +4772,7 @@ ...@@ -4759,7 +4772,7 @@
"Properties":{ "Properties":{
"AdjustmentType":"ChangeInCapacity", "AdjustmentType":"ChangeInCapacity",
"AutoScalingGroupName":{ "AutoScalingGroupName":{
"Ref":"WorkerServerASGroup" "Ref":"WorkerServerAsGroup"
}, },
"Cooldown":"60", "Cooldown":"60",
"ScalingAdjustment":"-1" "ScalingAdjustment":"-1"
...@@ -4784,7 +4797,7 @@ ...@@ -4784,7 +4797,7 @@
{ {
"Name":"AutoScalingGroupName", "Name":"AutoScalingGroupName",
"Value":{ "Value":{
"Ref":"WorkerServerASGroup" "Ref":"WorkerServerAsGroup"
} }
} }
], ],
...@@ -4810,7 +4823,7 @@ ...@@ -4810,7 +4823,7 @@
{ {
"Name":"AutoScalingGroupName", "Name":"AutoScalingGroupName",
"Value":{ "Value":{
"Ref":"WorkerServerASGroup" "Ref":"WorkerServerAsGroup"
} }
} }
], ],
...@@ -4895,7 +4908,7 @@ ...@@ -4895,7 +4908,7 @@
] ]
} }
}, },
"ForumServerASGroup":{ "ForumServerAsGroup":{
"Type":"AWS::AutoScaling::AutoScalingGroup", "Type":"AWS::AutoScaling::AutoScalingGroup",
"Properties":{ "Properties":{
"AvailabilityZones":[ "AvailabilityZones":[
...@@ -4970,7 +4983,7 @@ ...@@ -4970,7 +4983,7 @@
"Properties":{ "Properties":{
"AdjustmentType":"ChangeInCapacity", "AdjustmentType":"ChangeInCapacity",
"AutoScalingGroupName":{ "AutoScalingGroupName":{
"Ref":"ForumServerASGroup" "Ref":"ForumServerAsGroup"
}, },
"Cooldown":"60", "Cooldown":"60",
"ScalingAdjustment":"1" "ScalingAdjustment":"1"
...@@ -4981,7 +4994,7 @@ ...@@ -4981,7 +4994,7 @@
"Properties":{ "Properties":{
"AdjustmentType":"ChangeInCapacity", "AdjustmentType":"ChangeInCapacity",
"AutoScalingGroupName":{ "AutoScalingGroupName":{
"Ref":"ForumServerASGroup" "Ref":"ForumServerAsGroup"
}, },
"Cooldown":"60", "Cooldown":"60",
"ScalingAdjustment":"-1" "ScalingAdjustment":"-1"
...@@ -5006,7 +5019,7 @@ ...@@ -5006,7 +5019,7 @@
{ {
"Name":"AutoScalingGroupName", "Name":"AutoScalingGroupName",
"Value":{ "Value":{
"Ref":"ForumServerASGroup" "Ref":"ForumServerAsGroup"
} }
} }
], ],
...@@ -5032,7 +5045,7 @@ ...@@ -5032,7 +5045,7 @@
{ {
"Name":"AutoScalingGroupName", "Name":"AutoScalingGroupName",
"Value":{ "Value":{
"Ref":"ForumServerASGroup" "Ref":"ForumServerAsGroup"
} }
} }
], ],
...@@ -5286,7 +5299,7 @@ ...@@ -5286,7 +5299,7 @@
] ]
} }
}, },
"MongoServerASGroup":{ "MongoServerAsGroup":{
"Type":"AWS::AutoScaling::AutoScalingGroup", "Type":"AWS::AutoScaling::AutoScalingGroup",
"Properties":{ "Properties":{
"AvailabilityZones":[ "AvailabilityZones":[
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment