Dołączanie dysku danych do maszyny wirtualnej z systemem Linux przy użyciu portalu

Dotyczy: ✔️ Maszyny wirtualne z systemem Linux — elastyczne zestawy skalowania ✔️

W tym artykule przedstawiono sposób dołączania zarówno nowych, jak i istniejących dysków do maszyny wirtualnej z systemem Linux za pośrednictwem witryny Azure Portal. Dysk danych można również dołączyć do maszyny wirtualnej z systemem Windows w witrynie Azure Portal.

Znajdowanie maszyny wirtualnej z systemem Linux w portalu Azure

Wykonaj te kroki:

  1. Przejdź do witryny Azure Portal , aby znaleźć maszynę wirtualną. Wyszukaj i wybierz maszyny wirtualne.

  2. Wybierz maszynę wirtualną, do której chcesz dołączyć dysk z listy.

  3. Na stronie Maszyny wirtualne w obszarze Ustawienia wybierz pozycję Dyski.

Dołączanie nowego dysku danych zarządzanych w portalu Azure

Wykonaj te kroki:

  1. W okienku Dyski w obszarze Dyski wybierz pozycję Utwórz i dołącz nowy dysk.

  2. Wprowadź nazwę dysku zarządzanego. Przejrzyj ustawienia domyślne, a następnie w razie potrzeby zaktualizuj typ magazynu, rozmiar (GiB), szyfrowanie i buforowanie hosta.

    Zrzut ekranu przedstawiający okienko dyski danych portalu Azure z numerem LUN, nazwą dysku, typem magazynu, rozmiarem, szyfrowaniem i ustawieniami buforowania hosta dla nowego dysku zarządzanego.

  3. Po zakończeniu wybierz pozycję Zapisz w górnej części strony, aby utworzyć dysk zarządzany i zaktualizować konfigurację maszyny wirtualnej.

Dołączanie istniejącego dysku danych zarządzanych w portalu Azure

Wykonaj te kroki:

  1. W okienku Dyski w obszarze Dyski wybierz pozycję Dołącz istniejące dyski.

  2. Wybierz menu rozwijane nazwa dysku i wybierz dysk z listy dostępnych dysków zarządzanych.

  3. Wybierz pozycję Zapisz , aby dołączyć istniejący dysk zarządzany i zaktualizować konfigurację maszyny wirtualnej.

Nawiązywanie połączenia z maszyną wirtualną z systemem Linux w celu zainstalowania nowego dysku

Aby podzielić na partycje, sformatować i zainstalować nowy dysk, aby maszyna wirtualna z systemem Linux mogła z niego korzystać, użyj protokołu SSH na maszynie wirtualnej. Aby uzyskać więcej informacji, zobacz temat dotyczący korzystania z protokołu SSH systemu Linux na platformie Azure. Poniższy przykład łączy się z maszyną wirtualną z publicznym adresem IP 10.123.123.25 z nazwą użytkownika azureuser:

ssh azureuser@10.123.123.25

Znajdowanie dołączonego dysku danych w systemie Linux

Azure maszyny wirtualne z systemem Linux mogą uwidaczniać dyski zarządzane za pomocą kontrolerów SCSI lub NVMe. Wybierz typ kontrolera używany przez maszynę wirtualną. Aby uzyskać szczegółowe informacje na temat typów kontrolerów, zobacz Konwersja SCSI na NVMe.

Służy lsblk do wyświetlania listy dysków na maszynie wirtualnej z kontrolerem SCSI:

lsblk -o NAME,HCTL,SIZE,MOUNTPOINT | grep -i "sd"

Dane wyjściowe są podobne do poniższego przykładu:

sda     0:0:0:0      30G
├─sda1             29.9G /
├─sda14               4M
└─sda15             106M /boot/efi
sdb     1:0:1:0      14G
└─sdb1               14G /mnt
sdc     3:0:0:0       4G

W tym przykładzie dodany dysk to sdc. Używa jednostki LUN 0 i ma pojemność 4 GiB.

Bardziej złożony przykład: tak wygląda wiele dysków danych w portalu:

Zrzut ekranu przedstawiający trzy dyski danych zarządzanych Azure: dysk SSD 4-GiB Premium o numerze LUN 0, 16-GiB Premium SSD w numerze LUN 1 oraz 32-GiB Standard HDD w numerze LUN 2.

