-
Notifications
You must be signed in to change notification settings - Fork 17
/
EnableScalingProps.go
40 lines (37 loc) · 1.35 KB
/
EnableScalingProps.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package awsapplicationautoscaling
// Properties for enabling Application Auto Scaling.
//
// Example:
// var cluster cluster
//
// loadBalancedFargateService := ecsPatterns.NewApplicationLoadBalancedFargateService(this, jsii.String("Service"), &ApplicationLoadBalancedFargateServiceProps{
// Cluster: Cluster,
// MemoryLimitMiB: jsii.Number(1024),
// DesiredCount: jsii.Number(1),
// Cpu: jsii.Number(512),
// TaskImageOptions: &ApplicationLoadBalancedTaskImageOptions{
// Image: ecs.ContainerImage_FromRegistry(jsii.String("amazon/amazon-ecs-sample")),
// },
// })
//
// scalableTarget := loadBalancedFargateService.Service.AutoScaleTaskCount(&EnableScalingProps{
// MinCapacity: jsii.Number(1),
// MaxCapacity: jsii.Number(20),
// })
//
// scalableTarget.ScaleOnCpuUtilization(jsii.String("CpuScaling"), &CpuUtilizationScalingProps{
// TargetUtilizationPercent: jsii.Number(50),
// })
//
// scalableTarget.ScaleOnMemoryUtilization(jsii.String("MemoryScaling"), &MemoryUtilizationScalingProps{
// TargetUtilizationPercent: jsii.Number(50),
// })
//
type EnableScalingProps struct {
// Maximum capacity to scale to.
MaxCapacity *float64 `field:"required" json:"maxCapacity" yaml:"maxCapacity"`
// Minimum capacity to scale to.
// Default: 1.
//
MinCapacity *float64 `field:"optional" json:"minCapacity" yaml:"minCapacity"`
}