Usar o Amazon Aurora Serverless v1 - Amazon Aurora

Usar o Amazon Aurora Serverless v1

O Amazon Aurora Serverless v1 (Amazon Aurora Serverless versão 1) é uma configuração sob demanda e de autoescalabilidade do Amazon Aurora. Um cluster de banco de dados do Aurora Serverless v1 é um cluster de banco de dados que dimensiona a capacidade computacional com base nas necessidades de sua aplicação. Isso contrasta com os clusters de banco de dados provisionados do Aurora, para os quais você gerencia a capacidade manualmente. O Aurora Serverless v1 fornece uma opção relativamente simples e econômica para workloads pouco frequentes, intermitentes ou imprevisíveis. Ele é econômico porque automaticamente inicia, escala a capacidade computacional para corresponder ao uso de sua aplicação e desliga quando não está em uso.

Para saber mais sobre preços, consulte Preços de recursos sem servidor em Edição compatível com MySQL ou Edição compatível com PostgreSQL na página Amazon Aurora pricing.

Aurora Serverless v1Os clusters do têm o mesmo tipo de volume de armazenamento de alta capacidade, distribuído e altamente disponível que é usado por clusters de banco de dados provisionados.

Para um cluster do Aurora Serverless v2, você pode escolher se deseja criptografar o volume do cluster.

Para um cluster do Aurora Serverless v1, o volume do cluster é sempre criptografado. É possível escolher a chave de criptografia, mas não é possível desabilitar a criptografia. Isso significa que você pode executar as mesmas operações em um Aurora Serverless v1 que você pode em snapshots criptografados. Para obter mais informações, consulte Aurora Serverless v1 e snapshots.

Importante

A Aurora tem duas gerações de tecnologia sem servidor, Aurora Serverless v2 e Aurora Serverless v1. Se sua aplicação puder ser executada no MySQL 8.0 ou PostgreSQL 13, recomendamos usar Aurora Serverless v2. Aurora Serverless v2 escala com maior rapidez e de forma mais granular. Aurora Serverless v2 também tem mais compatibilidade com outros recursos do Aurora, como instâncias de banco de dados do leitor. Dessa forma, se você já conhece o Aurora, não precisa aprender tantos procedimentos novos ou limitações para usar o Aurora Serverless v2 como com o Aurora Serverless v1.

Saiba mais sobre o Aurora Serverless v2 em Usar o Aurora Serverless v2.

Disponibilidade de região e versão

A disponibilidade e a compatibilidade de recursos variam entre versões específicas de cada mecanismo de banco de dados do Aurora e entre Regiões da AWS. Para obter mais informações sobre a disponibilidade de versões e regiões com o Aurora e Aurora Serverless v1, consulte Aurora Serverless v1.

Vantagens do Aurora Serverless v1

Aurora Serverless v1O oferece as seguintes vantagens:

  • Mais simples do que o modelo provisionado: o Aurora Serverless v1 elimina muito da complexidade e gerenciar instâncias de banco de dados e capacidade.

  • Escalável: o Aurora Serverless v1 escala perfeitamente a capacidade de computação e de memória, conforme necessário, sem interrupções nas conexões do cliente.

  • Econômico: ao usar o Aurora Serverless v1, você paga apenas pelos recursos de banco de dados que consome, por segundo.

  • Armazenamento de alta disponibilidade: o Aurora Serverless v1 usa o mesmo sistema de armazenamento distribuído e tolerante a falhas com replicação de seis maneiras que o Aurora para se proteger contra a perda de dados.

Casos de uso do Aurora Serverless v1

