324 votes

Comment voulez-vous ajouter swap à une instance EC2?

Je suis actuellement en cours d'exécution ec2 instance micro et j'ai trouvé que l'instance parfois à court de mémoire.

Autres que d'utiliser une plus grande taille de l'instance, que peut-on faire?

613voto

ajtrichards Points 6389

Un correctif pour résoudre ce problème est d'ajouter swap ou paging de l'espace à l'instance.

La pagination fonctionne par la création d'un espace sur votre disque dur et de les utiliser pour la mémoire supplémentaire, cette mémoire est beaucoup plus lent que la normale de la mémoire, cependant c'est beaucoup plus disponible.

Pour ajouter cet espace supplémentaire à votre exemple, vous tapez:

sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
sudo /sbin/mkswap /var/swap.1
sudo /sbin/swapon /var/swap.1

Si vous avez besoin de plus de 1024 puis changement à quelque chose de supérieur.

Pour l'activer par défaut après le redémarrage, ajoutez cette ligne à /etc/fstab:

/var/swap.1 swap swap defaults 0 0

228voto

David Points 471

Swap devrait prendre place sur le Stockage d'Instance (éphémère) disque et non pas un EBS appareil. La permutation va causer beaucoup de IO et augmentera le coût de l'EBS. EBS est aussi plus lent que le stockage d'Instance et le stockage d'Instance est livré gratuitement avec l'Instance EC2.

Il sera généralement monté sur /mnt mais si pas exécuter

sudo mount /dev/xvda2 /mnt

Pour ensuite créer un fichier d'échange sur cet appareil, effectuez les opérations suivantes pour un 4 GO fichier d'échange

sudo dd if=/dev/zero of=/mnt/swapfile bs=1M count=4096

Assurez-vous qu'aucun autre utilisateur ne peut afficher le fichier d'échange

sudo chown root:root /mnt/swapfile
sudo chmod 600 /mnt/swapfile

Faire et marquer comme swap

sudo mkswap /mnt/swapfile
sudo swapon /mnt/swapfile

Ajouter/assurez-vous que les éléments suivants figurent dans votre /etc/fstab

/dev/xvda2      /mnt    auto    defaults,nobootwait,comment=cloudconfig 0   2
/mnt/swapfile swap swap defaults 0 0

enfin activer le swap

sudo swapon -a

43voto

HimalayanCoder Points 940

Après l'application des mesures mentionnées par ajtrichards vous pouvez vérifier si votre amazon niveau gratuit exemple est l'utilisation de swap en utilisant cette commande

cat /proc/meminfo

résultat:

ubuntu@ip-172-31-24-245:/$ cat /proc/meminfo
MemTotal:         604340 kB
MemFree:            8524 kB
Buffers:            3380 kB
Cached:           398316 kB
SwapCached:            0 kB
Active:           165476 kB
Inactive:         384556 kB
Active(anon):     141344 kB
Inactive(anon):     7248 kB
Active(file):      24132 kB
Inactive(file):   377308 kB
Unevictable:           0 kB
Mlocked:               0 kB

SwapTotal: 1048572 ko

SwapFree: 1048572 ko

Dirty:                 0 kB
Writeback:             0 kB
AnonPages:        148368 kB
Mapped:            14304 kB
Shmem:               256 kB
Slab:              26392 kB
SReclaimable:      18648 kB
SUnreclaim:         7744 kB
KernelStack:         736 kB
PageTables:         5060 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     1350740 kB
Committed_AS:     623908 kB
VmallocTotal:   34359738367 kB
VmallocUsed:        7420 kB
VmallocChunk:   34359728748 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:      637952 kB
DirectMap2M:           0 kB

43voto

David Levesque Points 9189

Vous pouvez ajouter un 1 GO de swap à votre instance avec ces commandes:

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

Pour l'activer par défaut après le redémarrage, ajoutez cette ligne à l' /etc/fstab:

/swapfile swap swap defaults 0 0

9voto

minhas23 Points 365

Vous pouvez créer de l'espace de swap en utilisant les étapes suivantes Ici, nous créons swap /home/

1) dd if=/dev/zero of=/home/swapfile1 bs=1024 count=8388608 Ici le comte est kilo-octet compter de l'espace de swap

2) mkswap /home/swapfile1

3) vi /etc/fstab faire de l'entrée : /home/swapfile1 swap swap defaults 0 0

4) exécuter: swapon -a

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X