Używanie portalu do dołączania dysku danych do maszyny wirtualnej z systemem Linux

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 Azure Portal. Dysk danych można również dołączyć do maszyny wirtualnej z systemem Windows w Azure Portal.

Przed dołączeniem dysków do maszyny wirtualnej zapoznaj się z następującymi wskazówkami:

Znajdowanie maszyny wirtualnej

  1. Przejdź do Azure Portal, aby znaleźć maszynę wirtualną. Wyszukaj i wybierz pozycję Maszyny wirtualne.
  2. Wybierz maszynę wirtualną z listy.
  3. Na stronie Maszyny wirtualne w obszarze Ustawienia wybierz pozycję Dyski.

Dołączanie nowego dysku

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

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

    Przejrzyj ustawienia dysku.

  3. Gdy wszystko będzie gotowe, wybierz pozycję Zapisz w górnej części strony, aby utworzyć dysk zarządzany i zaktualizować konfigurację maszyny wirtualnej.

Dołączanie istniejącego dysku

  1. W okienku Dyski w obszarze Dyski danych 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 jej używać, na maszynie wirtualnej za pomocą protokołu SSH. 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

Wyszukiwanie dysku

Po nawiązaniu połączenia z maszyną wirtualną musisz znaleźć dysk. W tym przykładzie używamy lsblk polecenia , aby wyświetlić listę dysków.

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 dysk, który został dodany, to sdc. Jest to jednostka LUN 0 i ma 4 GB.

Bardziej złożonym przykładem jest to, jak wygląda wiele dysków danych w portalu:

Zrzut ekranu przedstawiający wiele dysków widocznych w portalu.

Na obrazie widać, że istnieją 3 dyski danych: 4 GB na numerze LUN 0, 16 GB w numerze LUN 1 i 32G w numerze LUN 2.

Oto, jak może to wyglądać przy użyciu polecenia lsblk:

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

Z danych wyjściowych lsblk widać, że dysk 4 GB w numerze LUN 0 to sdc, dysk 16 GB w numerze LUN 1 to sdd, a dysk 32G o numerze LUN 2 to sde.

Przygotowywanie nowego pustego dysku

Ważne

Jeśli używasz istniejącego dysku zawierającego dane, przejdź do instalowania dysku. Poniższe instrukcje spowodują usunięcie danych na dysku.

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

Narzędzie parted może służyć do partycjonowania i formatowania dysku danych.

  • Użyj najnowszej wersji parted dostępnej dla twojej dystrybucji.
  • Jeśli rozmiar dysku to 2 tebibajty (TiB) lub większy, należy użyć partycjonowania GPT. Jeśli rozmiar dysku jest poniżej 2 TiB, można użyć partycjonowania MBR lub GPT.

W poniższym przykładzie użyto polecenia parted w systemie /dev/sdc, który jest miejscem, w którym pierwszy dysk danych będzie zwykle znajdować się na większości maszyn wirtualnych. Zastąp sdc wartość poprawną opcją dla dysku. Formatujemy go również przy użyciu systemu plików XFS .

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

partprobe Użyj narzędzia , aby upewnić się, że jądro zna nową partycję i system plików. Nie można użyć partprobe polecenia blkid lub lslbk, aby nie zwracać identyfikatora UUID dla nowego systemu plików natychmiast.

Instalowanie dysku

Utwórz katalog, aby zainstalować system plików przy użyciu polecenia mkdir. Poniższy przykład tworzy katalog w lokalizacji /datadrive:

sudo mkdir /datadrive

Użyj mount polecenia , aby zainstalować system plików. Poniższy przykład instaluje partycję /dev/sdc1 do /datadrive punktu instalacji:

sudo mount /dev/sdc1 /datadrive

Aby upewnić się, że dysk jest ponownie instalowany automatycznie po ponownym uruchomieniu, należy go dodać do pliku /etc/fstab . Zdecydowanie zaleca się również, aby identyfikator UUID (unikatowy identyfikator uniwersalny) był używany w /etc/fstab w celu odwoływania się do dysku, a nie tylko nazwy urządzenia (np. /dev/sdc1). 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ń. Identyfikator UUID nowego dysku możesz znaleźć za pomocą narzędzia blkid:

sudo blkid

Dane wyjściowe wyglądają podobnie do następującego przykładu:

/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" 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"

Uwaga

Niewłaściwa edycja pliku /etc/fstab może spowodować niebootable systemu. Jeśli nie masz pewności, jak to zrobić, sprawdź informacje na temat prawidłowego edytowania tego pliku w dokumentacji dystrybucji. Przed rozpoczęciem edycji 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 /dev/sdc1 UUID urządzenia utworzonego w poprzednich krokach oraz punktu instalacji ./datadrive Korzystając z przykładu z tego artykułu, nowy wiersz będzie wyglądać następująco:

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

Po zakończeniu edytowania pliku zapisz i zamknij edytor.

Uwaga

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 rozruchu nie można zainstalować 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 dysku

Teraz możesz ponownie użyć lsblk polecenia , aby wyświetlić dysk i punkt instalacji.

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

Dane wyjściowe będą przypominać następujące:

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

Widać, że sdc jest teraz zainstalowany w lokalizacji /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 głównie 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 zużytego magazynu, na przykład dysków niezarządzanych w warstwie Standardowa i migawek dysków.

Istnieją dwa sposoby włączania obsługi funkcji TRIM na maszynie wirtualnej z systemem Linux. Jak zwykle zapoznaj się z rozkładem zalecanym podejściem:

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

    UUID=33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e   /datadrive   xfs   defaults,discard   1   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:

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

Następne kroki

Aby uzyskać więcej informacji i pomóc w rozwiązywaniu problemów z dyskiem, zobacz Rozwiązywanie problemów ze zmianami nazwy urządzenia maszyny wirtualnej z systemem Linux.

Dysk danych można również dołączyć przy użyciu interfejsu wiersza polecenia platformy Azure.