Servidor & DevOps 33 visualizações

Como configurar swap de memória no VPS pra evitar quedas por falta de RAM

Ver no WHMCS

Como configurar swap de memória no VPS pra evitar quedas por falta de RAM

Oi! Aqui é a Sensei da GeHost. 🌱 Se o seu servidor já travou, ficou lento do nada ou o processo mais importante "morreu sozinho" sem aviso, é bem provável que a causa tenha sido a memória RAM acabando. Hoje vamos aprender, com calma e passo a passo, como criar um arquivo de swap — uma espécie de "memória de reserva" no disco — pra dar um alívio ao seu servidor nesses momentos de aperto.

Pense no swap como aquele estepe do carro: você não quer rodar com ele o tempo todo, mas é ótimo ter pra não ficar na mão numa emergência.

O que é swap, afinal?

Todo servidor tem uma quantidade limitada de memória RAM. Quando os programas em execução (banco de dados, aplicação, painel etc.) precisam de mais memória do que existe disponível, o sistema operacional pode simplesmente matar processos pra liberar espaço — e é aí que aparecem aquelas quedas repentinas e sem explicação aparente.

O swap é um espaço reservado no disco que o sistema usa como extensão da RAM. Ele não é tão rápido quanto a memória de verdade, mas evita que o servidor "trave" ou derrube processos importantes só porque a RAM ficou cheia por alguns instantes.

Antes de começar

  • Esse procedimento é feito por acesso SSH (terminal) ao servidor, com permissões de administrador (root).
  • Se você não tem certeza se o seu servidor permite esse tipo de acesso, ou não sabe como conectar via SSH, fale com o suporte pelo painel.gehost.com.br — eles te orientam certinho de acordo com o seu contrato.
  • Sempre verifique o espaço livre em disco antes de criar o swap, porque ele vai ocupar espaço de armazenamento.

Passo a passo: criando o arquivo de swap

  1. Verifique se já existe swap ativo
    Rode o comando abaixo no terminal:

    free -h

    Se a linha "Swap" mostrar tudo zerado, ainda não há swap configurado — vamos criar um agora.

  2. Crie o arquivo que vai servir de swap
    Um tamanho comum pra servidores pequenos e médios é entre 1GB e 2GB. Exemplo criando um arquivo de 1GB:

    fallocate -l 1G /swapfile

    Se o comando fallocate não funcionar no seu sistema, use essa alternativa:

    dd if=/dev/zero of=/swapfile bs=1M count=1024

  3. Ajuste as permissões do arquivo
    Por segurança, só o usuário root deve poder ler e escrever nesse arquivo:

    chmod 600 /swapfile

  4. Transforme o arquivo em área de swap

    mkswap /swapfile

  5. Ative o swap

    swapon /swapfile

    Confira se funcionou rodando de novo o comando free -h — agora a linha "Swap" deve mostrar o tamanho que você criou.

  6. Deixe o swap permanente (ativo após reiniciar)
    Sem esse passo, o swap some se o servidor for reiniciado. Adicione a linha abaixo no arquivo /etc/fstab:

    /swapfile none swap sw 0 0

    Dica: use um editor de texto de terminal (como nano) pra abrir o arquivo com cuidado — nano /etc/fstab, adicione a linha no final, salve e saia.

Ajuste fino: o "swappiness"

Existe uma configuração chamada swappiness, que controla o quanto o sistema "prefere" usar o swap em vez da RAM. Ela vai de 0 a 100 — quanto menor, mais o sistema evita usar o swap e só recorre a ele em último caso, o que costuma ser melhor pra servidores.

Pra verificar o valor atual:

cat /proc/sys/vm/swappiness

Pra ajustar temporariamente (por exemplo, para 10):

sysctl vm.swappiness=10

Se esse valor te deixou em dúvida, não se preocupe — o padrão do sistema já funciona bem na maioria dos casos. Esse ajuste é mais pra quem já sabe que precisa de um comportamento mais conservador.

Cuidados importantes

  • Swap não substitui memória RAM de verdade — ele é um alívio pra picos e emergências, não uma solução definitiva pra servidores que estão sempre no limite.
  • Se o seu servidor está usando swap o tempo inteiro (não só em picos), isso é sinal de que ele pode estar precisando de mais RAM mesmo. Vale conversar com o suporte sobre o plano contratado.
  • Antes de mexer em arquivos de sistema como o /etc/fstab, sempre bom ter cautela — um erro ali pode impedir o servidor de iniciar corretamente.

Precisa de ajuda?

Se em algum momento algo não sair como o esperado, ou se você preferir que a nossa equipe faça essa configuração por você, é só abrir um chamado pelo painel.gehost.com.br. Estamos aqui pra deixar tudo funcionando redondinho. 💚

Precisa de Ajuda?

Nossa equipe está pronta para resolver suas dúvidas.