GNU/Linux >> Tutoriels Linux >  >> Linux

Comment puis-je créer une partition d'échange sur Amazon EC2 avec un stockage éphémère ?

/dev/xvdb est en effet monté, vous devez vérifier si quelque chose y est stocké que vous souhaitez conserver, bien que conserver des éléments importants sur un lecteur éphémère soit VRAIMENT une mauvaise idée.

Vous devrez démonter /dev/xvdb avant de faire quoi que ce soit avec.

Tant que vous pouvez

mkswap /dev/xvdb 

cela créera un espace d'échange de l'ensemble du lecteur éphémère, dont vous n'avez certainement pas besoin. De plus, si vous partitionnez votre swap, vous pouvez utiliser le reste du lecteur éphémère pour des éléments tels que le dossier tmp ou le stockage de sessions (si votre hôte est un serveur Web). Les drives éphémères sont très rapides, mais malheureusement peu persistants.

Quoi qu'il en soit, revenons aux partitions d'échange !

Mieux vaut soit sfdisk comme le mentionne Abhishek, soit créer manuellement une partition d'échange à l'aide de fdisk :

fdisk /dev/xvdb
Press N to create a new partition
P for primary
1 for the first partition
Press Enter to accept the first location
Enter +xG where x is the size of the swapspace you want. I typically use twice the amount of RAM, but this is not a hard and fast rule
Enter T to change the type
Enter 82 for Linux Swap
Enter W to write the changes
Enter q to quit

Vous pouvez maintenant créer votre espace d'échange avec

mkswap /dev/xvdb1

Et puis activez-le avec

swapon /dev/xvdb1

Un mot d'avertissement cependant, et je m'excuse si j'apprends à mamie à sucer des œufs. Mais comme son nom l'indique, un lecteur éphémère est... eh bien, éphémère. Si jamais vous arrêtez votre instance, vous devrez recréer votre partition de swap et l'activer. Pour cette raison, n'ajoutez pas votre espace d'échange nouvellement créé à votre fstab.

Le redémarrage devrait être bon cependant.


J'ai créé un script qui peut être utile pour créer un échange sur des appareils éphémères. Il utilise lvm pour créer le volume d'échange et crée également un volume qui pourrait être utile en tant que /tmp. Vous pouvez utiliser cloud-init pour le déclencher.

bootcmd:
 - [ cloud-init-per, once, mk-eph, /usr/local/sbin/mk-eph.sh]

# Filesystem setup
fs_setup:
 - label: 'tmp'
   filesystem: 'xfs'
   device: '/dev/ephemeral/tmp'
   partition: 'auto'

mounts:
 - [ /dev/ephemeral/tmp, /tmp, auto, "defaults,nobootwait" ]
 - [ ephemeral0, null ]

runcmd:
 - [ chmod, 1777, /tmp ]

Démontez d'abord votre stockage epermal et remontez comme ci-dessous

  umount /dev/xvdb # in case it is already mounted
  sfdisk /dev/xvdb << EOF
  ,1024,82
  ,
  ;
  ;
  EOF
  mkswap /dev/xvdb1 && swapon /dev/xvdb1
  mkfs.xfs -f /dev/xvdb2 && mount /dev/xvdb2 /mnt

Linux
  1. Comment surveiller l'espace disque libre sur Amazon EC2 avec Cloud Watch

  2. Comment créer une base de données dans MySQL avec MySQL Workbench

  3. Comment créer un swap sous Linux

  4. Comment créer et activer la partition d'échange sur Centos / RHEL 8

  5. Comment créer un fichier d'échange sous Linux

Comment créer des partitions sous Linux

Comment créer des partitions de disque avec Parted Command sous Linux

Comment créer une instance Amazon AWS EC2 à l'aide de Python Boto3

Comment créer et gérer des partitions de disque avec Fdisk sous Linux

Combien de sous-domaines puis-je créer avec WebHostFace ?

Comment créer un e-commerce avec Magento