2&>1

AWSとかGCPとかGolangとかとか

CloudFormationでの証明書・ヘルスチェック・StickysessionなCLB構築

CloudFormationのサンプルです。

今回はClassic Load Balancerを構築するだけです。(今更のCLB)

(それだけで存在意義があるのかどうか。。)

ほんとにCLBを作るだけです。

HTTPSなので証明書付けてヘルスチェックとアプリケーションでのstickysessionもセットしてます。

ソース

AWSTemplateFormatVersion: 2010-09-09
Description: Create CLB Stack
Resources:
  StagingCLB:
    Type: 'AWS::ElasticLoadBalancing::LoadBalancer'
    Properties:
      LoadBalancerName: TestELB01
      Listeners:
        - LoadBalancerPort: '443'
          InstancePort: '80'
          Protocol: HTTPS
          InstanceProtocol: HTTP
          SSLCertificateId: arn:aws:acm:ap-northeast-1:363717127291:certificate/b06950ee-623c-4b98-9d8d-14eb6e988f34
          PolicyNames: 
            - testAPPcoki
      Subnets:
        - subnet-09300c7e443992f81
      HealthCheck:
        Target: 'HTTP:80/healthcheck.html'
        Timeout: '5'
        Interval: '30'
        UnhealthyThreshold: '2'
        HealthyThreshold: '10'
      SecurityGroups:
        - sg-092de19a56e26119e
      Instances:
        - i-03e4e191311b3b7cf
      Scheme: internet-facing
      ConnectionDrainingPolicy:
        Enabled: true
        Timeout: 300
      Policies:
        - PolicyName: testAPPcoki
          PolicyType: AppCookieStickinessPolicyType
          Attributes:
          - Name: CookieName
            Value: MyCookie

Gitはここ

github.com

まとめ

本当はインスタンス紐づけとかしたかったけど既存セキュリティーグループの紐づけでハマってまだ解決できずなためCLBだけで。。

このへんが関係してんのかなと。

EC2の属するセキュリティグループをEC2-Classicでは「セキュリティグループ名」で指定するのですが、EC2-VPCでは「セキュリティグループID」で指定します

dev.classmethod.jp