Como adicionar Swap numa instância EC2 micro do Amazon AWS

As instâncias (máquinas, servidores, como você quiser chamar) micro do Amazon AWS EC2 vem com 613MB de memória, o que é suficiente pra bastante coisa, porém em algumas situações você pode chegar rapidamente a este limite. Um característica dessa máquina é que ela não vem com uma partição de memória swap alocada, como é comum no Linux, então vou explicar aqui como ativar e usar swap numa emergência.

AWS Logo

Antes de tudo é bom falar que isso provavelmente não é recomendado, se você estiver utilizando toda a memória disponível é melhor mudar para uma máquina melhor, pois utilizar swap significa que você vai usar o disco como memória, o que é extremamente lento e provavelmente por isso que vem desabilitado por padrão.

Você já foi avisado, então vamos lá, use todos os comandos abaixo como usuário root ou usando o sudo:

Use o seguinte comando para criar um arquivo que vamos usar como swap, aqui coloquei o tamanho de 1GB:

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

Agora vamos transformar esse arquivo em swap:

mkswap /swapfile

E agora o comando para ativar o swap:

swapon /swapfile

Simples não? Agora caso você queira faze esta mudança ser permanente é bom fazer com que essa “partição” swap seja ativada sempre durante o boot, como fazer:

Abrir o arquivo de configuração de partições:

vim /etc/fstab

Adicionar esta linha no final do arquivo e salvar:

/swapfile swap swap defaults 0 0

Pronto, para testar se está tudo certo use o free:

free -m

No seu resultado deve existir uma linhar parecida com essa:

Swap:         2047          0       2047

Lembre-se de que isso não é uma solução para seu problema de falta de memória, eu mesmo só usei para fins de teste ao instalar um programa que exigia swap mesmo sem precisar.

Qualquer dúvida coloque nos comentários.