AWS Lambda MicroVMS
Se você criar uma aplicação em que vários usuários ou agentes de IA se conectam a um ambiente computacional e executam código (por exemplo, ambientes de desenvolvimento interativos, sistemas de CI/CD ou sandboxes para IA), você precisará de ambientes computacionais que iniciem rapidamente, permaneçam isolados entre os locatários e não exijam o gerenciamento de servidores ou redes.
O AWS Lambda MicroVMS foi criado especificamente para esses casos de uso. É um ambiente computacional com tecnologia sem servidor que fornece isolamento em nível de VM com recursos completos do sistema operacional (por exemplo, instalação de pacotes do sistema ou montagem de sistemas de arquivos), velocidades de startup rápidas baseadas em snapshots e controle refinado sobre a rede de entrada (acesso à porta, suporte para HTTP/2, gRPC, WebSockets) e redes de saída (acesso público à internet e acesso à VPC).
Para casos de uso interativos, como ambientes de desenvolvimento interativos e sandboxes de IA, os ambientes podem passar por longos períodos de inatividade quando o contexto dos usuários finais muda para outras tarefas ou quando esperam pela IA. As microVMs podem ser suspensas quando ociosas, preservando o estado da memória e do disco enquanto reduzem os custos. Quando o tráfego chega, elas são retomadas. Você pode ativar a suspensão/retomada automática ou programática para reduzir os custos de inatividade e, ao mesmo tempo, manter a prontidão quase instantânea quando seus usuários finais retornarem.
O AWS Lambda MicroVMS oferece esses recursos essenciais por meio da virtualização do Firecracker, que potencializa as mais de 15 trilhões de invocações mensais das funções do Lambda.
Para começar, consulte o Criar sua primeira microVM. Para obter informações sobre a definição de preço, consulte Definição de preço do AWS Lambda
Como o Lambda MicroVMS funciona
-
Você empacota o código da aplicação e o
Dockerfileem um arquivo zip e o carrega no Amazon S3. -
Você chama a API do Lambda para criar uma imagem da microVM. O Lambda executa o
Dockerfile, inicia a aplicação e captura um snapshot do ambiente totalmente inicializado. -
Quando a aplicação precisar de um ambiente isolado, para uma sessão de usuário, um trabalho ou um sandbox, chame
run-microvm. O Lambda inicia uma microVM a partir do snapshot com tempos de startup rápidos. -
Os clientes se conectam à microVM em execução por meio de seu endpoint HTTPS dedicado. Não são necessários balanceadores de carga ou infraestrutura de entrada.
-
Quando ociosa, a microVM é suspensa, preservando o estado da memória e do disco enquanto reduz os custos. Ela é retomada com a memória e o estado do disco intactos quando o tráfego retorna. O comportamento de suspender e retomar pode ser configurado automaticamente por meio das políticas de ciclo de vida ou acionado diretamente por meio de invocações de API para
suspend-microvmeresume-microvm. -
Quando a sessão termina, você finaliza a microVM para liberar todos os recursos.
Quando usar o Lambda MicroVMS
O Lambda MicroVMS é ideal para casos de uso que executem código gerado pelo usuário ou por IA e que exijam ambientes de execução que ofereçam forte isolamento, latência rápida de inicialização e retomada e controle do desenvolvedor sobre o ciclo de vida do ambiente e a retenção do estado. Alguns casos de uso típicos:
-
Ambientes de código interativos: ambientes de desenvolvimento em que os usuários escrevem e executam código em tempo real.
-
Sandboxes de execução de código de IA: sandboxes efêmeras para executar código gerado por IA com segurança.
-
Aplicações de data analytics: cadernos Jupyter e workloads efêmeras de processamento de dados que executam scripts fornecidos pelo usuário.
-
Verificação de segurança: ferramentas de avaliação de vulnerabilidades que precisam de ambientes de execução isolados.
-
Ambientes de aprendizado por reforço: sandboxes isoladas para avaliação e treinamento de agente de IA nas quais novos ambientes são criados para cada execução.
-
CI/CD multilocatário: executores de tarefas que exigem isolamento entre locatários.
-
Servidores de jogos: ambientes de hospedagem que executam scripts fornecidos pelo usuário com forte isolamento.
Recursos principais
-
Startup rápido: as microVMs são retomadas a partir de snapshots pré-inicializados, ignorando a inicialização da aplicação. Consulte Imagens da microVM.
-
Controle do ciclo de vida: suspenda, retome e finalize microVMs de forma programática ou automática por meio de políticas de inatividade configuráveis. Consulte Execução de microVMs.
-
Redes flexíveis: as microVMs suportam tráfego HTTPS de entrada em portas configuráveis, com autenticação JWE fornecida pelo serviço. O acesso externo é configurável. Acesse a internet pública ou sua VPC. Para obter detalhes, consulte o capítulo sobre Redes.
-
Alocação flexível de recursos: provisione cada microVM para uso básico ou médio, com a flexibilidade de escalar verticalmente até 4 vezes o valor de referência configurado durante picos de atividade. Pague a taxa básica enquanto sua microVM estiver em execução e pague somente pelo uso ativo acima da referência.