1
resposta

[Reclamação] Atualização AWS - db.t2 não é aceita no RDS, sendo a única gratuita

Tive problemas para continuar o curso, devido a atualização da AWS, onde apenas a partir da db.t3 é possível utilizar o RDS da AWS

https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html#Concepts.DBInstanceClass.Types

Como podemos continuar o curso, ainda utilizando o modo gratuito?

1 resposta

Olá, Lucas.

Tudo bem?

Realmente, as atualizações nas plataformas podem causar alguns transtornos, especialmente quando estamos no meio de um curso, e a AWS atualiza muito rápido.

Para continuar utilizando o RDS da AWS no modo gratuito, você pode optar pela classe de instância db.t3.micro, que ainda está incluída no nível gratuito da AWS. Eu estava lendo sobre, parece ser uma boa alternativa e deve atender às necessidades básicas para fins de aprendizado e desenvolvimento.

Aqui está um exemplo básico de como você pode modificar o seu código CDK para utilizar a db.t3.micro:

from aws_cdk import (
    aws_rds as rds,
    aws_ec2 as ec2,
    core
)

class MyDatabaseStack(core.Stack):

    def __init__(self, scope: core.Construct, id: str, **kwargs) -> None:
        super().__init__(scope, id, **kwargs)

        vpc = ec2.Vpc(self, "MyVpc", max_azs=2)

        db_instance = rds.DatabaseInstance(
            self, "MyRdsInstance",
            engine=rds.DatabaseInstanceEngine.postgres(
                version=rds.PostgresEngineVersion.VER_12_3
            ),
            instance_type=ec2.InstanceType.of(
                ec2.InstanceClass.BURSTABLE3, ec2.InstanceSize.MICRO
            ),
            vpc=vpc,
            allocated_storage=20,
            max_allocated_storage=100,
            storage_type=rds.StorageType.GP2,
            multi_az=False,
            publicly_accessible=True,
            vpc_subnets={
                "subnet_type": ec2.SubnetType.PUBLIC
            },
            deletion_protection=False,
            database_name="MyDatabase",
            master_username="admin",
            master_user_password=core.SecretValue.plain_text("admin1234")
        )

A alteração principal está na linha onde definimos o tipo de instância:

instance_type=ec2.InstanceType.of(
    ec2.InstanceClass.BURSTABLE3, ec2.InstanceSize.MICRO
)

Espero ter contribuido de alguma forma. Qualquer dúvida manda aqui. Bons estudos!