AWS CDK v2 でALBを自分好みに!

ならたけぽん
2024-04-04
2024-04-04

おつかれさまです。ならたけぽんです。🌈

なんか最近、やけに寒暖差が激しいな~、と、
ぼ~っとYouTubeを見ていたら、
どこかで「寒暖差で野菜はおいしくなる!」的なことを言っていました。🍓

ほうほう。なるほど。😮
じゃぁ、もしかして私もおいしくなっているのかな?、
なんてつられて思いましたが、
よく考えたら、そもそも私は誰にも捕食されたくないので、
おいしくなってもしょうがないことに気が付きました。🦁

バカなことを考えてないで、体調管理に気を付けて、
良い心持ちで新年度を迎えようと思います。🌸

というわけで、温かい緑茶をすすりつつ、
今回は、AWS CDK v2で「ALB(Application Load Balancer)」を
デコレーションしていきます!🎂



ちょっとだけ前、

  •  vpc:VPC

上記の1個の設定必須のパラメータのみを設定して、

import {
    aws_elasticloadbalancingv2 as elbv2,
} from 'aws-cdk-lib';

const alb = new elbv2.ApplicationLoadBalancer(this, 'ALB', {
    vpc: vpc
});

こんな感じでALBを作成しました。
今回はここから盛っていきます。🍚

🕊️主なオプション引数🕊️:

  (1) clientKeepAlive:Duration:デフォルト(Duration.seconds(3600))
    クライアントとのキープアライブ間隔を設定

  (2) http2Enabled:boolean:デフォルト(true)
    HTTP/2対応可を設定

  (3) idleTimeout:Duration:デフォルト(Duration.seconds(60))
    アイドルタイムアウト時間を設定

  (4) internetFacing:boolean:デフォルト(false)
    インターネット向けかインターナル向けかを設定

  (5) ipAddressType:IpAddressType:デフォルト(IpAddressType.IPv4)

    IPv4だけ可かIPv6も可か設定
    ※IPv6も可にするとALBルールの振り分けでIPv6考慮も必要に

  (6) loadBalancerName:string:デフォルト(自動生成の文字列)
    ALBの名前を設定

  (7) securityGroup:ISecurityGroup:デフォルト(セキュリティグループを新規で自動生成)
    セキュリティグループを設定

  (8) vpcSubnets:SubnetSelection:デフォルト(指定VPCのデフオルトサブネットに配置)
    サブネットを設定
 
こちらのオプションを全部設定すると、

import {
    aws_elasticloadbalancingv2 as elbv2,
} from 'aws-cdk-lib';

const alb = new elbv2.ApplicationLoadBalancer(this, 'ALB', {
    vpc: vpc,
    clientKeepAlive: cdk.Duration.seconds(4000),    
    http2Enabled: true,
    idleTimeout: cdk.Duration.seconds(120),
    internetFacing: true,
    ipAddressType: elbv2.IpAddressType.IPv4,
    loadBalancerName: 'PiyoPiyoALB',
    securityGroup: sgAlb,
    vpcSubnets: {
        subnets: [
            subnetPubA
        ]
    }

}
);

こんな感じになります!!!✨
どんどん自分好みになっていきますね!!!💞😍💞

また、公式ページにはもっと多くのオプションが記載されていますので、
もっともっと探求して盛ってくださいね。🍚



こうして作成したALBを見て。
一抹の寂しさを覚えた、そこのあなた!🙋
そうですよね。何か足りないですよね。リスナーが足りないですよね。🙆

というわけで、次回は、リスナーを作成したいと思います。🐌

なんか今日も肌寒いな~。⛄
え、オレだけ? みんなそんなに寒くないの?
もしかして、老化、来ちゃってる?🙉

それでは、良き良き、AWS CDKライフを!!!🌈