Servidores

Servidores são a base de tudo no PrimeForge: é neles que os seus sites rodam e que ficam os serviços de infraestrutura (bancos de dados, cache, armazenamento). Esta página mostra como encontrar seus servidores na lista, quais tipos existem e como usar o formulário Criar Servidor para conectar uma máquina que você já tem ou provisionar uma nova na nuvem, do zero até o status Pronto.

A lista de servidores

Em Infraestrutura → Servidores você vê todos os servidores da organização. Cada linha traz o nome, o endereço IP, a região, o tipo, o status ao vivo e o indicador de conexão do Agent (verde quando conectado). No exemplo da Empresa XPTO, a lista mostra dois servidores: o Servidor Principal (tipo All-in-One) e o Servidor de Sites (tipo App Server).

A lista filtra por tag, tipo de servidor, status e serviço — este último responde "quais servidores rodam PostgreSQL?" em um clique. No cabeçalho, além de Criar Servidor, fica o botão Topologia de servidores, que abre o mapa da frota.

Lista de servidores da organização

Os status de servidor que você encontra na lista são:

  • Provisionando / Instalando — o servidor está sendo configurado.
  • Pronto — provisionado e pronto para hospedar sites ou fornecer serviços.
  • Inacessível (âmbar) — o painel está há 90 segundos sem receber sinal do Agent.
  • Offline (vermelho) — 10 minutos sem sinal do Agent.
  • Erro — o provisionamento falhou; a página do servidor mostra o que deu errado e como tentar de novo.

Clicar em uma linha abre a página daquele servidor, com toda a sua sub-navegação — detalhada em Gerenciando um Servidor.

A aba Monitoramento

Acima da tabela, duas abas: Servidores (a tabela) e Monitoramento. A aba Monitoramento troca a tabela por um cartão por servidor, com o status e os medidores de CPU, memória e disco lado a lado — a forma mais rápida de comparar a carga da frota sem abrir servidor por servidor.

Aba Monitoramento da lista de servidores, com um cartão por servidor

Tipos de servidor

O tipo escolhido no momento da criação define quais serviços são instalados. Você pode montar tudo em uma máquina só ou separar responsabilidades entre várias, conectadas pela malha WireGuard.

Tipo Serviços instalados Melhor para
All-in-One nginx + runtimes de site (php-fpm e Node), PostgreSQL, MySQL, Redis, MinIO, Reverb Configuração em um único servidor. Tudo em uma máquina.
App Server nginx + runtimes de site (php-fpm e Node) Hospedar sites de forma dedicada, usando serviços de outros servidores via WireGuard.
Banco de dados PostgreSQL, MySQL, Redis Infraestrutura de banco de dados dedicada.
Armazenamento S3 MinIO Armazenamento de objetos compatível com S3, dedicado.
Serviços PostgreSQL, MySQL, Redis, MinIO, Reverb Cluster de serviços combinado, sem hospedar sites.
Reverb Servidor WebSocket Laravel Reverb Comunicação em tempo real dedicada.
Redis Apenas Redis Servidor dedicado de cache e fila.

Como escolher o tipo

Começando agora? Use All-in-One. Ele roda tudo em uma máquina só — o cenário mais simples e o suficiente para colocar sites com banco, cache, armazenamento e tempo real no ar.

Crescendo? Separe as responsabilidades: coloque os sites em App Servers (enxutos, só com o nginx e os runtimes de site), o banco em um servidor de Banco de dados, o armazenamento em um servidor de Armazenamento S3, e conecte tudo pela malha WireGuard. Essa separação permite evoluir cada parte de forma independente — atualizar o servidor de banco sem tocar nos de app, ou adicionar mais App Servers sem afetar o banco.

É exatamente essa a arquitetura do exemplo: o Servidor Principal (All-in-One) concentra os serviços, e o Servidor de Sites (App Server) hospeda outros sites, consumindo o PostgreSQL, o Redis, o S3 e o Reverb do Servidor Principal pela malha WireGuard.

Criar um servidor

Para adicionar um servidor, vá em Infraestrutura → Servidores e clique em Criar Servidor. Tudo acontece em um único formulário: a seção Detalhes do servidor pede o nome, o tipo e o método de provisionamento, e logo abaixo aparece a seção que o método escolhido exige — Conexão SSH ou Provedor de cloud. Se o seu plano não comporta mais um servidor, um aviso no topo do formulário diz isso antes de você começar a digitar.

Pré-requisitos

  • Um VPS novo rodando Ubuntu 22.04 LTS ou 24.04 LTS (o provisionador aceita apenas essas versões).
  • No mínimo 1 GB de RAM (2 GB recomendados para o tipo All-in-One).
  • No mínimo 20 GB de disco.
  • Acesso SSH como root (ou um usuário com sudo).
  • Um domínio com DNS apontando para o IP do servidor (para os certificados TLS).

Passo 1 — Nome e tipo

