Подготовка виртуального жесткого диска Debian для AzurePrepare a Debian VHD for Azure

Предварительные требованияPrerequisites

В этом разделе предполагается, что вы уже установили на виртуальный жесткий диск (VHD) операционную систему Debian Linux из ISO-файла, полученного с веб-сайта Debian.This section assumes that you have already installed a Debian Linux operating system from an .iso file downloaded from the Debian website to a virtual hard disk. Существует несколько средств для создания VHD-файлов. Hyper-V — это лишь один из примеров.Multiple tools exist to create .vhd files; Hyper-V is only one example. Инструкции по работе с Hyper-V см. в разделе Установка роли Hyper-V и настройка виртуальной машины.For instructions using Hyper-V, see Install the Hyper-V Role and Configure a Virtual Machine.

Замечания по установкеInstallation notes

  • См. дополнительные сведения о подготовке Linux для Azure.See also General Linux Installation Notes for more tips on preparing Linux for Azure.
  • Более новый формат VHDX не поддерживается в Azure.The newer VHDX format is not supported in Azure. Диск можно преобразовать в формат VHD с помощью диспетчера Hyper-V или командлета Convert-VHD .You can convert the disk to VHD format using Hyper-V Manager or the convert-vhd cmdlet.
  • При установке Linux рекомендуется использовать стандартные разделы, а не LVM — значение по умолчанию во многих дистрибутивах.When installing the Linux system, it is recommended that you use standard partitions rather than LVM (often the default for many installations). Это позволит избежать конфликта имен LVM при клонировании виртуальных машин, особенно если диск с OC может быть подключен к другой ВМ в целях устранения неполадок.This will avoid LVM name conflicts with cloned VMs, particularly if an OS disk ever needs to be attached to another VM for troubleshooting. Для дисков данных можно использовать LVM или RAID.LVM or RAID may be used on data disks if preferred.
  • Не настраивайте раздел подкачки на диске с ОС.Do not configure a swap partition on the OS disk. Можно настроить агент Linux для Azure для создания файла подкачки на временном диске ресурсов.The Azure Linux agent can be configured to create a swap file on the temporary resource disk. Дополнительные сведения можно найти в инструкциях ниже.More information can be found in the steps below.
  • Размер виртуальной памяти всех VHD в Azure должен быть округлен до 1 МБ.All VHDs on Azure must have a virtual size aligned to 1MB. При конвертации неподготовленного диска в формат VHD убедитесь, что размер этого диска в несколько раз превышает 1 МБ.When converting from a raw disk to VHD, you must ensure that the raw disk size is a multiple of 1MB before conversion. См. дополнительные сведения об установке Linux.For more information, see Linux Installation Notes.

Создание виртуальных жестких дисков Debian с помощью Azure-ManageUse Azure-Manage to create Debian VHDs

Существуют средства для создания виртуальных жестких дисков Debian для Azure, такие как сценарии управления Azure из credativ.There are tools available for generating Debian VHDs for Azure, such as the azure-manage scripts from Credativ. Рекомендуется использовать их, а не создавать образ с нуля.This is the recommended approach versus creating an image from scratch. Например, чтобы создать виртуальный жесткий диск Debian 8, выполните следующие команды для скачивания средства azure-manage (и зависимостей) и выполнения скрипта azure_build_image:For example, to create a Debian 8 VHD run the following commands to download the azure-manage utility (and dependencies) and run the azure_build_image script:

# sudo apt-get update
# sudo apt-get install git qemu-utils mbr kpartx debootstrap

# sudo apt-get install python3-pip python3-dateutil python3-cryptography
# sudo pip3 install azure-storage azure-servicemanagement-legacy azure-common pytest pyyaml
# git clone https://github.com/credativ/azure-manage.git
# cd azure-manage
# sudo pip3 install .

# sudo azure_build_image --option release=jessie --option image_size_gb=30 --option image_prefix=debian-jessie-azure section