Aurora Serverless v1O foi projetado para os seguintes casos de uso:

  • Aplicações usadas com pouca frequência:você tem uma aplicação que é usada somente por alguns minutos várias vezes por dia ou por semana, como um site de blog de volume baixo. Com o Aurora Serverless v1, você paga apenas pelos recursos de banco de dados que consome, por segundo.

  • Novas aplicações:você está implantando uma nova aplicação e não tem certeza sobre o tamanho da instância de que precisa. Com o Aurora Serverless v1, é possível criar um endpoint de banco de dados e fazer a escalabilidade automática para os requisitos de capacidade do banco de dados de sua aplicação.

  • Workloads variáveis:você está executando uma aplicação pouco usada, com picos de 30 minutos a várias horas algumas vezes por dia ou várias vezes por ano. Os exemplos são aplicações de recursos humanos, orçamentos e aplicações de relatórios operacionais. Com o Aurora Serverless v1, não é mais necessário provisionar para capacidade de pico ou média.

  • Workloads imprevisíveis – você está executando workloads diárias que têm aumentos repentinos e imprevisíveis na atividade. Um exemplo é um site de tráfego que tem um surto de atividades quando começa a chover. Com o Aurora Serverless v1, seu banco de dados faz escalabilidade automática da capacidade para atender às necessidades da carga de pico da aplicação e escala novamente para reduzir a capacidade quando o surto de atividades acaba.

  • Bancos de dados de desenvolvimento e teste – os desenvolvedores usam os bancos de dados durante as horas de trabalho, mas não precisam deles à noite ou em fins de semana. Com o Aurora Serverless v1, seu banco de dados é desligado automaticamente quando não está em uso.

  • Multi-tenant applications (Aplicações multilocatários): com o Aurora Serverless v1, não é necessário gerenciar individualmente a capacidade do banco de dados para cada aplicação em sua frota. O Aurora Serverless v1 gerencia a capacidade do banco de dados individual para você.

Limitações do Aurora Serverless v1

