Поделиться через


Подключение диска данных к виртуальной машине Linux с помощью портала

Область применения: ✔️ Виртуальные машины Linux ✔️ Гибкие масштабируемые наборы

В этой статье показано, как подключить новый и существующий диски к виртуальной машине Linux на портале Azure. Вы также можете подключить диск данных к виртуальной машине Windows на портале Azure.

Необходимые компоненты

Перед присоединением дисков к виртуальной машине Azure ознакомьтесь со следующими советами:

  • Размер виртуальной машины определяет, сколько дисков данных к ней можно подключить. Дополнительную информацию см. в статье Размеры виртуальных машин.

Поиск виртуальной машины

Выполните следующие действия:

  1. Используйте портал Azure для поиска виртуальной машины. Найдите и щелкните Виртуальные машины.

  2. Выберите виртуальную машину, к которому вы хотите подключить диск из списка.

  3. На странице "Виртуальные машины" в разделе "Параметры" выберите "Диски".

Подключение нового диска

Выполните следующие действия:

  1. На панели Диски в разделе Диски данных выберите Создать и подключить новый диск.

  2. Введите имя управляемого диска. Проверьте параметры по умолчанию и при необходимости обновите значения параметров Тип хранилища, Размер (ГиБ), Шифрование и Кэширование узла.

    Снимок экрана: просмотр параметров диска.

  3. По завершении нажмите кнопку "Сохранить " в верхней части страницы, чтобы создать управляемый диск и обновить конфигурацию виртуальной машины.

Подключение существующего диска

Выполните следующие действия:

  1. На панели Диски в разделе Диски данных выберите Подключение существующих дисков.

  2. Выберите раскрывающееся меню для имени диска и выберите диск из списка доступных управляемых дисков.

  3. Нажмите кнопку "Сохранить", чтобы подключить существующий управляемый диск и обновить конфигурацию виртуальной машины:

Подключение к виртуальной машине Linux для подключения нового диска

Чтобы разбить диск на разделы, отформатировать и подключить новый диск к виртуальной машине Linux, подключитесь к своей виртуальной машине по протоколу SSH. Дополнительные сведения см. в статье Как использовать SSH с Linux в Azure. В следующем примере выполняется подключение к виртуальной машине с общедоступным IP-адресом 10.123.123.25 и именем пользователя azureuser:

Поиск диска

После подключения к виртуальной машине необходимо найти диск. В этом примере мы используем lsblk для перечисления дисков.

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

В этом примере добавлен sdcдиск. Это LUN 0 и составляет 4 ГБ.

В более сложном примере ниже приведено, как выглядит несколько дисков данных на портале:

Снимок экрана: несколько дисков, показанных на портале.

На изображении видно, что есть три диска данных: 4 ГБ на LUN 0, 16 ГБ в LUN 1 и 32G в LUN 2.

В выходных lsblkданных можно увидеть, что диск 4 ГБ в LUN 0sdc, диск 16 ГБ в LUN 1 равенsdd, а диск 32G в LUN 2 .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

Подготовка нового пустого диска

Это важно

Если вы используете существующий диск, содержащий данные, перейдите к подключению диска. Следующие инструкции по удалению данных на диске.

Если вы подключаете новый диск, необходимо секционировать диск.

Служебная parted программа может использоваться для секционирования и форматирования диска данных.

  • Используйте последнюю версию parted , доступную для дистрибутива.
  • Если размер диска равен 2 тбибайта (TiB) или больше, необходимо использовать секционирование GPT. Если размер диска составляет менее 2 ТиБ, можно использовать секционирование MBR или GPT.

В следующем примере используется parted/dev/sdcдиск данных, в котором первый диск данных обычно будет находиться на большинстве виртуальных машин. Замените sdc правильным параметром для диска. Мы также отформатируем его с помощью файловой системы XFS .

Используйте служебную partprobe программу, чтобы убедиться, что ядро знает о новой секции и файловой системе. Сбой использования partprobe может привести к тому, что команды blkid или lslbk не возвращают UUID для новой файловой системы немедленно.

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

Подключение диска

Создайте каталог для подключения файловой системы с помощью mkdir, а затем используйте mount для подключения файловой системы. Затем добавьте диск в файл /etc/fstab , чтобы убедиться, что диск автоматически добавляется после перезагрузки.

Убедитесь, что UUID (универсальный уникальный идентификатор) используется в файле /etc/fstab для ссылки на диск, а не только на имя устройства (например, /dev/sdc1). Если ОС обнаруживает ошибку диска во время загрузки, использование UUID позволяет избежать неправильного подключения диска к заданному расположению. Затем остальные диски данных будут назначены тем же идентификаторам устройств. Чтобы найти идентификатор UUID нового диска, используйте blkid программу.

sudo mkdir /datadrive
sudo mount /dev/sdc1 /datadrive
sudo blkid
/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"

Изменение файла fstab

Замечание

Некорректное изменение файла /etc/fstab может привести к невозможности загрузить систему. Если у вас есть сомнения, см. инструкции по правильному изменению этого файла в документации дистрибутива. Перед редактированием необходимо создать резервную копию файла /etc/fstab .

Затем откройте файл /etc/fstab в текстовом редакторе. Добавьте строку в конец файла, используя значение UUID для /dev/sdc1 устройства, созданного на предыдущих шагах, и точку /datadriveподключения. Если вы использовали пример из этой статьи, новая строка будет выглядеть следующим образом.

После редактирования файла сохраните и закройте редактор.

Замечание

Позже удаление диска данных без редактирования fstab может привести к сбою загрузки виртуальной машины. Большинство дистрибутивов предоставляют параметры nofail и/или nobootwait fstab. Эти параметры позволяют системе загружаться, даже если диск не может подключиться во время загрузки. Дополнительные сведения об этих параметрах см. в документации дистрибутива.

Параметр nofail гарантирует, что виртуальная машина запускается, даже если файловая система повреждена или диск не существует во время загрузки. Без этого параметра вы можете столкнуться с поведением, как описано в разделе "Не удается SSH к виртуальной машине Linux" из-за ошибок FSTAB

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

Проверка диска

Теперь можно использовать lsblk снова, чтобы посмотреть диск и точку подключения. Затем выходные данные должны выглядеть примерно так, как в примере.

В следующем примере выходных данных вы увидите, что sdc теперь подключено./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

Поддержка TRIM/UNMAP для Linux в Azure

Некоторые ядра Linux поддерживают операции TRIM и UNMAP для отмены неиспользуемых блоков на диске. Эта функция в первую очередь полезна для информирования Azure о том, что удаленные страницы больше не допустимы и могут быть удалены. Эта функция позволяет сэкономить деньги на дисках, которые выставляются на основе объема потребляемого хранилища, например неуправляемых стандартных дисков и моментальных снимков дисков.

Существует два способа включить поддержку операций TRIM в виртуальной машине Linux. Как обычно, обратитесь к документации дистрибутива, чтобы выбрать рекомендуемый метод.

  1. Используйте параметр подключения discard в /etc/fstab. Ниже приведен пример.

    ```config
    UUID=33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e   /datadrive   xfs   defaults,discard   1   2
    ```
    
  2. В некоторых случаях параметр discard может негативно влиять на производительность. Кроме того, вы можете вручную выполнить команду fstrim из командной строки или добавить ее в crontab для регулярного выполнения.

    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