Voltar ao blog

Adicionando Espaço Swap no Ubuntu 20.04: Um Tutorial

Adicionando Espaço Swap no Ubuntu 20.04: Um Tutorial

Adicionar espaço de swap ao seu servidor é uma excelente opção para compensar erros de falta de memória. Linux permite aos usuários adicionar espaço de swap em seu sistema quando a quantidade de RAM no sistema estiver cheia. Ao criar uma partição de espaço dedicada, você permitirá que sua memória física funcione sem problemas, sem se preocupar muito com a falta de espaço em disco.

Visão geral do Swap

O espaço de swap no Linux é uma parte da memória virtual de uma máquina usada quando a memória física fica sem espaço. Especialmente ao trabalhar com um programa ou aplicativo grande onde surge a necessidade de memória extra, o espaço de swap é uma escolha ideal para reter páginas de memória temporariamente inativas. A criação de um espaço de swap permite que os usuários armazenem dados quando programas grandes estão em execução e, assim, reduz as falhas de aplicativos. Isso significa que se o sistema precisar de mais recursos de memória e a RAM estiver cheia, todas as páginas inativas na memória são transferidas para o espaço de swap e os programas podem ser executados sem interrupção.

De quanto espaço de swap eu preciso?

A quantidade de espaço de swap depende de vários fatores. Estes incluem a RAM disponível, a carga imposta e se o sistema precisa suportar o recurso de hibernação (suspender para o disco). Consulte a tabela abaixo para verificar o espaço de swap recomendado com base no espaço disponível na RAM:

Espaço de RAM disponível

Espaço de swap recomendado

1.

1GB

1GB

2.

2GB

1GB

3.

3GB

2GB

4.

4GB

2GB

5.

5GB

2GB

6.

6GB

2GB

7.

8GB

3GB

Neste tutorial, vamos guiá-lo pelos passos para adicionar espaço de swap no Ubuntu 20.04. Vamos começar!

Pré-requisitos

Para acompanhar este tutorial, você precisará de:

Passo 1: Verificação das informações de swap

O tamanho do espaço de swap depende da RAM do sistema. Portanto, é essencial verificar a disponibilidade de espaço de swap em seu sistema antes de criar um. Digite o comando abaixo para verificar se o sistema possui algum swap configurado:

Swap Space image 1

Se uma saída for exibida, significa que há espaço disponível em seu sistema para criar espaço de swap. No entanto, a ausência de saída é um sinal que indica que não há espaço disponível suficiente para adicionar espaço de swap.

Use o utilitário free para verificar se não há swap ativo:

Você verá a saída como uma linha de swap nula:

Swap Space image 2

Passo 2: Verificação de disponibilidade de partição do disco rígido

Semelhante à verificação de disponibilidade do sistema, agora vamos verificar o uso atual do nosso disco para garantir que temos espaço suficiente. Use o comando df para verificar a disponibilidade da partição do disco rígido:

O dispositivo com / na coluna Mounted on é o nosso disco que está 11% livre. Você verá a saída:

Swap Space image 3

Depois de verificar os requisitos do sistema, vamos prosseguir e criar um arquivo de swap em nosso sistema de arquivos.

Step 3: Create a Swap File

Para criar um arquivo de swap em nosso sistema de arquivos, aloque um nome de arquivo como swapfile no diretório raiz (/) usando o programa fallocate. A alocação do tamanho do arquivo depende das suas necessidades. Para manter o tutorial simples e fácil de entender, estamos criando um arquivo de 1G e dedicando 1G de RAM. Use o comando sudo  para criar um arquivo de swap:

Em seguida, digite este comando para verificar o espaço reservado:

Você verá a saída:Swap Space image 3

Agora que criamos um espaço de swap em nosso sistema, vamos ativá-lo no próximo passo.

Passo 4: Ativar o arquivo de swap

Assim que tivermos o tamanho correto disponível, vamos convertê-lo em espaço de swap. Por razões de segurança, é crucial tornar nosso arquivo acessível apenas para usuários root e impedir o acesso de usuários normais. Adicionaremos restrições para que os usuários com privilégios root possam visualizar o arquivo e ler seu conteúdo. Use o seguinte comando root para tornar o arquivo acessível apenas a usuários root :

Em seguida, use o comando ls para verificar as alterações:

Como você pode ver, apenas o usuário root tem as permissões de leitura e escrita ativadas:

Swap Space image 4

Depois disso, marque o arquivo como espaço de swap:

Você verá a saída:

Swap Space image 5

Depois disso, ative o arquivo swap e permita que o nosso sistema comece a usá-lo:

Em seguida, verifique a disponibilidade do swap:

Você verá a saída:

Swap Space image 6