O nome vem pré-preenchido com uma sugestão e serve só para você identificar o servidor no painel — troque por algo como "Servidor Principal". Em seguida, escolha o tipo de servidor nos cartões, conforme a tabela acima. Se for o seu primeiro servidor, o All-in-One (já selecionado) é a escolha recomendada. Cada cartão resume o que a máquina vai fornecer (por exemplo, "Sites + DB + Redis + S3 + Reverb").

Escolha do tipo de servidor no formulário Criar Servidor

Passo 2 — Escolher o método

O seletor Método de provisionamento oferece dois caminhos:

  • Conectar servidor existente — você já tem um VPS (de qualquer provedor) com acesso SSH root. Na seção Conexão SSH, informe o endereço IP, a porta SSH (padrão 22) e o usuário SSH (padrão root), e escolha a autenticação: senha, ou chave, caso em que o formulário mostra a chave pública SSH da organização para você adicionar ao authorized_keys do servidor. Antes de criar, use Verificar conexão para confirmar que o SSH está acessível. É o caminho mais comum.
  • Provisionar automaticamente via cloud — você tem um Provedor de Servidor já configurado. Na seção Provedor de cloud, escolha a credencial e o PrimeForge carrega, em tempo real, as regiões e os tamanhos disponíveis naquele provedor (no CloudPrime, também o sistema operacional). Ele cria o VPS por você, envia a chave SSH da organização e faz o provisionamento de ponta a ponta. Os provedores com provisionamento automático são o DigitalOcean e o CloudPrime. Se você ainda não cadastrou nenhum, o formulário mostra um atalho para cadastrar.

Seção Conexão SSH, com o botão Verificar conexão

Os provedores de nuvem são cadastrados em Configurações → Credenciais → Provedores de Servidor. O CloudPrime (cloudprime.com.br) é um provedor brasileiro com pontos de presença de baixa latência na América do Sul — útil quando seu público está no Brasil e nos países vizinhos.

Escolha do provedor de nuvem, com região e tamanho

Passo 3 — Provisionar

Ao confirmar com Criar, o PrimeForge conecta via SSH (ou chama a API do provedor de nuvem) e executa o script de provisionamento, que instala e configura, na ordem:

  1. Endurecimento de segurança (hardening) do sistema, com fail2ban e SSH endurecido.
  2. Contabilização de recursos por cgroup v2, que permite limitar CPU e memória por site.
  3. nginx — o proxy reverso do host, com um vhost por site (server_name + proxy_pass/fastcgi_pass), mais o acme.sh, que emite os certificados TLS por site (HTTP-01 / DNS-01) via Let's Encrypt (nos tipos com sites).
  4. Runtimes de site no host — o php-fpm (multi-versão, via PPA ondrej) e o Node (via NodeSource), conforme o tipo. Cada site roda isolado, sob um usuário Linux dedicado, com seu pool php-fpm (PHP/Laravel) ou unidade systemd (Node/Next.js) e uma slice do systemd limitando CPU e memória.
  5. Serviços de infraestrutura — PostgreSQL, MySQL, Redis, MinIO e Reverb, conforme o tipo escolhido.
  6. Agent do PrimeForge — o binário que executa os comandos do painel.
  7. Firewall UFW — liberando apenas SSH, HTTP/HTTPS e WireGuard.
  8. Malha WireGuard — o túnel criptografado para a comunicação entre servidores.
  9. Atualizações de segurança automáticas (unattended-upgrades), com reinício às 04:00 quando um novo kernel exigir.

Todo o processo leva de 5 a 15 minutos, dependendo da velocidade do servidor e de quais pacotes do sistema precisam ser atualizados. A página do servidor acompanha o progresso em tempo real, com um checklist de etapas (Conexão SSH, Upload de Scripts, Hardening de Segurança, nginx, PHP-FPM, Node.js, os serviços do tipo, Conexão do Agent, Malha WireGuard, Verificação) que vai sendo marcado conforme cada uma termina. Enquanto isso, a sub-navegação do servidor mostra só Visão geral, Atividade e Configurações.

Tela de progresso do provisionamento com o checklist de etapas

Se uma etapa falhar, o checklist mostra Falha no Provisionamento com o erro, e oferece Ver log de provisionamento e Tentar provisionamento novamente. Um IP, porta ou credencial errados se corrigem em Configurações do servidor antes de tentar de novo; e Cancelar provisionamento, no cabeçalho, remove o servidor do painel para você recomeçar (sem excluir a VPS no provedor).

Quando termina, o status do servidor muda para Pronto e o indicador de conexão do Agent fica verde. A partir daí, se você tiver mais de um servidor, o PrimeForge estabelece automaticamente os túneis WireGuard entre eles (e confere a malha a cada poucos minutos, refazendo um túnel que tenha ficado para trás), permitindo que um App Server alcance o banco e o Redis do servidor vizinho com segurança. O servidor já está pronto para hospedar sites (nos tipos App Server e All-in-One) ou fornecer serviços aos demais.

Próximos passos