Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: ✔️ Виртуальные машины Linux ✔️ Гибкие масштабируемые наборы
В этой статье показано, как подключить новый и существующий диски к виртуальной машине Linux на портале Azure. Вы также можете подключить диск данных к виртуальной машине Windows на портале Azure.
Необходимые компоненты
Перед присоединением дисков к виртуальной машине Azure ознакомьтесь со следующими советами:
Размер виртуальной машины определяет, сколько дисков данных к ней можно подключить. Дополнительную информацию см. в статье Размеры виртуальных машин.
Поиск виртуальной машины
Выполните следующие действия:
Используйте портал Azure для поиска виртуальной машины. Найдите и щелкните Виртуальные машины.
Выберите виртуальную машину, к которому вы хотите подключить диск из списка.
На странице "Виртуальные машины" в разделе "Параметры" выберите "Диски".
Подключение нового диска
Выполните следующие действия:
На панели Диски в разделе Диски данных выберите Создать и подключить новый диск.
Введите имя управляемого диска. Проверьте параметры по умолчанию и при необходимости обновите значения параметров Тип хранилища, Размер (ГиБ), Шифрование и Кэширование узла.
По завершении нажмите кнопку "Сохранить " в верхней части страницы, чтобы создать управляемый диск и обновить конфигурацию виртуальной машины.
Подключение существующего диска
Выполните следующие действия:
На панели Диски в разделе Диски данных выберите Подключение существующих дисков.
Выберите раскрывающееся меню для имени диска и выберите диск из списка доступных управляемых дисков.
Нажмите кнопку "Сохранить", чтобы подключить существующий управляемый диск и обновить конфигурацию виртуальной машины:
Подключение к виртуальной машине 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. Как обычно, обратитесь к документации дистрибутива, чтобы выбрать рекомендуемый метод.
Используйте параметр подключения
discard
в /etc/fstab. Ниже приведен пример.```config UUID=33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e /datadrive xfs defaults,discard 1 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