Como fizemos na Etapa 1, verificaremos o espaço do utilitário free mais uma vez:

Você verá a saída:

Swap Space image 7

Nosso swap foi configurado com sucesso e o nosso sistema operacional começará a usá-lo conforme necessário. Na próxima etapa, tornaremos o arquivo swap permanente.

Etapa 5: Tornar o Arquivo Swap Permanente

Por padrão, o servidor não reterá as configurações de swap automaticamente sempre que reiniciarmos. Para alterar as configurações padrão e garantir a segurança, adicionaremos o arquivo swap ao nosso /etc/fstab arquivo. Use o comando sudo para fazer backup do arquivo /etc/fstab:

Em seguida, adicione as informações do arquivo swap ao final do seu arquivo /etc/fstab digitando:

Depois disso, vamos revisar algumas configurações e fazer modificações para que possamos ajustar nosso espaço de swap.

Etapa 6: Modificação das Configurações de Swap

Nesta etapa, configuraremos as definições e faremos algumas modificações. Vamos’ ajustar a propriedade swappiness e alterar a pressão do cache.

  • Ajustar a Propriedade Swappiness

O parâmetro swappiness é um parâmetro ajustável do kernel. Ele altera o equilíbrio entre a troca de memória de tempo de execução (swapping) e contabiliza a troca de dados entre a RAM e o espaço de swap. Este valor paramétrico é expresso em porcentagem, variando de 0 a 100.

O valor vm.swappiness tem influência direta no comportamento do swappiness do sistema. Quanto maior for o vm.swappiness, mais o sistema fará swap e vice-versa. Se o valor estiver próximo de zero, o kernel não fará a troca de dados, o que pode levar a uma redução no desempenho. Permitir que seu sistema não dependa muito do swap é uma excelente maneira de melhorar seu desempenho e obter uma capacidade de resposta robusta.

Alternativamente, um vm.swappiness mais próximo de 100 tenta colocar mais dados no swap e menos na memória física. Ao contrário do valor de vm.swappiness baixo a medíocre, o alto swapping do sistema tem efeitos muito indesejáveis quando há grandes volumes de dados sendo trocados ativamente para dentro e para fora da RAM.

Verifique o valor atual de swappiness digitando:

Você’ verá a saída:

Swap Space image 8

Você também pode definir o swappiness de sua escolha usando o comando sysctl. Vamos definir o valor de swappiness para 15 digitando:

Você verá a saída:

output

Até que o sistema seja reiniciado, as configurações permanecerão como estão. Adicione a linha ao nosso arquivo /etc/sysctl.conf para definir o valor automaticamente na reinicialização:

Você pode adicionar o seguinte código na parte inferior:

code

Em seguida, salve e feche o arquivo.

  • Ajustar a Pressão do Cache

Em seguida, vamos modificar vfs_cache_pressure que cuidará das informações de inode e dentry em detrimento de outros dados. Essas configurações de vfs_cache_pressure settings também controlam a tendência do kernel de recuperar a memória usada para cache do diretório. Navegue pelo sistema de arquivos proc novamente para verificar o valor atual:

Você verá a saída:

output 2

Como a configuração já está feita, nosso sistema eliminará as informações de inode do cache. Vamos’ definir o sysctl vm.vfs_cache_pressure para uma configuração mais estável como esta:

Você verá a saída:

Swap Space image 9

Semelhante ao que fizemos na nossa configuração de swappiness, podemos alterar a configuração aqui também:

Na parte inferior, insira uma linha indicando o novo valor que você criou:

Swap Space image 10

Por fim, salve e feche o arquivo.

Conclusão

Você pode adicionar espaço swap como uma partição swap dedicada, um arquivo swap ou uma combinação de ambos. Você pode criar espaço swap e aproveitar seus benefícios para executar aplicativos de forma contínua, sem se preocupar muito com avisos de falta de memória. Embora a criação de espaço swap seja uma vantagem adicional em sistemas com espaço de memória limitado, ela não deve ser tratada como uma alternativa para mais espaço de RAM. Lembre-se de que o espaço swap está localizado em um disco rígido, portanto, você pode experimentar um tempo de acesso ligeiramente mais lento em comparação com a memória física.

Aqui estão mais tutoriais no nosso blog que ajudarão você a começar com seus servidores Ubuntu:

Boa computação!

author

Hark Labs

Autor · CloudSigma

Preslav Dobrev é um designer criativo na CloudSigma, focado na construção de uma identidade empresarial consistente por meio de canais de marketing tradicionais e inovadores. Ele é hábil em combinar a visão artística com o marketing estratégico para criar narrativas de marca impactantes.

Comentários

Nenhum comentário ainda. Seja o primeiro.