AWS Elastic Load Balancing V2 Deployment with CloudFormation: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 21: Line 21:
       [[AWS_Elastic_Load_Balancing_Concepts#Load_Balancer_Types|Type]]: '[[AWS_Elastic_Load_Balancing_Concepts#Application_Load_Balancer|application]]'|'[[AWS_Elastic_Load_Balancing_Concepts#Network_Load_Balancer|network]]'
       [[AWS_Elastic_Load_Balancing_Concepts#Load_Balancer_Types|Type]]: '[[AWS_Elastic_Load_Balancing_Concepts#Application_Load_Balancer|application]]'|'[[AWS_Elastic_Load_Balancing_Concepts#Network_Load_Balancer|network]]'
       [[AWS_Elastic_Load_Balancing_Concepts#IP_Address_Type|IpAddressType]]: 'ipv4'
       [[AWS_Elastic_Load_Balancing_Concepts#IP_Address_Type|IpAddressType]]: 'ipv4'
       LoadBalancerAttributes:
       [[AWS_Elastic_Load_Balancing_Concepts#Common_Load_Balancer_Configuration|LoadBalancerAttributes]]:
         - Key:
         - Key:
           Value:
           Value:

Revision as of 19:01, 2 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:
          Value:
        - Key:
          Value:
      SecurityGroups:
        - String
      Subnets:
        - String
      SubnetMappings:
        - SubnetMapping

AWS::ElasticLoadBalancingV2::TargetGroup

Resources:
 TargetGroup:
    Type: AWS::ElasticLoadBalancingV2::TargetGroup
    Properties:
      HealthCheckIntervalSeconds: 60
      HealthCheckPath: '/myservice/actuator/health'
      HealthCheckProtocol: HTTP
      HealthCheckTimeoutSeconds: 5
      HealthyThresholdCount: 2
      TargetType: ip
      Name: myservice
      Port: 8086
      Protocol: HTTP
      UnhealthyThresholdCount: 10
      VpcId: !Ref MyVpcId

AWS::ElasticLoadBalancingV2::Listener

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