/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