As limitações a seguir se aplicam ao Aurora Serverless v1:

  • O Aurora Serverless v1 não é compatível com os seguintes recursos:

    • Bancos de dados globais do Aurora

    • Réplicas do Aurora

    • AWS Identity and Access ManagementAutenticação do banco de dados do (IAM)

    • Retroceder no Aurora

    • Fluxos de atividades do banco de dados

    • Autenticação de Kerberos

    • Insights de Performance

    • RDS Proxy

    • Visualizar logs no AWS Management Console

  • As conexões com um cluster de banco de dados do Aurora Serverless v1 são encerradas automaticamente se permanecerem abertas por mais de um dia.

  • Todos os clusters de banco de dados Aurora Serverless v1 têm as seguintes limitações:

    • Não é possível exportar snapshots do Aurora Serverless v1 para buckets do Amazon S3.

    • Você não pode usar AWS Database Migration Service e Captura de dados de alteração (CDC) com clusters de banco de dados Aurora Serverless v1. Somente os clusters de bancos de dados Aurora provisionados oferecem suporte ao CDC tendo o AWS DMS como origem.

    • Não é possível salvar dados em arquivos de texto no Amazon S3 nem carregar dados de arquivos de texto para o Aurora Serverless v1 do S3.

    • Não é possível anexar um perfil do IAM a um cluster de banco de dados do Aurora Serverless v1. No entanto, você pode carregar dados no Aurora Serverless v1, por meio do Amazon S3, usando a extensão aws_s3 com a função aws_s3.table_import_from_s3 e o parâmetro credentials. Para obter mais informações, consulte Importar dados do Amazon S3 para um cluster de banco de dados do Aurora PostgreSQL.

    • Ao usar o editor de consultas, um segredo do Secrets Manager é criado para que as credenciais do banco de dados acessem o banco de dados. Se você excluir as credenciais do editor de consultas, o segredo associado também será excluído do Secrets Manager. Não é possível recuperar esse segredo após sua exclusão.

  • Os clusters de banco de dados baseados em Aurora MySQL que executam o Aurora Serverless v1 não são compatíveis com:

    • Invocar funções do AWS Lambda de dentro do cluster de bancos de dados Aurora MySQL. No entanto, as funções do AWS Lambda podem fazer chamadas para o cluster de banco de dados do Aurora Serverless v1.

    • Restauração de um snapshot de uma instância de banco de dados que não seja do Aurora MySQL ou RDS para MySQL.

    • Replicação de dados usando replicação com base em logs binários (binlogs). Essa limitação é verdadeira, não importa se o cluster de banco de dados do Aurora Serverless v1 baseado em Aurora MySQL é a origem ou o destino da replicação. Para replicar dados em um cluster de banco de dados do Aurora Serverless v1 de uma instância de banco de dados MySQL fora do Aurora, como uma em execução no Amazon EC2, avalie a possibilidade de usar o AWS Database Migration Service. Para obter mais informações, consulte o Guia do usuário do AWS Database Migration Service.

    • Criar usuários com acesso baseado em host ('username'@'IP_address'). Isso ocorre porque o Aurora Serverless v1 usa uma frota de roteadores entre o cliente e o host do banco de dados para uma escalabilidade perfeita. O endereço IP que o cluster de banco de dados do Aurora Serverless vê é o do host do roteador, não do seu cliente. Para obter mais informações, consulte Aurora Serverless v1Arquitetura do .

      Em vez disso, use o caractere curinga ('username'@'%').

  • Os clusters de banco de dados baseados no Aurora PostgreSQL que executam o Aurora Serverless v1 têm as seguintes limitações:

    • O gerenciamento de planos de consulta do Aurora PostgreSQL (extensão apg_plan_management) não é aceito.

    • Não há suporte ao recurso de replicação lógica disponível no Amazon RDS PostgreSQL e no Aurora PostgreSQL.

    • Não há suporte a comunicações de saída como as habilitadas pelas extensões do Amazon RDS para PostgreSQL. Por exemplo, não é possível acessar dados externos com a extensão postgres_fdw/dblink. Para obter mais informações sobre as extensões PostgreSQL do RDS, consulte PostgreSQL no Amazon RDS no Guia do usuário do RDS.

    • Atualmente, determinadas consultas e comandos SQL não são recomendados. Estes incluem bloqueios de aconselhamento em nível de sessão, relações temporárias, notificações assíncronas (LISTEN) e cursores com retenção (DECLARE name ... CURSOR WITH HOLD FOR query). Além disso, os comandos NOTIFY impedem a escalabilidade e não são recomendados.

      Para obter mais informações, consulte Autoscaling for Aurora Serverless v1.

  • Não é possível definir a janela de backup automatizado preferencial para um cluster de banco de dados do Aurora Serverless v1.

  • Você pode definir a janela de manutenção para um cluster de banco de dados do Aurora Serverless v1. Para obter mais informações, consulte Ajustar a janela de manutenção do cluster de banco de dados preferencial.

Requisitos de configuração do Aurora Serverless v1

Ao criar um cluster de banco de dados do Aurora Serverless v1, preste atenção aos seguintes requisitos:

  • Use estes números de porta específicos para cada mecanismo de banco de dados:

    • Aurora MySQL – 3306

    • Aurora PostgreSQL – 5432

  • Crie seu cluster de banco de dados do Aurora Serverless v1 em uma nuvem privada virtual (VPC) com base no serviço da Amazon VPC. Ao criar um cluster de banco de dados do Aurora Serverless v1 em sua VPC, você consome 2 (dois) dos 50 (cinquenta) endpoints de interface e do balanceador de carga do Gateway alocados à VPC. Esses endpoints são criados automaticamente para você. Para aumentar sua cota, você pode entrar em contato com AWS Support. Para obter mais informações, consulte as Amazon VPC cotas.

  • Não é possível fornecer um endereço IP público a um cluster de banco de dados do Aurora Serverless v1. Você pode acessar um cluster de banco de dados do Aurora Serverless v1 somente a partir de uma VPC.

  • Crie sub-redes em diferentes zonas de disponibilidade para o grupo de sub-redes de banco de dados que você usa para seu cluster de banco de dados Aurora Serverless v1. Em outras palavras, não é possível ter mais do que uma sub-rede na mesma zona de disponibilidade.

  • As alterações feitas em um grupo de sub-redes usado por um cluster de banco de dados do Aurora Serverless v1 não são aplicadas ao cluster.

  • É possível acessar um cluster de banco de dados do Aurora Serverless v1 no AWS Lambda. Para isso, é necessário configurar a função do Lambda para ser executada na mesma VPC que o cluster de banco de dados do Aurora Serverless v1. Para obter mais informações sobre como trabalhar com o AWS Lambda, consulte Configurar uma função do Lambda para acessar recursos em uma Amazon VPC no Guia do desenvolvedor do AWS Lambda.