Подготовка виртуального жесткого диска Debian вручнуюManually prepare a Debian VHD

  1. В диспетчере Hyper-V выберите виртуальную машину.In Hyper-V Manager, select the virtual machine.

  2. Щелкните Подключение , чтобы открыть окно консоли для виртуальной машины.Click Connect to open a console window for the virtual machine.

  3. Если вы установили ОС с помощью ISO-файла, закомментируйте все строки, относящиеся к deb cdromв /etc/apt/source.list.If you installed the OS using an ISO, then comment out any line relating to "deb cdrom" in /etc/apt/source.list.

  4. Отредактируйте файл /etc/default/grub и измените параметр GRUB_CMDLINE_LINUX следующим образом, чтобы включить дополнительные параметры ядра для Azure.Edit the /etc/default/grub file and modify the GRUB_CMDLINE_LINUX parameter as follows to include additional kernel parameters for Azure.

    GRUB_CMDLINE_LINUX="console=tty0 console=ttyS0,115200n8 earlyprintk=ttyS0,115200"
    
  5. Перестройте grub и выполните команду:Rebuild the grub and run:

    # sudo update-grub
    
  6. Добавьте репозитории Azure Debian в/ЕТК/Апт/саурцес.лист для Debian 8, 9 или 10:Add Debian's Azure repositories to /etc/apt/sources.list for either Debian 8, 9 or 10:

    Debian 8.x "Jessie"Debian 8.x "Jessie"

    deb http://debian-archive.trafficmanager.net/debian jessie main
    deb-src http://debian-archive.trafficmanager.net/debian jessie main
    deb http://debian-archive.trafficmanager.net/debian-security jessie/updates main
    deb-src http://debian-archive.trafficmanager.net/debian-security jessie/updates
    deb http://debian-archive.trafficmanager.net/debian jessie-updates main
    deb-src http://debian-archive.trafficmanager.net/debian jessie-updates main
    deb http://debian-archive.trafficmanager.net/debian jessie-backports main
    deb-src http://debian-archive.trafficmanager.net/debian jessie-backports main
    

    Debian 9.x "Stretch"Debian 9.x "Stretch"

    deb http://debian-archive.trafficmanager.net/debian stretch main
    deb-src http://debian-archive.trafficmanager.net/debian stretch main
    deb http://debian-archive.trafficmanager.net/debian-security stretch/updates main
    deb-src http://debian-archive.trafficmanager.net/debian-security stretch/updates main
    deb http://debian-archive.trafficmanager.net/debian stretch-updates main
    deb-src http://debian-archive.trafficmanager.net/debian stretch-updates main
    deb http://debian-archive.trafficmanager.net/debian stretch-backports main
    deb-src http://debian-archive.trafficmanager.net/debian stretch-backports main
    

    Debian 10. x "бустер"Debian 10.x "Buster"

    deb http://debian-archive.trafficmanager.net/debian buster main
    deb-src http://debian-archive.trafficmanager.net/debian buster main
    deb http://debian-archive.trafficmanager.net/debian-security buster/updates main
    deb-src http://debian-archive.trafficmanager.net/debian-security buster/updates main
    deb http://debian-archive.trafficmanager.net/debian buster-updates main
    deb-src http://debian-archive.trafficmanager.net/debian buster-updates main
    deb http://debian-archive.trafficmanager.net/debian buster-backports main
    deb-src http://debian-archive.trafficmanager.net/debian buster-backports main
    
  7. Установите агент Linux для Azure:Install the Azure Linux Agent:

    # sudo apt-get update
    # sudo apt-get install waagent
    
  8. Для версий Debian 9+ рекомендуется использовать новое облачное ядро Debian для использования с виртуальными машинами в Azure.For Debian 9+, it is recommended to use the new Debian Cloud kernel for use with VMs in Azure. Чтобы установить это ядро, сначала создайте файл с именем /etc/apt/preferences.d/linux.pref со следующим содержимым:To install this new kernel, first create a file called /etc/apt/preferences.d/linux.pref with the following contents:

    Package: linux-* initramfs-tools
    Pin: release n=stretch-backports
    Pin-Priority: 500
    

    Затем выполните команду sudo apt-get install linux-image-cloud-amd64, чтобы установить новое облачное ядро Debian.Then run "sudo apt-get install linux-image-cloud-amd64" to install the new Debian Cloud kernel.

  9. Отмените подготовку виртуальной машины, подготовьте ее к работе в среде Azure и выполните команду:Deprovision the virtual machine and prepare it for provisioning on Azure and run:

    # sudo waagent –force -deprovision
    # export HISTSIZE=0
    # logout
    
  10. В диспетчере Hyper-V щелкните действие -> завершить работу.Click Action -> Shut Down in Hyper-V Manager. Виртуальный жесткий диск Linux готов к передаче в Azure.Your Linux VHD is now ready to be uploaded to Azure.

Дальнейшие действияNext steps

Теперь виртуальный жесткий диск Debian можно использовать для создания новых виртуальных машин Azure.You're now ready to use your Debian virtual hard disk to create new virtual machines in Azure. Если вы отправляете VHD-файл в Azure впервые, см. раздел Вариант 1. Передача VHD.If this is the first time that you're uploading the .vhd file to Azure, see Create a Linux VM from a custom disk.