diff --git a/infrastructure/applications/pretix/cache.tf b/infrastructure/applications/pretix/cache.tf index 503fad864b..14f0a43dc1 100644 --- a/infrastructure/applications/pretix/cache.tf +++ b/infrastructure/applications/pretix/cache.tf @@ -23,3 +23,24 @@ resource "aws_elasticache_cluster" "cache" { ignore_changes = [engine_version] } } + +data "aws_ami" "ecs_arm" { + most_recent = true + + filter { + name = "name" + values = ["al2023-ami-ecs-hvm-2023.0.20240328-kernel-6.1-arm64"] + } + + filter { + name = "virtualization-type" + values = ["hvm"] + } + + filter { + name = "architecture" + values = ["arm64"] + } + + owners = ["amazon"] +} diff --git a/infrastructure/applications/pretix/main.tf b/infrastructure/applications/pretix/main.tf index 3c79f6723f..9ad7b5f09c 100644 --- a/infrastructure/applications/pretix/main.tf +++ b/infrastructure/applications/pretix/main.tf @@ -88,8 +88,7 @@ resource "aws_ecs_task_definition" "pretix_service" { { name = "pretix" image = "${data.aws_ecr_repository.repo.repository_url}@${data.aws_ecr_image.image.image_digest}" - cpu = 2048 - memory = 1900 + memoryReservation = 1900 essential = true environment = [ { diff --git a/infrastructure/applications/pretix/vpc.tf b/infrastructure/applications/pretix/vpc.tf index 974ce32fd6..75df0c47e8 100644 --- a/infrastructure/applications/pretix/vpc.tf +++ b/infrastructure/applications/pretix/vpc.tf @@ -23,6 +23,20 @@ data "aws_subnet" "public" { } } +data "aws_subnet" "private" { + vpc_id = data.aws_vpc.default.id + + filter { + name = "tag:Type" + values = ["private"] + } + + filter { + name = "tag:AZ" + values = ["eu-central-1a"] + } +} + data "aws_subnets" "private" { filter { name = "vpc-id" diff --git a/infrastructure/applications/pycon_backend/worker.tf b/infrastructure/applications/pycon_backend/worker.tf index 5d83a41874..8600473e75 100644 --- a/infrastructure/applications/pycon_backend/worker.tf +++ b/infrastructure/applications/pycon_backend/worker.tf @@ -229,7 +229,7 @@ data "template_file" "user_data" { resource "aws_instance" "instance_1" { ami = data.aws_ami.ecs.id - instance_type = "t4g.nano" + instance_type = "t4g.micro" subnet_id = data.aws_subnet.private_1a.id availability_zone = "eu-central-1a" vpc_security_group_ids = [ @@ -247,26 +247,6 @@ resource "aws_instance" "instance_1" { } } -resource "aws_instance" "instance_2" { - ami = data.aws_ami.ecs.id - instance_type = "t4g.nano" - subnet_id = data.aws_subnet.private_1a.id - availability_zone = "eu-central-1a" - vpc_security_group_ids = [ - data.aws_security_group.rds.id, - data.aws_security_group.lambda.id, - aws_security_group.instance.id - ] - source_dest_check = false - user_data = data.template_file.user_data.rendered - iam_instance_profile = aws_iam_instance_profile.worker.name - key_name = "pretix" - - tags = { - Name = "pythonit-${terraform.workspace}-worker-2" - } -} - resource "aws_cloudwatch_log_group" "worker_logs" { name = "/ecs/pythonit-${terraform.workspace}-worker" retention_in_days = 7 @@ -279,8 +259,7 @@ resource "aws_ecs_task_definition" "worker" { { name = "worker" image = "${data.aws_ecr_repository.be_repo.repository_url}@${data.aws_ecr_image.be_arm_image.image_digest}" - cpu = 2048 - memory = 400 + memoryReservation = 400 essential = true entrypoint = [ "/home/app/.venv/bin/celery", @@ -333,8 +312,7 @@ resource "aws_ecs_task_definition" "beat" { { name = "beat" image = "${data.aws_ecr_repository.be_repo.repository_url}@${data.aws_ecr_image.be_arm_image.image_digest}" - cpu = 2048 - memory = 400 + memoryReservation = 400 essential = true entrypoint = [ "/home/app/.venv/bin/celery",