Pular para o conteúdo

Pré-requisitos

Item Versão Para quê
Node.js ≥ 20 Buildar e testar os pacotes. O campo engines do repositório exige isso.
Docker qualquer recente Rodar o runner em container. A imagem é node:22-alpine.
npm 10+ Os workspaces do repositório.

Você não precisa de Node instalado para rodar o runner em container: só para buildar os pacotes ou desenvolver connectors.

O Agent é a metade “mãos”. Sozinho ele sobe, conecta e fica esperando: sem um control-plane escutando no túnel, ele não faz nada útil. Antes de instalar, tenha em mãos:

  • O endereço da imagem e a autorização de pull para a sua conta ou projeto.
  • A URL do túnel (RUNNER_TUNNEL_URL), em produção: wss://tunnel.rootpilot.sh:8443.
  • O certificado do seu tenant: runner.crt, runner.key e ca.pem.

Os três itens são entregues pelo RootPilot na abertura do ambiente.

O runner precisa de egress, e só de egress. Nenhuma porta de entrada.

Sempre:

  • tunnel.rootpilot.sh:8443 (WSS + mTLS), o túnel.
  • O registry de onde vem a imagem (ECR ou Artifact Registry), no pull.

Conforme os connectors que você ligar (só os que usar):

Connector Host de saída
datadog api.datadoghq.com
github api.github.com
aws, kubernetes *.amazonaws.com, *.eks.amazonaws.com
gcp *.googleapis.com
amplitude amplitude.com
slack slack.com
cloudflare api.cloudflare.com
azion api.azion.com
vercel api.vercel.com
checkly api.checklyhq.com
grafana os endpoints dos seus datasources (Mimir, Loki, Tempo, stack)
mongo, sonarqube, jira os seus próprios hosts, que você informa na configuração

Este repositório não publica números de CPU e memória, porque não existe benchmark versionado aqui, e inventar um seria pior que omitir. O que dá para afirmar pela construção:

  • O processo é um Node de container único, sem worker pool.
  • O cache SQLite é :memory: por default, então a memória cresce com o volume de dados aprendidos na sessão e zera a cada boot.
  • O RUNNER_IDEMPOTENCY_MAX_ENTRIES (default 2000) limita o cache de idempotência de propósito, para um runner longevo não crescer sem teto.

Comece pequeno, observe, e ajuste. O runner é cattle: redimensionar é subir outro.

Nenhuma é obrigatória para subir. Cada connector é lazy, instanciado no primeiro uso, então faltar uma chave só faz aquelas operações responderem auth_error; o resto continua funcionando. A lista completa está em Credenciais por connector.

O Profiler tem pré-requisitos próprios, e mais duros

Seção intitulada “O Profiler tem pré-requisitos próprios, e mais duros”

Tudo acima é do Agent. O RootPilot Profiler é um segundo artefato, opcional e privilegiado, e o que ele exige do host não tem interseção com esta página: kernel ≥ 5.8 com BTF compilado, cgroup v2, tracefs montado e cinco capabilities de kernel.

Esses portões reprovam hosts que ninguém espera ver reprovados, então eles se checam antes da POC e não durante: curl -O https://docs.rootpilot.sh/profiler-preflight.sh && sh profiler-preflight.sh. O script é publicado na íntegra na página do Profiler, para ser lido antes de ser executado.