Skip to content
Latchkey

O Que É um Runner Pool? Um Conjunto Gerenciado de Runners Compartilhados

Um runner pool é uma coleção gerenciada de runners de onde os jobs retiram sob demanda, em vez de cada job estar amarrado a uma máquina específica.

Em vez de mapear jobs para máquinas nomeadas, o CI moderno trata os runners como um pool fungível: um job pega qualquer runner disponível do pool, roda e o devolve (ou, para runners efêmeros, o pool o substitui). Pools são a unidade sobre a qual o autoscaling opera.

Pool vs runner único

Um runner único atende um job por vez. Um pool agrega muitos runners para que o sistema possa atender jobs concorrentes e decidir, por job, qual runner usar - nenhum job fica fixado a uma máquina em particular.

Pool vs warm pool

Um runner pool é o conjunto geral de runners disponíveis para os jobs. Um warm pool é especificamente o subconjunto mantido pré-inicializado e ocioso para que os jobs comecem instantaneamente. Um warm pool é uma estratégia de prontidão aplicada a um runner pool.

Por que pools habilitam autoscaling

Como os jobs retiram de um pool em vez de máquinas fixas, a plataforma pode crescer e encolher o pool livremente com a demanda. Pools são o que tornam possível o scale-up, o scale-down e o scale-to-zero.

Pools por tipo de runner

Plataformas tipicamente mantêm pools separados por tamanho de runner e SO (Linux pequeno, Linux grande, GPU, etc.), cada um autoscaled independentemente, para que um label roteie um job para o pool certo com a capacidade certa.

Pools em runners gerenciados

Uma plataforma gerenciada roda esses pools para você, dimensionando e escalando cada um para que a capacidade certa esteja pronta para cada label. Na Latchkey você apenas direciona um tamanho de runner e o pool correspondente atende o job - você nunca provisiona nem balanceia os pools por conta própria.

Principais conclusões

  • Um runner pool é um conjunto gerenciado de runners de onde os jobs retiram sob demanda.
  • Pools desacoplam jobs de máquinas específicas, habilitando concorrência.
  • Um warm pool é o subconjunto pré-inicializado de um runner pool.
  • Pools são a unidade que o autoscaling cresce e encolhe.

Guias relacionados