Na ilustracji widać trzy dyski danych: 4 GiB na LUN 0, 16 GiB na LUN 1 i 32 GiB na LUN 2.

W danych wyjściowych programu lsblk widać, że dysk 4-GiB pod numerem LUN 0 to sdc, dysk 16-GiB pod numerem LUN 1 to sdd, a dysk 32-GiB pod numerem LUN 2 to sde.

sda     0:0:0:0      30G
├─sda1             29.9G /
├─sda14               4M
└─sda15             106M /boot/efi
sdb     1:0:1:0      14G
└─sdb1               14G /mnt
sdc     3:0:0:0       4G
sdd     3:0:0:1      16G
sde     3:0:0:2      32G

Przygotowywanie nowego pustego dysku danych w systemie Linux

Important

Jeśli używasz istniejącego dysku zawierającego dane, przejdź do instalowania dysku. Poniższe instrukcje usuwają dane na dysku. Przed sformatowanie dysku sprawdź, czy zidentyfikowano prawidłowy dysk.

Jeśli dołączasz nowy dysk, musisz podzielić dysk na partycje.

parted Użyj narzędzia do partycjonowania dysku danych i mkfs.xfs formatowania partycji za pomocą systemu plików XFS.

  • Użyj najnowszej wersji parted, która jest dostępna dla Twojej dystrybucji.
  • Jeśli rozmiar dysku to 2 tebibajty (TiB) lub większy, należy użyć partycjonowania GPT. Jeśli rozmiar dysku wynosi poniżej 2 TiB, możesz użyć partycjonowania MBR lub GPT.

W poniższym przykładzie użyto parted na /dev/sdc, gdzie zwykle znajduje się pierwszy dysk danych na większości maszyn wirtualnych. Zastąp sdc poprawną opcją dla twojego dysku. Przykład formatuje partycję przy użyciu systemu plików XFS .

sudo parted /dev/sdc --script mklabel gpt mkpart xfspart xfs 0% 100%
sudo partprobe /dev/sdc
sudo mkfs.xfs /dev/sdc1

partprobe Użyj narzędzia , aby upewnić się, że jądro rozpoznaje nową tabelę partycji. Jeśli nie użyjesz partprobe, polecenia blkid lub lsblk mogą nie zwrócić od razu identyfikatora UUID nowego systemu plików.

Instalowanie dysku danych w systemie Linux

Utwórz katalog, aby zainstalować system plików przy użyciu polecenia mkdir:

sudo mkdir /datadrive

Użyj polecenia mount , aby zainstalować system plików.

Zastąp /dev/sdc1 element partycją dysku danych zidentyfikowanego na maszynie wirtualnej kontrolerem SCSI.

sudo mount /dev/sdc1 /datadrive

Dodaj dysk do pliku /etc/fstab , aby upewnić się, że dysk zostanie automatycznie dodany po ponownym uruchomieniu.

Upewnij się, że identyfikator UUID (uniwersalny unikatowy identyfikator) jest używany w /etc/fstab , aby odwoływać się do dysku, a nie nazwy urządzenia, takiego jak /dev/sdc1 lub /dev/nvme0n2p1. Jeśli system operacyjny wykryje błąd dysku podczas rozruchu, w przypadku używania identyfikatora UUID w danej lokalizacji nie zostanie zainstalowany nieprawidłowy dysk. Do pozostałych dysków danych zostałyby w takiej sytuacji przypisane te same identyfikatory urządzeń. Aby znaleźć identyfikator UUID nowego dysku, użyj blkid narzędzia .

sudo blkid

Następujące dane wyjściowe pochodzą z maszyny wirtualnej z kontrolerem SCSI. Na maszynie wirtualnej z kontrolerem NVMe partycja dysku danych zarządzanych jest wyświetlana jako ścieżka NVMe, taka jak /dev/nvme0n2p1 zamiast /dev/sdc1.

