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


Подготовьте образ Ubuntu для локальных виртуальных машин в Azure, поддерживаемых Azure Arc.

Область применения: Azure Local 2311.2 и более поздних версий

В этой статье описывается, как использовать Azure CLI для подготовки образа Ubuntu и создания локальной виртуальной машины Azure.

Предварительные условия

  • Доступ к локальному экземпляру Azure. Эта система развертывается, регистрируется и подключается к Azure Arc. Перейдите на страницу "Обзор " в локальном ресурсе Azure. На вкладке "Сервер" на правой панели Azure Arc должно отображаться как подключенное.
  • Скачайте последний поддерживаемый образ сервера Ubuntu в локальной системе Azure. Поддерживаемые версии ОС: Ubuntu 20.04, 22.04 и 24.04 LTS.

Рабочий процесс

Чтобы подготовить образ Ubuntu и создать из него образ локальной виртуальной машины Azure:

  1. Создание виртуальной машины Ubuntu
  2. Настройка виртуальной машины
  3. Очистка остаточной конфигурации
  4. Создание образа виртуальной машины Ubuntu

В следующих разделах приведены подробные инструкции для каждого шага рабочего процесса.

Создание образа виртуальной машины из образа Ubuntu

Внимание

  • Не используйте виртуальный жесткий диск из виртуальной машины Azure для подготовки образа локальной виртуальной машины Azure.
  • Рекомендуется подготовить образ Ubuntu, если вы планируете включить управление гостевыми клиентами на виртуальных машинах.

Шаг 1. Создание виртуальной машины Ubuntu

Выполните следующие действия, чтобы подготовить виртуальную машину с помощью скачаированного образа Ubuntu.

  1. Настройте виртуальную машину со следующими спецификациями:

    1. Укажите понятное имя виртуальной машины.

      Снимок экрана, показывающий мастер создания новой виртуальной машины на странице под названием «Указание имени и расположения».

    2. Укажите поколение 2 для виртуальной машины при работе с расширенным образом виртуального жесткого диска.

      Снимок экрана: мастер создания виртуальной машины на странице

    3. Выберите "Установить операционную систему" из загрузочного образа. Переместите указатель мыши на ISO-файл, скачанный ранее.

      Снимок экрана: мастер создания виртуальной машины на странице

    Пошаговые инструкции см. в статье "Подготовка виртуальной машины с помощью диспетчера Hyper-V".

  2. Используйте сертификат UEFI для защиты загрузки виртуальной машины.

    1. После создания виртуальной машины она отображается в диспетчере Hyper-V. Выберите виртуальную машину, щелкните ее правой кнопкой мыши и выберите пункт "Параметры".
    2. На левой панели выберите вкладку "Безопасность". Затем в раскрывающемся списке шаблонов в разделе "Безопасная загрузка" выберите Центр сертификации Microsoft UEFI.
    3. Нажмите кнопку "ОК" , чтобы сохранить изменения.

    Снимок экрана: параметры безопасной загрузки виртуальной машины на странице

Шаг 2. Настройка виртуальной машины

Выполните следующие действия в локальной среде Azure, чтобы настроить подготовленную ранее виртуальную машину:

  1. Войдите на виртуальную машину. См. действия, описанные в разделе "Подключение к виртуальной машине Linux".

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

    sudo apt update
    
  3. Установите специально настроенное ядро Azure. Этот шаг необходим для получения IP-адреса сетевого интерфейса виртуальной машины.

    sudo apt install linux-azure -y
    
  4. Установите SSH-сервер. Выполните следующую команду:

    sudo apt install openssh-server openssh-client -y
    
  5. Настройка sudo без пароля. Добавьте следующую команду в конце /etc/sudoers файла с помощью visudo:

    ALL ALL=(ALL) NOPASSWD:ALL
    

Шаг 3. Очистка остаточной конфигурации

Удалите машине-специфичные файлы и данные с вашей виртуальной машины, чтобы создать чистый образ виртуальной машины без какой-либо истории или конфигураций по умолчанию. Выполните следующие действия в локальной среде Azure, чтобы очистить остаточную конфигурацию.

Примечание.

В зависимости от используемой версии Ubuntu некоторые из этих файлов могут не существовать.

  1. Очистка cloud-init конфигураций по умолчанию.

    sudo rm -f /etc/cloud/cloud.cfg.d/50-curtin-networking.cfg /etc/cloud/cloud.cfg.d/curtin-preserve-sources.cfg /etc/cloud/cloud.cfg.d/99-installer.cfg /etc/cloud/cloud.cfg.d/subiquity-disable-cloudinit-networking.cfg
    sudo rm -f /etc/cloud/ds-identify.cfg
    sudo rm -f /etc/netplan/*.yaml
    
  2. Очистка журналов и кэша.

    sudo cloud-init clean --logs --seed
    sudo rm -rf /var/lib/cloud/ /var/log/* /tmp/*
    sudo apt-get clean
    
  3. Удалите журнал bash.

    rm -f ~/.bash_history 
    export HISTSIZE=0 
    logout
    
  4. Выключите виртуальную машину. В диспетчере Hyper-V перейдите к Действие>Завершение работы.

Шаг 4. Создание образа виртуальной машины

Выполните следующие действия с помощью Azure CLI в локальной среде Azure, чтобы создать образ виртуальной машины из виртуального жесткого диска, созданного ранее.

  1. Запустите PowerShell с правами администратора.

  2. Войти Запустите следующий командлет:

    az login
    
  3. Задайте подписку. Запустите следующий командлет:

    az account set --subscription <Subscription ID>
    
  4. Задайте параметры для подписки, группы ресурсов, настроенного местоположения, расположения, типа ОС для изображения, имени изображения и пути к изображению. Замените параметры в < > на соответствующие значения.

    $subscription = "<Subscription ID>"
    $resource_group = "<Resource group>"
    $customLocation = "<Custom location>"
    $location = "<Location for your Azure Local>"
    $osType = "<OS of source image>"
    

    Параметры описаны в следующей таблице.

    Параметр Описание
    subscription Подписка, связанная с вашим локальным экземпляром Azure.
    resource_group Группа ресурсов для локального экземпляра Azure, который вы связываете с этим образом.
    location Расположение для локального экземпляра Azure. Например, расположение может быть eastus или westreurope.
    os-type Операционная система, связанная с исходным образом. Эта система может быть Windows или Linux.
  5. Используйте VHDX виртуальной машины для создания образа галереи. Используйте этот образ виртуальной машины для создания локальных виртуальных машин Azure.

    Обязательно скопируйте VHDX в пользовательское хранилище в общем томе кластера Azure Local. Например, путь может выглядеть следующим C:\ClusterStorage\UserStorage_1\linuxvhdxобразом.

    $imagePath = "Path to user storage in CSV" 
    $imageName = "mylinuxvmimg" 
    $osType = "Linux"
    
    az stack-hci-vm image create --subscription $subscription -g $resource_group --custom-location $customLocation --location $location --image-path $imagePath --name $imageName --debug --os-type $osType 
    
  6. Убедитесь, что изображение создано.