回答日 : 2024-01-23
Terraformを使用してCloudFrontのSSL証明書をACM(AWS Certificate Manager)から取得し、それをALB(Application Load Balancer)に関連付ける手順は以下の通りです:
1. ACM証明書を作成します。この証明書を後でALBと関連付けます。証明書のARN(Amazon Resource Name)を取得しておきます[1]。
2. TerraformコードでALBを定義します。以下はALBの一部を作成するTerraformコードの例です:
```terraform
resource "aws_lb" "example" {
name = "example"
internal = false
load_balancer_type = "application"
enable_deletion_protection = false
security_groups = [aws_security_group.example.id]
subnets = aws_subnet.example[*].id
enable_http2 = true
enable_deletion_protection = false
}
```
3. TerraformコードでALBのリスナーを設定し、SSL証明書をACMから取得します。以下は一部のコード例です:
```terraform
resource "aws_lb_listener" "example" {
load_balancer_arn = aws_lb.example.arn
port = 443
protocol = "HTTPS"
ssl_policy = "ELBSecurityPolicy-2016-08"
certificate_arn = "YOUR_ACM_CERTIFICATE_ARN_HERE"
}
```
4. Terraformを実行して、リソースをデプロイします。
これで、CloudFrontのSSL証明書をACMから取得し、ALBに関連付ける設定が完了します。証明書のARNを適切に入力してください。証明書のARNはACMから取得できます。