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:
- Rozmiar maszyny wirtualnej określa liczbę dysków danych, które można dołączyć. Aby uzyskać szczegółowe informacje, zobacz Rozmiary maszyn wirtualnych.
- Dyski dołączone do maszyn wirtualnych to pliki vhd przechowywane na platformie Azure. Aby uzyskać szczegółowe informacje, zobacz wprowadzenie do dysków zarządzanych.
- Po dołączeniu dysku należy nawiązać połączenie z maszyną wirtualną z systemem Linux, aby zainstalować nowy dysk.
Znajdowanie maszyny wirtualnej
- Przejdź do Azure Portal, aby znaleźć maszynę wirtualną. Wyszukaj i wybierz pozycję Maszyny wirtualne.
- Wybierz maszynę wirtualną z listy.
- Na stronie Maszyny wirtualne w obszarze Ustawienia wybierz pozycję Dyski.
Dołączanie nowego dysku
W okienku Dyski w obszarze Dyski danych wybierz pozycję Utwórz i dołącz nowy dysk.
Wprowadź nazwę dysku zarządzanego. Przejrzyj ustawienia domyślne i zaktualizuj w razie potrzeby typ magazynu, rozmiar (GiB),szyfrowanie i buforowanie hosta .
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
W okienku Dyski w obszarze Dyski danych wybierz pozycję Dołącz istniejące dyski.
Wybierz menu rozwijane nazwa dysku i wybierz dysk z listy dostępnych dysków zarządzanych.
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:
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:
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.