Jak uzyskać dostęp do dołączonego woluminu w Amazon EC2

34

Właśnie dołączyłem kolejny wolumin ebs do działającej instancji. Ale jak uzyskać dostęp do woluminu? /dev/sdaNigdzie nie mogę znaleźć katalogu. Gdzie powinienem szukać

Maca
źródło

Odpowiedzi:

40

Dołączając wolumin EBS, określasz urządzenie, które ma zostać podłączone jako. W Linuksie urządzenia te są /dev/xvd*- i są z nimi powiązane/dev/sd*

W konsoli AWS możesz zobaczyć swoje woluminy EBS, do jakich instancji są one podłączone, a urządzenia, do których każdy wolumin jest dołączony jako:

Konsola AWS

To samo możesz osiągnąć za pomocą narzędzi CLI. Ustaw niezbędne zmienne środowiskowe:

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

Uruchom polecenie dla bieżącej instancji (w przeciwnym razie po prostu podaj identyfikator instancji):

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

Warto zauważyć, że w obu powyższych przypadkach - CLI i AWS Console - urządzenia są opisane jako podłączone w /dev/sd*- tak jednak nie jest.

Spójrz na zawartość / 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

Urządzenia są w rzeczywistości /dev/xvd*- a /dev/sd*ścieżki są dowiązaniami symbolicznymi.

Innym podejściem do sprawdzania obecnie dostępnych urządzeń jest użycie fdisk -llub prostszego wyjścia:

cat /proc/partitions
major minor  #blocks  name

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

Jeśli musisz ustalić, które urządzenia zostały zamontowane, użyj mounti df- i zaznacz, /etc/fstababy zmienić opcje montażu.

cyberx86
źródło
1
Uratowałem mój tyłek. Naprawdę muszą zaktualizować te dokumenty.
MBHNYC,
9
FWIW, w najnowszych wydaniach zwirtualizowanych instancji Ubuntu Xen, urządzenia xvd * nie są dowiązane symbolicznie do sd *
cbare
1
@cbare Czy możesz to potwierdzić? Kiedy wchodzę na konsolę, widzę, że jest to wolumin 15 gig dołączony jako / dev / sda1. Ale kiedy wchodzę na mój serwer, jedyne co widzę to / dev / xvda1. W ogóle nie ma / dev / sd *! Pokazano również, że / dev / xvda1 to 32 koncerty zużyte 25 koncertów. Czy mogę mieć pewność, że te 2 to te same tomy?
CMCDragonkai
@CMCDragonkai, Nie jestem pewien, dlaczego mielibyście widzieć różne rozmiary, ale urządzenia xvd_ (chyba Xen Virtual Device) są mapowane przez warstwę wirtualizacji na równorzędne urządzenie sd_. Zobacz: askubuntu.com/questions/166083/what-is-the-dev-xvda1-device
cbare
4
Dlaczego na moim serwerze dowiązanie symboliczne nie istnieje? Czy mogę utworzyć własne dowiązanie symboliczne, aby upewnić się, że sda1 prowadzi do xvda1? Interfejs EC2 mówi sda1, ale faktycznym urządzeniem jest xvda1, ale obecnie nie ma dowiązania symbolicznego.
CMCDragonkai
6

Aby użyć woluminu EBS podłączonego do EC2, musisz najpierw zamontować wolumin.

  1. Połącz się z instancją za pomocą SSH.
  2. Użyj polecenia lsblk, aby wyświetlić dostępne urządzenia dyskowe i ich punkty montowania.

[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. utwórz system plików na woluminie, przykład -> sudo mkfs -t ext4 / dev / xvdf
  2. utwórz bezpośredni punkt montowania dla woluminu -> sudo mkdir mount_point
  3. Aby zamontować ten wolumin EBS w właśnie utworzonym miejscu -> sudo mount / dev / xvdf mount_point
  4. Aby to sprawdzić, możesz wykonać ls mount_point

    https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-using-volumes.html
Renato Coutinho
źródło
To działa i jest o wiele łatwiejsze
użytkownik159972
To powinna być zaakceptowana odpowiedź
oneirois