Il y aura des moments où vous devrez augmenter la réactivité de votre serveur pour éviter les problèmes de mémoire insuffisante. Des problèmes de mémoire insuffisante se produisent lorsqu'une application en cours d'exécution sur votre serveur commence à consommer une grande quantité de mémoire. Le swap est conçu comme une mémoire virtuelle , qui utilise votre disque dur pour stocker des données qui ne peuvent pas être conservées dans la RAM. Ce tutoriel vous montrera comment créer un fichier d'échange, qui devrait fonctionner sous Ubuntu, CentOS et Debian. Ce didacticiel n'est pas destiné à une ISO personnalisée, mais il est possible de le suivre.
Étape 1: vérifiez que le swap n'existe pas
Pour éviter tout problème au cours de ce didacticiel, vous devrez exécuter ce qui suit pour vérifier qu'un espace d'échange n'est actuellement pas actif:
free -m
Après avoir exécuté cette commande, vous devriez voir quelque chose de similaire à cette sortie:
total              used       free     shared    buffers     cached
Mem:               1840       1614     226       15          36       1340
-/+ buffers/cache:            238      1602
Swap:              0          0        0
Si vous voyez une valeur de 0dans la Swapsection, vous pouvez passer à l'étape 2.
Vous pouvez également exécuter la commande suivante pour voir s'il existe un fichier d'échange configuré:
swapon -s
Si vous ne voyez aucune sortie de swapon, passez à l'étape 2.
Étape 2: créer un fichier d'échange
Vous devrez choisir un emplacement pour votre fichier. Dans ce tutoriel, il sera stocké à la racine du serveur. Nous allons créer un fichier d'échange de 2 Go en exécutant la commande suivante:
dd if=/dev/zero of=/swapfile count=2048 bs=1M
La ddcommande produira une sortie dans un format similaire à:
2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB) copied, 10.5356 s, 204 MB/s
Ensuite, vérifiez que le fichier se trouve à la racine de votre VPS Vultr en exécutant:
ls / | grep swapfile
Continuez si vous voyez le swapfilefichier.
Étape 3: activer le fichier d'échange
Les fichiers d'échange ne sont pas reconnus automatiquement. Nous devrons indiquer au serveur comment formater le fichier et l'activer afin qu'il puisse être utilisé comme fichier d'échange valide. Par mesure de sécurité, mettez à jour les autorisations du fichier d'échange pour autoriser uniquement R / W pour root et aucun autre utilisateur. Courir:
chmod 600 /swapfile
Le changement d'autorisation peut être vérifié en exécutant la commande suivante:
ls -lh /swapfile
Vous verrez un affichage de fichier:
-rw------- 1 root root 2.0G Oct  2 18:47 /swapfile
Ensuite, indiquez au serveur de configurer le fichier d'échange en exécutant:
mkswap /swapfile
Après l'avoir exécuté, vous verrez la sortie suivante:
Setting up swapspace version 1, size = 2097148 KiB
no label, UUID=ff3fc469-9c4b-4913-b653-ec53d6460d0e
Si tout est indiqué comme ci-dessus, vous êtes maintenant prêt à passer à l'étape suivante.
Étape 4: activer l'échange
Une fois que votre fichier est prêt à être utilisé comme échange, vous devez l'activer en exécutant:
swapon /swapfile
Vous pouvez vérifier que le fichier d'échange est actif en exécutant à freenouveau la commande.
free -m
total       used       free     shared    buffers     cached
Mem:          1840       1754         86         16         23       1519
-/+ buffers/cache:        210       1630
Swap:         2047          0       2047
Si Swapaffiche autre chose que 0, alors vous avez correctement configuré le swap.
Étape 5: Activer l'échange au redémarrage
Par défaut, votre serveur n'activera pas automatiquement ce nouveau fichier d'échange. Pour l'activer au démarrage, vous pouvez mettre à jour le /etc/fstabfichier. N'importe quel éditeur de texte suffira. Dans cet exemple, je vais utiliser nano.
nano /etc/fstab
Ajoutez la ligne suivante à la fin du fichier:
/swapfile   none    swap    sw    0   0
Enregistrez et fermez lorsque vous avez terminé de modifier le fichier. Nous avons tous terminé!