Configuração de imagens de computação e runtime
Em um fluxo de trabalho do CodeCatalyst, é possível especificar a imagem do ambiente de computação e runtime que o CodeCatalyst usa para executar as ações de fluxo de trabalho.
Computação refere-se ao mecanismo de computação (CPU, memória e sistema operacional) gerenciado e mantido pelo CodeCatalyst para realizar ações de fluxo de trabalho.
nota
Se a computação for definida como uma propriedade do fluxo de trabalho, ela não poderá ser definida como uma propriedade de nenhuma ação nesse fluxo de trabalho. Da mesma forma, se computação for definida como uma propriedade de qualquer ação, ela não poderá ser definida no fluxo de trabalho.
Uma imagem do ambiente de runtime é um contêiner do Docker no qual o CodeCatalyst executa ações do fluxo de trabalho. O contêiner do Docker é executado na plataforma de computação escolhida e inclui um sistema operacional e ferramentas extras de que uma ação de fluxo de trabalho pode precisar, como a AWS CLI, Node.js e .tar.
Tópicos
- Tipos de computação
- Frotas de computação
- Propriedades da frota sob demanda
- Propriedades da frota provisionada
- Criar uma frota provisionada
- Edição de uma frota provisionada
- Exclusão de uma frota provisionada
- Atribuir uma frota ou computação a uma ação
- Compartilhamento de computação entre ações
- Especificação de imagens de ambiente de runtime
Tipos de computação
O CodeCatalyst oferece os seguintes tipos de computação:
-
Amazon EC2
-
AWS Lambda
O Amazon EC2 oferece flexibilidade otimizada durante as execuções de ações e o Lambda oferece velocidades otimizadas de inicialização de ações. O Lambda é compatível com execuções de ações de fluxo de trabalho mais rápidas devido a uma menor latência de inicialização. O Lambda permite executar fluxos de trabalho básicos que podem criar, testar e implantar aplicações com tecnologia sem servidor com runtimes comuns. Esses runtimes incluem Node.js, Python, Java, .NET e Go. No entanto, há alguns casos de uso não compatíveis com o Lambda e, se eles afetarem você, use o tipo de computação do Amazon EC2:
-
O Lambda não é compatível com imagens de ambiente de runtime de um registro especificado.
-
O Lambda não é compatível com ferramentas que exijam permissões de raiz. Para ferramentas como
yum
ourpm
, use o tipo de computação do Amazon EC2 ou outras ferramentas que não exijam permissões de raiz. -
O Lambda não é compatível com compilações ou execuções do Docker. As seguintes ações que usam imagens do Docker não são aceitas: Implantar pilha do AWS CloudFormation, Implantar no Amazon ECS, Publicação no Amazon S3, Inicialização do AWS CDK, Implantação do AWS CDK, invocação do AWS Lambda e GitHub Actions. As ações do GitHub baseadas no Docker que estão sendo executadas na ação GitHub Actions do CodeCatalyst também não são compatíveis com a computação Lambda. É possível usar alternativas que não exijam permissões de raiz, como o Podman.
-
O Lambda não é compatível com a gravação em arquivos externos a
/tmp
. Ao configurar suas ações de fluxo de trabalho, você pode reconfigurar suas ferramentas para instalação ou gravação de/tmp
. Se você tiver uma ação de criação que instalenpm
, configure-a para instalar em/tmp
. -
O Lambda não é compatível com runtimes de mais de 15 minutos.
Frotas de computação
O CodeCatalyst oferece as seguintes frotas de computação:
-
Frotas sob demanda
-
Frotas provisionadas
Com frotas sob demanda, quando uma ação de fluxo de trabalho é iniciada, o fluxo de trabalho provisiona os recursos necessários. As máquinas são destruídas quando a ação termina. Você só paga pelo número de minutos em que executar suas ações. As frotas sob demanda são totalmente gerenciadas e incluem recursos de escalabilidade automática para lidar com picos de demanda.
O CodeCatalyst também oferece frotas provisionadas que contêm máquinas desenvolvidas pelo Amazon EC2 que são mantidas pelo CodeCatalyst. Com frotas provisionadas, você configura um conjunto de máquinas dedicadas para realizar as ações do fluxo de trabalho. Essas máquinas permanecem ociosas, prontas para processar ações imediatamente. Com frotas provisionadas, suas máquinas estão sempre funcionando e incorrerão em custos enquanto forem provisionadas.
Para criar, atualizar ou excluir uma frota, você deve ter o perfil de administrador do espaço ou o perfil de administrador do projeto.
Propriedades da frota sob demanda
O CodeCatalyst fornece as seguintes frotas sob demanda:
Nome | Sistema operacional | Arquitetura | vCPUs | Memória (GiB) | Espaço em disco | Tipos de computação compatíveis |
---|---|---|---|---|---|---|
Linux.Arm64.Large |
Amazon Linux 2 | Arm64 | 2 | 4 |
64 GB |
Amazon EC2 |
10 GB |
Lambda |
|||||
Linux.Arm64.XLarge |
Amazon Linux 2 | Arm64 | 4 | 8 |
128 GB |
Amazon EC2 |
10 GB |
Lambda |
|||||
Linux.Arm64.2XLarge |
Amazon Linux 2 | Arm64 | 8 | 16 | 128 GB | Amazon EC2 |
Linux.x86-64.Large |
Amazon Linux 2 | x86-64 | 2 | 4 |
64 GB |
Amazon EC2 |
10 GB |
Lambda |
|||||
Linux.x86-64.XLarge |
Amazon Linux 2 | x86-64 | 4 | 8 |
128 GB |
Amazon EC2 |
10 GB |
Lambda |
|||||
Linux.x86-64.2XLarge |
Amazon Linux 2 | x86-64 | 8 | 16 | 128 GB | Amazon EC2 |
nota
As especificações para frotas sob demanda variam de acordo com seu nível de faturamento. Para obter mais informações, consulte Preços
Se nenhuma frota for selecionada, o CodeCatalyst usará Linux.x86-64.Large
.
Propriedades da frota provisionada
Uma frota provisionada contém as seguintes propriedades:
- Sistema operacional
-
O sistema operacional Os seguintes sistemas operacionais estão disponíveis:
-
Amazon Linux 2
-
Windows Server 2022
nota
As frotas do Windows são compatíveis somente na ação de criação. Outras ações atualmente não são compatíveis com o Windows.
-
- Arquitetura
-
A arquitetura do processador. As seguintes arquiteturas estão disponíveis:
-
x86_64
-
Arm64
-
- Tipo de máquina
-
O tipo de máquina para cada instância. Os seguintes tipos de máquina estão disponíveis:
vCPUs Memória (GiB) Espaço em disco Sistema operacional 2 4 64 GB
Amazon Linux 2 4 8 128 GB
Amazon Linux 2 Windows Server 2022 8 16 128 GB
Amazon Linux 2 Windows Server 2022 - Capacidade
-
O número inicial de máquinas alocadas para a frota, que define o número de ações que podem ser executadas paralelamente.
- Modo de escalabilidade
-
Define o comportamento quando o número de ações excede a capacidade da frota.
- Provisionamento da capacidade adicional sob demanda
-
Máquinas adicionais são configuradas sob demanda, o que aumenta a escala verticalmente de forma automática em resposta à execução de novas ações e, depois, reduz a escala verticalmente para a capacidade básica ao finalizar as ações. Isso pode gerar custos adicionais, já que você paga por minuto por cada máquina em funcionamento.
- Esperar até que a capacidade adicional da frota esteja disponível
-
As execuções de ação são colocadas em uma fila até que uma máquina esteja disponível. Isso limita os custos adicionais porque nenhuma máquina adicional é alocada.