Usar TLS/SSL com o Aurora Serverless v1

Por padrão, o Aurora Serverless v1 usa o protocolo Transport Layer Security/Secure Sockets Layer (TLS/SSL) para criptografar as comunicações entre clientes e seu cluster de banco de dados Aurora Serverless v1. Ele é compatível com TLS/SSL versões 1.0, 1.1 e 1.2. Você não precisa configurar seu cluster de banco de dados do Aurora Serverless v1 para usar TLS/SSL.

No entanto, as seguintes limitações se aplicam:

  • A compatibilidade com TLS/SSL para clusters de banco de dados do Aurora Serverless v1 não está disponível atualmente na região China (Pequim) da Região da AWS.

  • Quando você cria usuários de banco de dados para um cluster de banco de dados do Aurora Serverless v1 baseado no Aurora MySQL, não use a cláusula REQUIRE para permissões SSL. Isso impede que os usuários se conectem à instância de bancos de dados Aurora.

  • Para os utilitários MySQL Client e PostgreSQL Client, as variáveis de sessão que você pode usar em outros ambientes não têm efeito ao usar TLS/SSL entre o cliente e o Aurora Serverless v1.

  • Para o MySQL Client, ao se conectar com o modo VERIFY_IDENTITY do TLS/SSL, atualmente você precisa usar o comando mysql compatível com o MySQL 8.0. Para obter mais informações, consulte Conexão a uma instância de banco de dados executando o mecanismo de banco de dados do MySQL.

Dependendo do cliente usado para se conectar ao cluster de banco de dados do Aurora Serverless v1, talvez você não precise especificar TLS/SSL para obter uma conexão criptografada. Por exemplo, para usar o cliente PostgreSQL para se conectar a um cluster de banco de dados do Aurora Serverless v1 que executa o Aurora Edição compatível com PostgreSQL, conecte-se como você normalmente faz.

psql -h endpoint -U user

Depois de digitar sua senha, o cliente PostgreSQL mostra que você vê os detalhes da conexão, incluindo a versão TLS/SSL e a cifra.

psql (12.5 (Ubuntu 12.5-0ubuntu0.20.04.1), server 10.12) SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off) Type "help" for help.
Importante

O Aurora Serverless v1 usa o protocolo TLS/SSL (Transport Layer Security/Secure Sockets Layer) para criptografar conexões por padrão, a menos que o TLS/SSL seja desabilitado pela aplicação cliente. A conexão TLS/SSL termina na frota de roteadores. A comunicação entre a frota de roteadores e seu cluster de banco de dados do Aurora Serverless v1 ocorre dentro do limite interno da rede do serviço.

É possível conferir o status da conexão do cliente para examinar se a conexão com o Aurora Serverless v1 está criptografada com TLS/SSL. As tabelas pg_stat_ssl e pg_stat_activity do PostgreSQL e sua função ssl_is_used não mostram o estado TLS/SSL da comunicação entre a aplicação cliente e o Aurora Serverless v1. Da mesma forma, o estado TLS/SSL não pode ser derivado da instrução status do MySQL.

Anteriormente, os parâmetros de cluster do Aurora force_ssl para PostgreSQL e require_secure_transport para MySQL não eram compatíveis com o Aurora Serverless v1. Esses parâmetros já estão disponíveis para o Aurora Serverless v1. Para obter uma lista completa dos parâmetros compatíveis com o Aurora Serverless v1, chame a operação de API DescribeEngineDefaultClusterParameters. Para obter mais informações sobre grupos de parâmetros e o Aurora Serverless v1, consulte Grupos de parâmetros para Aurora Serverless v1.