/dev/sda1: LABEL="cloudimg-rootfs" UUID="11111111-1b1b-1c1c-1d1d-1e1e1e1e1e1e" TYPE="ext4" PARTUUID="1a1b1c1d-11aa-1234-1a1a1a1a1a1a"
/dev/sda15: LABEL="UEFI" UUID="BCD7-96A6" TYPE="vfat" PARTUUID="1e1g1cg1h-11aa-1234-1u1u1a1a1u1u"
/dev/sdb1: UUID="22222222-2b2b-2c2c-2d2d-2e2e2e2e2e2e" TYPE="ext4" PARTUUID="1a2b3c4d-01"
/dev/sda14: PARTUUID="2e2g2cg2h-11aa-1234-1u1u1a1a1u1u"
/dev/sdc1: UUID="33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e" TYPE="xfs" PARTLABEL="xfspart" PARTUUID="c1c2c3c4-1234-cdef-asdf3456ghjk"

Konfigurowanie automatycznego instalowania w /etc/fstab

Note

Nieprawidłowa edycja pliku /etc/fstab może spowodować, że system będzie niemożliwy do uruchomienia. Jeśli nie masz pewności, jak to zrobić, sprawdź informacje na temat prawidłowego edytowania tego pliku w dokumentacji dystrybucji. Przed edycją należy utworzyć kopię zapasową pliku /etc/fstab .

Następnie otwórz plik /etc/fstab w edytorze tekstów. Dodaj wiersz na końcu pliku przy użyciu wartości UUID partycji utworzonej w poprzednich krokach oraz punktu instalacji ./datadrive Jeśli użyto przykładu z tego artykułu, nowy wiersz będzie wyglądać podobnie do poniższego przykładu.

UUID=33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e   /datadrive   xfs   defaults,nofail   1   2

Po zakończeniu edytowania pliku zapisz i zamknij edytor.

Note

Później usunięcie dysku danych bez edytowania fstab może spowodować niepowodzenie rozruchu maszyny wirtualnej. Większość dystrybucji zapewnia opcje nofail i/lub nobootwait fstab. Te opcje umożliwiają rozruch systemu nawet wtedy, gdy podczas uruchamiania nie można zamontować dysku. Aby uzyskać więcej informacji na temat tych parametrów, zapoznaj się z dokumentacją dystrybucji.

Opcja nofail gwarantuje, że maszyna wirtualna zostanie uruchomiona, nawet jeśli system plików jest uszkodzony lub dysk nie istnieje w czasie rozruchu. Bez tej opcji można napotkać zachowanie zgodnie z opisem w temacie Nie można nawiązać połączenia SSH z maszyną wirtualną z systemem Linux z powodu błędów FSTAB

Weryfikowanie zainstalowanego dysku danych w systemie Linux

Ponownie użyj lsblk polecenia , aby sprawdzić, czy dysk danych jest zainstalowany pod adresem /datadrive.

lsblk -o NAME,HCTL,SIZE,MOUNTPOINT | grep -i "sd"
sda     0:0:0:0      30G
├─sda1             29.9G /
├─sda14               4M
└─sda15             106M /boot/efi
sdb     1:0:1:0      14G
└─sdb1               14G /mnt
sdc     3:0:0:0       4G
└─sdc1                4G /datadrive

Obsługa funkcji TRIM/UNMAP dla systemu Linux na platformie Azure

Niektóre jądra systemu Linux obsługują operacje TRIM/UNMAP w celu odrzucenia nieużywanych bloków na dysku. Ta funkcja jest przydatna przede wszystkim do informowania platformy Azure o tym, że usunięte strony nie są już prawidłowe i można je odrzucić. Ta funkcja może zaoszczędzić pieniądze na dyskach, które są rozliczane na podstawie ilości wykorzystanej przestrzeni dyskowej, takich jak niezarządzane dyski standardowe i migawki dysków.

Istnieją dwa sposoby, aby włączyć obsługę TRIM na maszynie wirtualnej z systemem Linux. Jak zwykle, skonsultuj się ze swoją dystrybucją, aby uzyskać zalecany sposób postępowania.

  1. discard Użyj opcji instalacji w pliku /etc/fstab, na przykład:

    UUID=33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e   /datadrive   xfs   defaults,discard   1   2
    
  2. W niektórych przypadkach discard opcja może mieć wpływ na wydajność. Alternatywnie możesz uruchomić fstrim polecenie ręcznie z poziomu wiersza polecenia lub dodać je do narzędzia crontab w celu regularnego uruchamiania:

    Ubuntu

    sudo apt-get install util-linux
    sudo fstrim /datadrive
    

    RHEL

    sudo yum install util-linux
    sudo fstrim /datadrive
    

    SUSE

    sudo zypper install util-linux
    sudo fstrim /datadrive