Question Comment accéder au volume attaché dans Amazon EC2


Je viens de joindre un autre volume ebs à l'instance en cours d'exécution. Mais comment accéder au volume? Je ne trouve pas le /dev/sda répertoire n'importe où. Où devrais-je regarder?


33
2018-03-02 09:55


origine




Réponses:


Lorsque vous attachez un volume EBS, vous spécifiez le périphérique en tant que tel. Sous Linux, ces périphériques sont /dev/xvd* - et sont symlinked to /dev/sd*

Dans la console AWS, vous pouvez voir vos volumes EBS, les instances auxquelles ils sont connectés et le périphérique auquel chaque volume est connecté en tant que:

AWS Console

Vous pouvez réaliser la même chose à partir des outils de la CLI. Définissez les variables d'environnement nécessaires:

export EC2_PRIVATE_KEY=/root/pk-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.pem 
export EC2_CERT=/root/cert-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.pem

Exécutez la commande sur votre instance actuelle (sinon, spécifiez simplement l'instance-id):

ec2-describe-instances `curl -s http://169.254.169.254/latest/meta-data/instance-id` | grep BLOCKDEVICE

BLOCKDEVICE     /dev/sda1       vol-xxxxxxxx    2011-11-13T21:09:53.000Z
BLOCKDEVICE     /dev/sdf        vol-xxxxxxxx    2011-11-13T21:09:53.000Z
BLOCKDEVICE     /dev/sdg        vol-xxxxxxxx    2011-11-13T21:09:53.000Z

Il est à noter que dans les deux cas ci-dessus - CLI et AWS Console - les périphériques sont décrits comme étant connectés à /dev/sd* - ce n'est pas réellement le cas, cependant.

Regardez le contenu de / dev:

ls -l /dev/sd* /dev/xv*
lrwxrwxrwx 1 root root       5 Dec 12 18:32 /dev/sda1 -> xvda1
lrwxrwxrwx 1 root root       4 Dec 12 18:32 /dev/sdf -> xvdf
lrwxrwxrwx 1 root root       4 Dec 12 18:32 /dev/sdg -> xvdg
brw-rw---- 1 root disk 202,  1 Dec 12 18:32 /dev/xvda1
brw-rw---- 1 root disk 202, 80 Dec 12 18:32 /dev/xvdf
brw-rw---- 1 root disk 202, 96 Dec 12 18:32 /dev/xvdg

Les appareils sont réellement /dev/xvd* - et le /dev/sd* les chemins sont des liens symboliques.

Une autre approche pour vérifier les périphériques actuellement disponibles consiste à utiliser fdisk -l, ou pour une sortie plus simple:

cat /proc/partitions
major minor  #blocks  name

 202        1    4194304 xvda1
 202       80    6291456 xvdf
 202       96    1048576 xvdg

Si vous devez déterminer quels périphériques ont été montés, utilisez mount et df - et vérifie /etc/fstab pour changer les options de montage.


37
2018-03-02 21:39



Sauvé mes fesses. Ils ont vraiment besoin de mettre à jour ces documents. - MBHNYC
FWIW, dans les versions récentes d'instances Ubuntu Xen virtualisées, les périphériques xvd * ne sont pas liés symboliquement avec sd * - cbare
@cbare Pouvez-vous confirmer. Quand je vais dans ma console, je vois un volume de 15 Go associé à / dev / sda1. Mais quand je vais dans mon serveur, la seule chose que je vois est / dev / xvda1. Il n'y a pas de / dev / sd * du tout! Aussi / dev / xvda1 est montré à 32 concerts avec 25 concerts utilisés. Puis-je être certain que ces 2 volumes sont les mêmes? - CMCDragonkai
@CMCDragonkai, Vous ne savez pas pourquoi vous voyez des tailles différentes, mais les périphériques xvd_ (Xen Virtual Device, je suppose) sont mappés via la couche de virtualisation vers le périphérique sd_ nommé de manière équivalente. Voir: askubuntu.com/questions/166083/what-is-the-dev-xvda1-device - cbare
Comment se fait-il que mon lien n'existe pas sur mon serveur? Pourrais-je créer mon propre lien symbolique pour m'assurer que sda1 est lié à xvda1? L'interface EC2 dit sda1, mais le périphérique réel est xvda1, mais sans lien symbolique pour le moment. - CMCDragonkai


Pour utiliser un volume EBS connecté à l'EC2, vous devez d'abord monter le volume.

  1. Connectez-vous à votre instance à l'aide de SSH.
  2. Utilisez le lsblk commande pour afficher vos disques disponibles et leurs points de montage.

[ec2-user@ip-172-31-86-46 ~]$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 8G 0 disk
└─xvda1 202:1 0 8G 0 part /
xvdb 202:16 0 8G 0 disk
xvdf 202:80 0 100G 0 disk

  1. créer un système de fichiers sur le volume, exemple -> sudo mkfs -t ext4 / dev / xvdf
  2. créer un point de montage direct pour le volume ->sudo mkdir mount_point
  3. Pour monter ce volume EBS à l’emplacement que vous venez de créer -> sudo mount / dev / xvdf mount_point
  4. Pour vérifier vous pouvez effectuer ls mount_point

    https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-using-volumes.html

2
2017-07-18 20:52