Para usar o MySQL Client para se conectar a um cluster de banco de dados do Aurora Serverless v1 que executa o Aurora Edição compatível com MySQL, especifique o TLS/SSL em sua solicitação. O exemplo a seguir inclui o armazenamento de confiança CA 1 raiz da Amazon baixado do Amazon Trust Services, que é necessário para que essa conexão seja bem-sucedida.

mysql -h endpoint -P 3306 -u user -p --ssl-ca=amazon-root-CA-1.pem --ssl-mode=REQUIRED

Insira sua senha quando for solicitado. Logo, o monitor MySQL será aberto. Você pode confirmar que a sessão está criptografada usando o comando status.

mysql> status -------------- mysql Ver 14.14 Distrib 5.5.62, for Linux (x86_64) using readline 5.1 Connection id: 19 Current database: Current user: ***@******* SSL: Cipher in use is ECDHE-RSA-AES256-SHA ...

Para saber mais sobre como se conectar ao banco de dados do Aurora MySQL com o cliente MySQL, consulte Conectar-se a uma instância de banco de dados que esteja executando o mecanismo de banco de dados MySQL..

O Aurora Serverless v1 é compatível com todos os modos TLS/SSL disponíveis para o cliente do MySQL (mysql) e o cliente do PostgreSQL (psql), incluindo aqueles listados na tabela a seguir.

Descrição do modo TLS/SSL mysql psql

Conectar sem usar TLS/SSL.

DISABLED

desabilitar

Tente a conexão usando TLS/SSL primeiro, mas volte para não SSL, se necessário.

PREFERRED

preferir (padrão)

Imponha o uso de TLS/SSL.

REQUIRED

require

Imponha o TLS/SSL e verifique a CA.

VERIFY_CA

verify-ca

Imponha o TLS/SSL, verifique a CA e verifique o hostname da CA.

VERIFY_IDENTITY

verify-full

Aurora Serverless v1O usa certificados curinga. Se você especificar a opção “verificar CA” ou “verificar CA e nome do host da CA” ao usar TLS/SSL, primeiro baixe o armazenamento de confiança CA 1 raiz da Amazon no Amazon Trust Services. Depois de fazer isso, você pode identificar esse arquivo formatado em PEM em seu comando client. Para fazer isso usando o PostgreSQL Client:

Para Linux, macOS ou Unix:

psql 'host=endpoint user=user sslmode=require sslrootcert=amazon-root-CA-1.pem dbname=db-name'

Para saber mais sobre como trabalhar com o banco de dados do Aurora PostgreSQL usando o cliente do Postgres, consulte Conectar-se a uma instância de banco de dados que esteja executando o mecanismo de banco de dados do PostgreSQL..

Para obter mais informações sobre como se conectar a clusters de bancos de dados Aurora em geral, consulte Como conectar-se a um cluster de bancos de dados Amazon Aurora.

Pacotes de cifras compatíveis com clusters de banco de dados do Aurora Serverless v1

Usando conjuntos de cifras configuráveis, você pode ter mais controle sobre a segurança de suas conexões de banco de dados. É possível especificar uma lista de conjuntos de cifras que você deseja permitir para proteger conexões TLS/SSL do cliente com o banco de dados. Com conjuntos de cifras configuráveis, você pode controlar a criptografia de conexão aceita pelo servidor de banco de dados. Isso impede o uso de cifras que não são seguras ou que não são mais usadas.

Os clusters de banco de dados do Aurora Serverless v1 que são baseados no Aurora MySQL são compatíveis com os mesmos conjuntos de cifras que os clusters de banco de dados provisionados pelo Aurora MySQL. Para obter informações sobre esses conjuntos de cifras, consulte Configurar conjuntos de criptografia para conexões com clusters de banco de dados do Aurora MySQL.

Os clusters de banco de dados do Aurora Serverless v1 baseados no Aurora PostgreSQL não são compatíveis com conjuntos de cifras.