Tamanhos de máquina para executores avançados
Você pode escolher entre várias especificações para executores avançados.
Especificações para geral executores avançados
| CPU | Memória (RAM) | Armazenamento (SSD) | Arquitetura | OS (sistema operacional) |
|---|---|---|---|---|
| 5 | 14 GB | 14 GB | arm64 (M2) | macOS |
| 12 | 30 GB | 14 GB | x64 (Intel) | macOS |
| 2 | 8 GB | 75 GB | X64, ARM64 | Ubuntu |
| 4 | 16 GB | 150 GB | X64, ARM64 | Ubuntu, Windows |
| 8 | 32 GB | 300 GB | X64, ARM64 | Ubuntu, Windows |
| 16 | 64 GB | 600 GB | X64, ARM64 | Ubuntu, Windows |
| 32 | 128 GB | 1.200 GB | X64, ARM64 | Ubuntu, Windows |
| 64 | 208 GB | 2.040 GB | arm64 | Ubuntu, Windows |
| 64 | 256 GB | 2.040 GB | x64 | Ubuntu, Windows |
| 96 | 384 GB | 2.040 GB | x64 | Ubuntu, Windows |
Observação
O executor de 4 vCPUs do Windows só funciona com a imagem base da área de trabalho do Windows 11 ou do Windows Server 2025.
Especificações para GPU executores avançados
| CPU | GPU | Placa de GPU | Memória (RAM) | Memória da GPU (VRAM) | Armazenamento (SSD) | OS (sistema operacional) |
|---|---|---|---|---|---|---|
| 4 | 1 | Tesla T4 | 28 GB | 16 GB | 176 GB | Ubuntu, Windows |
Imagens do executor
Executor avançadoé executado em VMs (máquinas virtuais) e GitHub instala um VHD (disco rígido virtual) nesta máquina durante o processo de criação da VM. Você pode escolher entre diferentes imagens de VM para instalar em seus executores.
** GitHubImagens próprias:** essas imagens são mantidas por GitHub e estão disponíveis para executáveis do Linux (x64 e arm64), Windows (x64 e arm64) e macOS (x64 e arm64). Para obter mais informações sobre essas imagens e uma lista completa das ferramentas incluídas para cada sistema operacional do executável, consulte o repositório de GitHub Actions imagens executáveis.
Partner Images: As imagens do Parceiro não são gerenciadas por GitHub e são extraídas do Azure Marketplace. Veja abaixo onde encontrar mais informações e relatar problemas sobre imagens de parceiros.
- Imagem base da área de trabalho do Windows 11.
- VMI otimizada para GPU NVIDIA
- Máquina Virtual de Ciência de Dados – Windows 2019.
Disponível para macOS executores avançados e rótulos
Os computadores a seguir estão disponíveis para macOS executores avançados. Quando você cria um macOS executor avançado, o nome do executor também está disponível como um rótulo de fluxo de trabalho que você pode usar com runs-on.
| Tamanho do executor | Arquitetura | Processador (CPU) | Memória (RAM) | Armazenamento (SSD) | Etiqueta de fluxo de trabalho |
|---|---|---|---|---|---|
| Grande | Intel | 12 | 30 GB | 14 GB | |
macos-latest-large, macos-14-large( macos-15-large mais recente), macos-26-large | |||||
| XLarge | arm64 (M2) | 5 (+ 8 aceleração de hardware GPU) | 14 GB | 14 GB | |
macos-latest-xlarge, macos-14-xlarge( macos-15-xlarge mais recente), macos-26-xlarge |
Limitações para macOS executores avançados
- Todas as ações fornecidas pelo GitHub são compatíveis com executores arm64 hospedados pelo GitHub. No entanto, as ações da comunidade podem não ser compatíveis com o arm64 e precisam ser instaladas manualmente em tempo de execução.
- Não há suporte para virtualização aninhada devido à limitação da Estrutura de Virtualização da Apple.
- Os recursos de rede, como a rede privada do Azure e a atribuição de IPs estáticos, não estão disponíveis atualmente para corredores maiores do macOS.
- Os executores macOS arm64 não têm um UUID/UDID estático atribuído a eles porque a Apple não suporta esse recurso. No entanto, os executores Intel MacOS recebem um UDID estático, especificamente
4203018E-580F-C1B5-9525-B745CECA79EB. Caso esteja criando e assinando no mesmo host no qual planeja testar a compilação, você poderá assinar com um perfil de provisionamento de desenvolvimento. Caso precise de um DID estático, você poderá usar os executores Intel e adicionar seu UDID à sua conta de desenvolvedor da Apple. - Os executores do macOS não estão disponíveis em subdomínios do GHE.com, como
octocorp.ghe.com.
Solução de problemas executores avançados
Se você notar que os jobs que têm seus executor avançados como alvo estão atrasados ou não estão sendo executados, há vários fatores que podem estar causando isso.
- Configurações de simultaneidade: talvez você tenha atingido o limite máximo de simultaneidade. Para permitir que mais trabalhos sejam executados em paralelo, atualize as configurações de dimensionamento automático para um número maior. Consulte Gerenciar executores maiores.
- Permissões de repositório: Verifique se você tem as permissões de repositório apropriadas habilitadas para seus executor avançados. Por padrão, os executores corporativos não estão disponíveis no nível do repositório e devem ser habilitados manualmente por um administrador da organização. Consulte Gerenciar executores maiores.
- Informações de cobrança: Você deve ter um cartão de crédito válido cadastrado para usar executor avançados. Depois de adicionar um cartão de crédito à sua conta, pode levar até 10 minutos para que o uso de seus executor avançados seja ativado. Consulte Gerenciar suas informações de pagamento e cobrança.
- Limite de gastos: Seu GitHub Actions limite de gastos deve ser definido como um valor maior que zero. Consulte Definir orçamentos para controlar gastos com produtos limitados.
- **Política de uso justo:**GitHub tem uma política de uso justo que começa a restringir os trabalhos com base em vários fatores, como quantos trabalhos você está executando ou quantos trabalhos estão sendo executados em toda a GitHub Actions.
- Tempo de atribuição na fila de trabalhos: O tempo de atribuição na fila de trabalhos refere-se ao intervalo entre uma solicitação de trabalho e GitHub a atribuição de uma VM para executar o trabalho. Executores padrão hospedados em GitHub que utilizam rótulos de fluxo de trabalho em YAML predefinidos (como
ubuntu-latest) estão sempre em um "estado de prontidão". Com executores avançados, é possível que uma VM quente não esteja pronta para assumir um trabalho na primeira solicitação, pois os pools para essas máquinas são menores. Como resultado, GitHub talvez seja necessário criar uma nova VM, o que aumenta a fila para atribuir tempo. Quando um executor está em uso, as VMs ficam prontas para execuções de fluxo de trabalho subsequentes em 5 minutos. Se não for usado novamente nesse período, um subconjunto dessas máquinas permanecerá quente, reduzindo a fila para atribuir tempo para execuções de fluxo de trabalho futuras nas próximas 24 horas. Quanto maior o volume de trabalhos executados, mais VMs permanecerão no pool quente.
Rede para executores avançados
Por padrão, executores avançados receba um endereço IP dinâmico que é alterado para cada execução de trabalho. Opcionalmente, os clientes GitHub Enterprise Cloud podem configurar seu executores avançados para receber endereços IP estáticos do pool de endereços IP do GitHub. Para saber mais, confira Sobre os endereços IP do GitHub.
Quando ativado, as instâncias do executor avançado receberão endereços IP de faixas específicas exclusivas do executor, permitindo que você use essas faixas para configurar uma lista de permissões no firewall. Você pode usar até 10 intervalos executores avançados de endereços IP estáticos para as contas executores avançados criadas no nível corporativo. Além disso, você pode usar até 10 intervalos executores avançados de endereços IP estáticos para as contas executores avançados criadas no nível da organização, para cada organização da sua empresa. Para saber mais, confira Gerenciar executores maiores.
Para usar mais de 10 executores maiores com intervalos de endereços IP estáticos, entre em contato com conosco por meio do Portal de suporte do GitHub.
Observação
Se os executores não forem usados por mais de 90 dias, os respectivos intervalos de endereços IP serão removidos automaticamente e não poderão ser recuperados.