AWS Elastic Load Balancing V2 Deployment with CloudFormation: Difference between revisions
Jump to navigation
Jump to search
Line 61: | Line 61: | ||
Type: AWS::ElasticLoadBalancingV2::TargetGroup | Type: AWS::ElasticLoadBalancingV2::TargetGroup | ||
Properties: | Properties: | ||
[[AWS_Elastic_Load_Balancing_Concepts#Target_Group_Name|Name]]: !Ref ProjectID | |||
[[AWS_Elastic_Load_Balancing_Concepts#Target_Group_VPC_Association|VpcId]]: !Ref VPCId | |||
[[AWS_Elastic_Load_Balancing_Concepts#Target_Group_Protocol|Protocol]]: HTTP | |||
[[AWS_Elastic_Load_Balancing_Concepts#Target_Group_Port|Port]]: !Ref Port | |||
[[AWS_Elastic_Load_Balancing_Concepts#Target_Type|TargetType]]: ip | |||
[[AWS_Elastic_Load_Balancing_Concepts#Health_Check_Protocol|HealthCheckProtocol]]: HTTP | |||
[[AWS_Elastic_Load_Balancing_Concepts#Health_Check_Interval|HealthCheckIntervalSeconds]]: 60 | |||
[[AWS_Elastic_Load_Balancing_Concepts#Health_Check_Timeout|HealthCheckTimeoutSeconds]]: 5 | |||
[[AWS_Elastic_Load_Balancing_Concepts#Healthy_Threshold_Count|HealthyThresholdCount]]: 2 | |||
UnhealthyThresholdCount: 10 | [[AWS_Elastic_Load_Balancing_Concepts#Unhealthy_Threshold_Count|UnhealthyThresholdCount]]: 10 | ||
[[AWS_Elastic_Load_Balancing_Concepts#Health_Check_Path|HealthCheckPath]]: '/myservice/actuator/health' | |||
==AWS::ElasticLoadBalancingV2::Listener== | ==AWS::ElasticLoadBalancingV2::Listener== |
Revision as of 02:30, 3 April 2019
External
Internal
Resource Types
AWS::ElasticLoadBalancingV2::LoadBalancer
Resources: ALoadBalancer: Type: AWS::ElasticLoadBalancingV2::LoadBalancer Properties: Name: blue Scheme: 'internet-facing'|'internal' Type: 'application'|'network' IpAddressType: 'ipv4' LoadBalancerAttributes: - Key: 'access_logs.s3.enabled' Value: true|false - Key: 'access_logs.s3.bucket' Value: ... - Key: 'access_logs.s3.prefix' Value: ... Subnets: - blue-subnet-id - red-subnet-id SubnetMappings: - ... SecurityGroups: - some-security-group-for-application-load-balancer
AWS::ElasticLoadBalancingV2::TargetGroup
Network Load Balancer TargetGroup
Resources: TargetGroup: Type: AWS::ElasticLoadBalancingV2::TargetGroup Properties: Name: !Ref ProjectID VpcId: !Ref VPCId Protocol: TCP Port: !Ref Port TargetType: ip HealthCheckProtocol: TCP HealthCheckIntervalSeconds: 10 HealthCheckTimeoutSeconds: 10 HealthyThresholdCount: 3 UnhealthyThresholdCount: 3
Application Load Balancer TargetGroup
Resources: TargetGroup: Type: AWS::ElasticLoadBalancingV2::TargetGroup Properties: Name: !Ref ProjectID VpcId: !Ref VPCId Protocol: HTTP Port: !Ref Port TargetType: ip HealthCheckProtocol: HTTP HealthCheckIntervalSeconds: 60 HealthCheckTimeoutSeconds: 5 HealthyThresholdCount: 2 UnhealthyThresholdCount: 10 HealthCheckPath: '/myservice/actuator/health'
AWS::ElasticLoadBalancingV2::Listener
Network Load Balancer Listener
Resources: LoadBalancerListener: Type: AWS::ElasticLoadBalancingV2::Listener Properties: LoadBalancerArn: !Ref LoadBalancerArn Port: !Ref NetworkLoadBalancerPort Protocol: TCP DefaultActions: - TargetGroupArn: !Ref TargetGroup Type: 'forward'
Application Load Balancer Listener
TODO
Resources: LoadBalancerListener: Type: AWS::ElasticLoadBalancingV2::Listener DependsOn: - TargetGroup Properties: DefaultActions: - TargetGroupArn: !Ref 'TargetGroup' Type: 'forward' LoadBalancerArn: Fn::ImportValue: !Join [':', [!Ref 'DeploymentStackName', 'ServiceALB']] Port: 10002 Protocol: HTTP