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はここ
まとめ
本当はインスタンス紐づけとかしたかったけど既存セキュリティーグループの紐づけでハマってまだ解決できずなためCLBだけで。。
このへんが関係してんのかなと。
EC2の属するセキュリティグループをEC2-Classicでは「セキュリティグループ名」で指定するのですが、EC2-VPCでは「セキュリティグループID」で指定します