Ćwiczenie — zmiana rozmiaru dysku maszyny wirtualnej

Ukończone

Załóżmy, że niedoceniano, jak duże są niektóre przekazane pliki i że dysk przekazywania brakuje miejsca. Dlatego decydujesz się podwoić przestrzeń z 64 GB do 128 GB.

W tym miejscu przećwicz proces poznany w poprzednich lekcjach.

Zmiana rozmiaru dysku danych

Aby zmienić rozmiar dysku, potrzebny jest identyfikator lub nazwa dysku. W takim przypadku znasz już nazwę — *uploadDataDisk1 — ale jeśli nie utworzono dysku lub ktoś inny, możesz uruchomić polecenie az disk list , aby znaleźć nazwę.

  1. Uruchom polecenie , az disk list aby wyświetlić listę dysków zarządzanych w grupie zasobów. Ta lista może zawierać inne dyski, jeśli masz wiele maszyn wirtualnych w tej samej grupie zasobów.

    az disk list \
      --query '[*].{Name:name,Gb:diskSizeGb,Tier:sku.tier}' \
      --output table
    

    Zobaczysz dysk o nazwie uploadDataDisk1.

    Name                                                        Tier
    ----------------------------------------------------------  -------
    support-web-vm01_OsDisk_1_a7c59897dfda42dfab2edf4933e713a6  Premium
    uploadDataDisk1                                             Premium
    
  2. Uruchom następujące polecenie az vm deallocate, aby zatrzymać maszynę wirtualną i cofnąć jej przydział. To polecenie nie usuwa maszyny wirtualnej, ale umieszcza je w stanie, w którym można modyfikować dyski wirtualne.

    az vm deallocate --name support-web-vm01
    
  3. Uruchom polecenie , az disk update aby zmienić rozmiar dysku na 128 GB.

    az disk update --name uploadDataDisk1 --size-gb 128
    
  4. Uruchom polecenie , az vm start aby ponownie uruchomić maszynę wirtualną.

    az vm start --name support-web-vm01
    

    Jeszcze nie skończyliśmy. System operacyjny na maszynie wirtualnej nie może jeszcze korzystać z dodatkowego miejsca. W następnej sekcji zajmiemy się tą sytuacją.

Rozszerzanie partycji dysku

Ostatnim krokiem jest poinformowanie systemu operacyjnego o dostępnej przestrzeni. Podobnie jak w przypadku kroków partycjonowania i formatowania, ten proces jest identyczny z tym, który wykonujesz w celu rozwinięcia fizycznego dysku lokalnego.

  1. Mimo że można zarezerwować stały publiczny adres IP maszyny wirtualnej, domyślnie maszyna wirtualna otrzymuje nowy publiczny adres IP po cofnięciu przydziału i ponownym uruchomieniu maszyny wirtualnej. Uruchom następujące polecenie az vm show, aby zaktualizować zmienną powłoki Bash o nowy publiczny adres IP maszyny wirtualnej.

    ipaddress=$(az vm show --name support-web-vm01 -d --query [publicIps] -o tsv)
    
  2. Podobnie jak było to robione wcześniej, uruchom polecenie lsblk na maszynie wirtualnej za pomocą protokołu SSH, aby poznać jej bieżący stan.

    ssh azureuser@$ipaddress lsblk
    

    Zobaczysz, że dysk sdc/sdc1 nadal ma rozmiar 64 GB.

    NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sdb       8:16   0    7G  0 disk 
    └─sdb1    8:17   0    7G  0 part /mnt
    sdc       8:32   0  128G  0 disk 
    └─sdc1    8:33   0   64G  0 part /uploads
    sda       8:0    0   30G  0 disk 
    ├─sda14   8:14   0    4M  0 part 
    ├─sda15   8:15   0  106M  0 part /boot/efi
    └─sda1    8:1    0 29.9G  0 part /
    
  3. Podobnie jak wcześniej, aby zainicjować dysk, uruchom następujące az vm extension set polecenie, aby poinformować system operacyjny na maszynie wirtualnej o nowo dostępnej przestrzeni, wykonując wstępnie utworzony skrypt powłoki Bash, aby ci pomóc.

    az vm extension set \
      --vm-name support-web-vm01 \
      --name customScript \
      --publisher Microsoft.Azure.Extensions \
      --settings '{"fileUris":["https://raw.githubusercontent.com/MicrosoftDocs/mslearn-add-and-size-disks-in-azure-virtual-machines/master/resize-data-disk.sh"]}' \
      --protected-settings '{"commandToExecute": "./resize-data-disk.sh"}'
    

    W czasie wykonywania polecenia możesz przeanalizować skrypt powłoki Bash na osobnej karcie przeglądarki.

    Podsumowując, skrypt:

    • Odinstalowuje dysk /dev/sdc1.
    • Zmienia rozmiar partycji 1 na 128 GB.
    • Weryfikuje spójność partycji.
    • Zmienia rozmiar systemu plików.
    • Ponownie instaluje dysk /dev/sdc1 w punkcie instalacji /uploads.
  4. Aby sprawdzić konfigurację, uruchom po raz drugi polecenie lsblk na maszynie wirtualnej za pomocą protokołu SSH.

    ssh azureuser@$ipaddress lsblk
    

    Tym razem zobaczysz, że dysk sdc/sdc1 został rozszerzony w celu dopasowania go do zwiększonego rozmiaru dysku.

    NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
    sdb       8:16   0     7G  0 disk 
    └─sdb1    8:17   0     7G  0 part /mnt
    sdc       8:32   0   128G  0 disk 
    └─sdc1    8:33   0 119.2G  0 part /uploads
    sda       8:0    0    30G  0 disk 
    ├─sda14   8:14   0     4M  0 part 
    ├─sda15   8:15   0   106M  0 part /boot/efi
    └─sda1    8:1    0  29.9G  0 part /
    
  5. Jako końcowy krok weryfikacji uruchom narzędzie df systemu operacyjnego na maszynie wirtualnej za pomocą protokołu SSH, aby potwierdzić, że system operacyjny prawidłowo widzi ten dysk.

    ssh azureuser@$ipaddress df -h
    

    Zobaczysz, że rozmiar dysku to 128 GB.

    Filesystem      Size  Used Avail Use% Mounted on
    udev            1.7G     0  1.7G   0% /dev
    tmpfs           345M  9.3M  335M   3% /run
    /dev/sda1        29G  1.9G   28G   7% /
    tmpfs           1.7G     0  1.7G   0% /dev/shm
    tmpfs           5.0M     0  5.0M   0% /run/lock
    tmpfs           1.7G     0  1.7G   0% /sys/fs/cgroup
    /dev/sda15      105M  3.2M  102M   3% /boot/efi
    /dev/sdb1       6.8G   16M  6.4G   1% /mnt
    /dev/sdc1       118G   60M  112G   1% /uploads
    tmpfs           345M     0  345M   0% /run/user/1000