Устранение неполадок сертификации виртуальной машины

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

В этой статье приведены объяснения распространенных сообщений об ошибках во время публикации образа виртуальной машины и предложены соответствующие решения.

Примечание.

Если у вас есть вопросы по этой статье или предложения по улучшению, обратитесь в службу поддержки Центра партнеров.

Сбой расширения виртуальной машины

Проверьте, поддерживает ли ваш образ расширения VM.

Чтобы включить расширения VM, выполните следующие действия.

  1. Выберите виртуальную машину Linux.

  2. Перейдите в раздел Параметры диагностики.

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

  4. Выберите Сохранить.

    Screenshot that displays how to enable guest-level monitoring.

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

  1. На виртуальной машине перейдите на вкладку расширений VM и проверьте состояние расширения системы диагностики Linux.

  2. Проверьте состояние подготовки.

    • Если состояние подготовлено успешно, тестовый случай расширений прошел.
    • Если состояние подготовлено сбоем, тестовый случай расширений завершился сбоем, и необходимо задать флаг "Затверденный".

    Screenshot showing that provisioning succeeded.

    Если происходит сбой расширения VM, сведения о его включении см. в разделе Использование диагностического расширения Linux для мониторинга метрик и журналов. Если вы не хотите, чтобы расширение VM было включено, обратитесь в службу технической поддержки и попросите его отключить.

Проблема с подготовкой виртуальных машин

Перед отправкой предложения убедитесь, что вы следовали процессу подготовки виртуальной машины. О том, как просмотреть сведения о подготовке VM в формате JSON, см. в разделе Тестирование образа виртуальной машины.

Проблемы подготовки могут включать следующие сценарии сбоя.

Сценарий Ошибка Причина Решение
1 Недопустимый виртуальный жесткий диск (VHD) Если указанное значение файла cookie в нижнем колонтитуле VHD неверно, виртуальный жесткий диск считается недопустимым. Повторно создайте образ и отправьте запрос.
2 Недопустимый тип BLOB-объекта Не удалось подготовить виртуальную машину, так как используемый BLOB-объект является блочным, а не страничным. Повторно создайте образ со страничным типом и отправьте запрос.
3 Превышение времени ожидания или неправильное обобщение подготовки Это проблема обобщения виртуальной машины. Повторно создайте образ с обобщением и отправьте запрос.

Примечание.

Дополнительные сведения об обобщении VM см. в следующей документации:

Примечание.

Если при подготовке к работе возникает ошибка, так как для создания образа виртуальной машины требуется развернуть настраиваемый шаблон ARM, установите флажок "Требуется настраиваемый шаблон ARM для развертывания" на странице "Техническая конфигурация" в Центре партнеров. Это помогает группе сертификации принять надлежащие меры для этого запроса, не завершив ошибку при подготовке.

Custom ARM template checkbox

Спецификации VHD

Строка "conectix" является частью спецификации VHD. Она определяется как 8-байтовый файл cookie в нижнем колонтитуле VHD, который определяет автора файла. Все VHD-файлы, созданные корпорацией Майкрософт, имеют этот файл cookie.

BLOB-объект в формате VHD должен иметь 512-байтовый нижний колонтитул в следующем формате.

Поля нижнего колонтитула жесткого диска Размер (в байтах)
Файл cookie 8
Функции 4
Версия формата файла 4
Смещение даты 8
Отметка времени 4
Приложение автора 4
Версия автора 4
ОС узла автора 4
Исходный размер 8
Текущий размер 8
Геометрия диска 4
Тип диска 4
Контрольная сумма 4
Уникальный идентификатор 16
Сохраненное состояние 1
Зарезервировано 427

Спецификации VHD

Чтобы публикация произошла без проблем, ваш VHD должен соответствовать следующим условиям.

  • Файл cookie содержит строку conectix.
  • Диск имеет фиксированный тип.
  • Виртуальный размер VHD составляет не менее 20 МБ.
  • VHD выровнен. Виртуальный размер должен быть кратен 1 МБ.
  • Длина BLOB-объекта VHD равна сумме виртуального размера и длины нижнего колонтитула VHD (512).

Загрузить спецификацию VHD.

Соответствие программному обеспечению для Windows

Если запрос на образ Windows отклонен из-за проблемы с соответствием программного обеспечения, возможно, вы создали образ Windows с установленным экземпляром SQL Server. Вместо этого необходимо взять соответствующий базовый образ версии SQL Server из Azure Marketplace.

Не создавайте собственный образ Windows с установленным в нем SQL Server. Используйте утвержденные базовые образы SQL Server (Enterprise/Standard/Web) из Azure Marketplace.

Если вы пытаетесь установить Visual Studio или любой другой продукт с лицензией Office, обратитесь в службу технической поддержки для получения предварительного утверждения.

Дополнительные сведения о выборе утвержденной базы см. в разделе Создание виртуальной машины из утвержденной базы.

сбой выполнения тестового случая набор средств

Набор средств сертификации Майкрософт помогает выполнить тестовые случаи и проверить совместимость VHD или образа со средой Azure.

Загрузите набор средств сертификации Майкрософт.

Тестовые случаи Linux

В следующей таблице перечислены тестовые случаи Linux, которые выполняет набор средств. Тестовая проверка указывается в описании.

Сценарий Тестовый случай Description
1 Журнал Bash Перед созданием образа виртуальной машины необходимо очистить файлы журнала Bash.
2 Версия агента Linux Необходимо установить минимальную поддерживаемую версию агента Linux Azure или более поздней.
3 Обязательные параметры ядра Проверяет, заданы ли следующие параметры ядра:
console=ttyS0
earlyprintk=ttyS0
4 Раздел подкачки на диске ОС Проверяет, что разделы подкачки не создаются на диске ОС.
5 Корневой раздел на диске ОС Создайте один корневой раздел для диска операционной системы.
6 Версия OpenSSL Версия OpenSSL должна быть не ниже 0.9.8.
7 Python version Рекомендуется использовать Python 2.6 или более поздней версии.
8 Интервал активности клиента Установите для параметра ClientAliveInterval значение 180. В зависимости от потребностей его можно установить в интервале от 30 до 235. Если вы включаете SSH для конечных пользователей, это значение должно быть задано в соответствии с описанием.
9 Архитектура ОС Поддерживаются только 64-разрядные операционные системы.
10 Автоматическое обновление Определяет, включено ли автоматическое обновление агента Linux.

Распространенные ошибки тестовых случаев

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

Сценарий Тестовый случай Ошибка Решение
1 Тестовый случай версии агента Linux Необходимо установить минимальную поддерживаемую версию агента Linux Azure или более поздней.] (https://learn.microsoft.com/troubleshoot/azure/virtual-machines/support-extensions-agent-version) Обновите версию агента Linux. Дополнительные сведения см. на странице обновления версии агента Linux.
2 Тестовый случай журнала Bash Если размер журнала Bash в отправленном образе превышает 1 КБ, возникает ошибка. Размер ограничен 1 КБ, чтобы файл журнала Bash не содержал потенциально конфиденциальных сведений. Чтобы устранить эту ошибку, подключите VHD к другой работающей виртуальной машине и внесите изменения, чтобы размер не превышал 1 КБ. Например, удалите файлы .bash_history.
3 Тестовый случай обязательного параметра ядра Эта ошибка возникает, когда для параметра console не задано значение ttyS0. Проверьте, выполнив следующую команду:
cat /proc/cmdline
Задайте для console значение ttyS0 и повторно отправьте запрос.
4 Тестовый случай интервала ClientAlive Если набор средств выдает неудачный результат для этого тестового случая, то значение параметра ClientAliveInterval неправильное. Задайте для параметра ClientAliveInterval значение не более 235, а затем повторно отправьте запрос.
5 smoke_test Вы получите сообщение об ошибке, когда образ не может загрузить или перезагрузить из-за паники ядра. Вы можете получить некоторые сведения о трассировке вызовов паники ядра из описания ошибки. Если вы хотите просмотреть всю трассировку вызовов и последовательный журнал, можно развернуть виртуальную машину в Azure с помощью образа и проверка "Последовательная консоль" в ресурсе виртуальной машины в портал Azure. При создании виртуальной машины в Azure можно скачать журнал последовательной консоли из портал Azure (дополнительные сведения о последовательной консоли см. в статье https://learn.microsoft.com/en-us/troubleshoot/azure/virtual-machines/serial-console-linux "Дополнительные сведения о последовательной консоли")
6 verify_dns_name_resolution Этот тестовый случай проверка разрешение DNS-имен путем выполнения команды:ping bing.com -c 5 -i 0,5 -O. Ошибка возникает, если не удается получить связь с общедоступным веб-адресом "bing.com". Дополнительные сведения о https://learn.microsoft.com/en-us/azure/virtual-machines/linux/azure-dns добавлении параметров
7 verify_no_pre_exist_users Вы получите сообщение об ошибке "Пароль пользователя XXXX обнаружен" при обнаружении пароля определенного пользователя или при обнаружении ключа определенного пользователя. проверка /etc/shadow file, чтобы узнать, имеет ли он пароль определенного пользователя, если да, необходимо удалить пароль и удалить файл "{домашний каталог пользователя}/.ssh/authorized_keys" после сообщения об ошибке.
8 validate_netvsc_reload Появится сообщение об ошибке "сбой". SSHException: сеанс SSH не активен. Если виртуальная машина не может быть подключена после выполнения следующей команды. Вы получите сообщение об ошибке "Обнаружена паника ядра из узла xx". Если на виртуальной машине обнаружена паника ядра после выполнения команды: modprobe -r hv_netvsc; modprobe hv_netvsc; ip link set eth0 down; ip link set eth0 up; dhclient -r eth0; dhclient eth0 ' Проверьте последовательную консоль, чтобы узнать, произошла ли какая-либо ошибка во время выполнения указанной выше команды. https://learn.microsoft.com/en-us/windows-hardware/drivers/network/sr-iov-synthetic-data-path Дополнительные сведения о клиенте виртуальной службы сети (NetVSC).

Тестовые случаи Windows

В следующей таблице перечислены тестовые случаи Windows, которые запускает набор средств, а также описание проверки теста:

Сценарий Тестовые случаи Description
1 Архитектура ОС Azure поддерживает только 64-разрядные операционные системы.
2 Зависимость от учетной записи пользователя Выполнение приложения не должно зависеть от учетной записи администратора.
3 Отказоустойчивый кластер Отказоустойчивость кластеров Windows Server пока не поддерживается. Приложение не должно зависеть от этой возможности.
4 IPV6 Протокол IPv6 пока не поддерживается в среде Azure. Приложение не должно зависеть от этой возможности.
5 DHCP Роль сервера DHCP пока не поддерживается. Приложение не должно зависеть от этой возможности.
6 Удаленный доступ. Роль сервера удаленного доступа (прямого доступа) пока не поддерживается. Приложение не должно зависеть от этой возможности.
7 Службы управления правами Службы Rights Management Services. Эта роль сервера пока не поддерживается. Приложение не должно зависеть от этой возможности.
8 Службы развертывания Windows Службы развертывания Windows. Эта роль сервера пока не поддерживается. Приложение не должно зависеть от этой возможности.
9 Шифрование диска BitLocker Шифрование диска BitLocker не поддерживается на жестком диске операционной системы, но может использоваться на дисках данных.
10 Сервер имен служба хранилища Интернета Функция сервера имен интернет-хранилища пока не поддерживается. Приложение не должно зависеть от этой возможности.
11 Multipath I/O; Multipath I/O. Эта функция сервера пока не поддерживается. Приложение не должно зависеть от этой возможности.
12 Балансировка сетевой нагрузки Балансировка сетевой нагрузки. Эта функция сервера пока не поддерживается. Приложение не должно зависеть от этой возможности.
13 протокол PNRP; Протокол PNRP. Эта функция сервера пока не поддерживается. Приложение не должно зависеть от этой возможности.
14 Службы SNMP Функция служб SNMP пока не поддерживается. Приложение не должно зависеть от этой возможности.
15 Служба имен Интернета Windows Служба WINS. Эта функция сервера пока не поддерживается. Приложение не должно зависеть от этой возможности.
16 Служба беспроводной локальной сети Служба беспроводной локальной сети. Эта функция сервера пока не поддерживается. Приложение не должно зависеть от этой возможности.

Если вы столкнетесь с какими-либо сбоями в приведенных выше тестовых случаях, смотрите решение в столбце Description этой таблицы. Для получения дополнительных сведений обратитесь в службу технической поддержки.

Проверка размера диска данных

Запросы дисков данных размером более 1023 ГБ не будут утверждены. Это правило относится и к Linux, и к Windows.

Повторно отправьте запрос размером не более 1023 ГБ.

Проверка размера диска ОС

Ограничения размера диска ОС см. в следующих правилах. При отправке любого запроса убедитесь, что размер диска ОС находится в пределах ограничений для Linux или Windows.

ОС Рекомендуемый размер VHD
Linux от 1 ГБ до 1023 ГБ
Windows от 30 ГБ до 250 ГБ

Так как виртуальными машинами разрешен доступ к базовой операционной системе, убедитесь, что размер виртуального жесткого диска достаточно велик. Диски невозможно расширить без простоя. Используйте размер диска от 30 ГБ до 50 ГБ.

Размер VHD Фактический занимаемый объем Решение
>500 tebibytes (TiB) Н/Д Обратитесь в службу технической поддержки, чтобы получить утверждение исключения.
250–500 ТиБ >Разница в 200 гибибайтах (GiB) от размера большого двоичного объекта Обратитесь в службу технической поддержки, чтобы получить утверждение исключения.

Примечание.

Более крупные размеры дисков влечет за собой более высокие затраты и приводят к задержке во время установки и реплика процесса. Из-за этой задержки и затрат служба технической поддержки может запросить обоснование для утверждения исключения.

Проверка проверки исправлений WannaCry для Windows

Для предотвращения возможных атак, связанных с вирусом WannaCry, необходимо обновить все запросы образа Windows с использованием последнего исправления.

Проверить версию файла образа можно в C:\windows\system32\drivers\srv.sys или srv2.sys.

В следующей таблице приведены минимальные исправленные версии Windows Server.

ОС Версия
Windows Server 2008 R2 6.1.7601.23689
Windows Server 2012 6.2.9200.22099
Windows Server 2012 R2 6.3.9600.18604
Windows Server 2016 10.0.14393.953
Windows Server 2019 Неприменимо

Примечание.

В Windows Server 2019 отсутствуют требования обязательной версии.

Проверка исправлений уязвимостей SACK

При отправке образа Linux запрос может быть отклонен из-за проблем с версией ядра.

Обновите ядро, используя утвержденную версию, и отправьте запрос повторно. Утвержденную версию ядра можно найти в следующей таблице. Номер версии должен быть не ниже указанной в таблице.

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

  • CVE-2019-11477
  • CVE-2019-11478
  • CVE-2019-11479
Семейство ОС Версия Ядро
Ubuntu 14.04 LTS 4.4.0-151
14.04 LTS 4.15.0-1049-*-azure
16.04 LTS 4.15.0-1049
18.04 LTS 4.18.0-1023
18.04 LTS 5.0.0-1025
18.10 4.18.0-1023
19.04 5.0.0-1010
19.04 5.3.0-1004
RHEL и Cent OS 6,10 2.6.32-754.15.3
7.2 3.10.0-327.79.2
7.3 3.10.0-514.66.2
7,4 3.10.0-693.50.3
7.5 3.10.0-862.34.2
7.6 3.10.0-957.21.3
7.7 3.10.0-1062.1.1
8.0 4.18.0-80.4.2
8.1 4.18.0-147
"7-RAW" (7.6)
"7-LVM" (7.6) 3.10.0-957.21.3
RHEL-SAP 7.4 Подлежит уточнению
RHEL-SAP 7.5 Подлежит уточнению
SLES SLES11SP4 (включая SAP) 3.0.101-108.95.2
SLES12SP1 для SAP 3.12.74-60.64.115.1
SLES12SP2 для SAP 4.4.121-92.114.1
SLES12SP3 4.4180-4.31.1 (ядро — Azure)
SLES12SP3 для SAP 4.4.180-94.97.1
SLES12SP4 4.12.14-6.15.2 (ядро — Azure)
SLES12SP4 для SAP 4.12.14-95.19.1
SLES15 4.12.14-5.30.1 (ядро — Azure)
SLES15 для SAP 4.12.14-5.30.1 (ядро — Azure)
SLES15SP1 4.12.14-5.30.1 (ядро — Azure)
Oracle 6,10 UEK2 2.6.39-400.312.2
UEK3 3.8.13-118.35.2
RHCK 2.6.32-754.15.3
7.0-7.5 UEK3 3.8.13-118.35.2
UEK4 4.1.12-124.28.3
RHCK соответствует RHEL выше
7.6 RHCK 3.10.0-957.21.3
UEK5 4.14.35-1902.2.0
CoreOS Stable 2079.6.0 4.19.43*
2135.3.1 (бета-версия) 4.19.50*
2163.2.1 (альфа-версия) 4.19.50*
Debian jessie (безопасность) 3.16.68-2
jessie backports 4.9.168-1+deb9u3
stretch (безопасность) 4.9.168-1+deb9u3
Debian GNU/Linux 10 (buster) Debian 6.3.0-18+deb9u1
buster, sid (stretch backports) 4.19.37-5

Размер изображения должен находиться в нескольких мегабайтах

Все виртуальные жесткие диски в Azure должны иметь виртуальный размер, кратный 1 мегабайту (МБ). Если ваш VHD не соответствует рекомендуемому виртуальному размеру, ваш запрос может быть отклонен.

Следуйте рекомендациям при преобразовании неподготовленного диска в VHD. Убедитесь, что размер неподготовленного диска кратен 1 МБ. Дополнительные сведения см. в разделе "Сведения о неиндерсированных дистрибутивах".

Доступ к виртуальной машине запрещен

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

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

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

  1. Запустите новейшее средство проверки для сертификации виртуальных машин Azure на своем образе.

  2. Отправьте запрос в службу поддержки. Обязательно прикрепите отчет набора средств и предоставьте следующие сведения о предложении.

    • Название предложения
    • Имя издателя
    • Идентификатор плана / номер SKU и версия
  3. Повторно отправьте запрос на сертификацию.

Примечание.

Если вы публикуете заблокированный образ виртуальной машины с отключенным или ограниченным ssh, включите флажок проверка box "Удаленный рабочий стол или SSH отключен" на странице "Техническая конфигурация" Центра партнеров. Это сообщает группе сертификации, что это по проектированию и выполнению правильных проверок на изображении без сбоя в доступе с ограниченным доступом.

Locked-down checkbox

Сбой загрузки

В следующей таблице представлены проблемы, которые могут возникнуть при скачивании образа виртуальной машины с подписанным URL-адресом (SAS).

Ошибка Причина Решение
Не удалось найти большой двоичный объект. Возможно, VHD удален или перемещен из указанного места.
BLOB-объект используется VHD используется другим внутренним процессом. Исходное хранилище BLOB-объектов виртуального жесткого диска изменяется во время публикации. Виртуальный жесткий диск не должен находиться в состоянии использования при скачивании его с URL-адресом SAS. Кроме того, не используйте или не изменяйте виртуальный жесткий диск при публикации.
Недопустимый подписанный URL-адрес Неправильный подписанный URL-адрес для VHD. Получите правильный подписанный URL-адрес (SAS).
Неверная сигнатура Неправильный подписанный URL-адрес для VHD. Получите правильный подписанный URL-адрес (SAS).
Условный заголовок HTTP Неправильный подписанный URL-адрес. Получите правильный подписанный URL-адрес (SAS).
Недопустимое имя VHD Проверьте, не присутствуют ли в имени VHD специальные символы, такие как знак процента % или кавычки ". Переименуйте VHD-файл, удалив специальные символы.

Образы виртуальных машин должны иметь 1 МБ свободного места

Если вы публикуете образ в Azure (с разделом GPT), настоятельно рекомендуется сохранить первые 2048 секторов (1 МБ) диска ОС пустым. Это требование заключается в том, чтобы Разрешить Azure добавлять важные метаданные в образ (например, метаданные для улучшения времени загрузки для клиентов, выставления счетов и других сведений). Это рекомендация, которая рекомендуется, если вы уже используете утвержденный базовый образ , а образ имеет допустимый тег выставления счетов. Однако если образ не имеет допустимого тега выставления счетов, публикация может завершиться ошибкой, если первая МБ диска ОС не пуста.

Если вы создаете собственный образ, который не имеет допустимого тега выставления счетов, убедитесь, что первые 2048 секторов (1 МБ) диска ОС пусты. В противном случае публикация завершится ошибкой. Это требование относится только к диску ОС (не к дискам данных). Если вы создаете образ из утвержденной базы, он уже будет иметь первые 1 МБ пустые. Следовательно, вам не нужно работать над ним отдельно.

Чтобы сохранить первые МБ МБ на диске ОС, выполните действия, описанные в следующем разделе.

Как сохранить 1 МБ свободного места в начале пустого виртуального жесткого диска (2048 секторов, каждый сектор 512 байт)

Эти действия применяются только к Linux.

  1. Создайте любую виртуальную машину Linux, например Ubuntu, CentOS или другую. Заполните обязательные поля и нажмите кнопку "Далее: Диски".

    Screenshot that shows the Create a virtual machine page with the Next: Disks command button highlighted.

  2. Создайте неуправляемый диск для своей виртуальной машины. Используйте значения по умолчанию или укажите любое значение для полей, таких как размер диска ОС, тип диска ОС и тип шифрования.

    Screenshot image of the Data disks page in the Create a virtual machine flow.

  3. После создания виртуальной машины в левой области выберите диски.

    Screenshot showing how to select disks for a V M.

  4. Подключите VHD в качестве диска данных к виртуальной машине, чтобы создать таблицу разделов.

    1. Выберите " Подключить существующие диски":

      Screenshot showing how to add a data disk to your V H D.

      Screenshot showing how to select the data disk for your V H D.

    2. Найдите свою учетную запись хранения VHD.

    3. Выберите контейнер и выберите виртуальный жесткий диск.

    4. Нажмите ОК.

      Screenshot of the attach unmanaged disk page.

      Ваш VHD будет добавлен как диск данных LUN 0.

  5. Перезапустите виртуальную машину.

  6. После перезапуска виртуальной машины войдите на нее с помощью Putty или другого клиента и выполните команду sudo -i, чтобы получить доступ с правами root.

    Putty client command-line screenshot showing the sudo -i command.

  7. Создайте раздел на своем VHD.

    1. Введите команду fdisk /dev/sdb.

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

    3. Введите d, чтобы удалить все существующие разделы, доступные на вашем VHD. Если этот шаг не требуется, его можно пропустить.

      Putty client command-line screenshot showing the commands for deleting existing partitions.

    4. Введите n, чтобы создать новый раздел, и выберите p (основной раздел).

    5. Введите 2048 в качестве значения первого сектора. Значение последнего сектора можно оставить принятым по умолчанию.

      Важно!

      Все существующие данные будут удалены до 2048 секторов (каждый сектор 512 байт). Создайте резервную копию виртуального жесткого диска перед созданием новой секции.

      Putty client command-line screenshot showing the commands and output for erased data.

    6. Введите w, чтобы подтвердить создание раздела.

      Putty client command-line screenshot showing the commands for creating a partition.

    7. Вы можете проверить таблицу разделов, выполнив команду n fdisk /dev/sdb и введя p. Вы увидите, что раздел создан со значением смещения 2048.

      Putty client command-line screenshot showing the commands for creating the 2048 offset.

  8. Отключите VHD от виртуальной машины и удалите виртуальную машину.

Учетные данные по умолчанию

Никогда не отправляйте учетные данные по умолчанию с отправленным VHD. Добавление учетных данных по умолчанию делает VHD более уязвимым для угроз безопасности. Вместо этого создайте собственные учетные данные при отправке VHD.

DataDisk сопоставлен неправильно

Проблема сопоставления может возникнуть при отправке запроса с несколькими непоследовательными дисками данных. Например, для трех дисков данных порядок нумерации должен быть 0, 1, 2. При любом другом порядке сопоставление считается неверным.

Повторно отправьте запрос с соответствующей последовательностью дисков данных.

Неправильное сопоставление ОС

Созданному образу может быть сопоставлена или назначена неправильная метка ОС. Например, если в качестве части имени ОС выбрано Windows, то во время создания образа диск ОС должен быть установлен только с Windows. Это же требование относится и к Linux.

Виртуальная машина не обобщена

Если все образы, взятые из Azure Marketplace, предстоит использовать повторно, VHD операционной системы должен быть обобщенным.

  • Для Linux следующий процесс обобщает виртуальную машину Linux и повторно развертывает ее как отдельную VM.

    В окне SSH введите следующую команду: sudo waagent -deprovision+user.

  • Для Windows образы Windows обобщается с помощью sysreptool.

    Дополнительные сведения о средстве sysreptool см. в разделе Обзор подготовки системы (Sysprep).

Ошибки DataDisk

Для устранения ошибок, связанных с диском данных, используйте следующую таблицу.

Ошибка Причина Решение
DataDisk- InvalidUrl: Эта ошибка может возникать из-за недопустимого логического номера устройства (LUN) при отправке предложения. Убедитесь, что последовательность номеров LUN для диска данных присутствует в Центре партнеров.
DataDisk- NotFound: Эта ошибка может возникать, если диск данных не находится по указанному подписанному URL-адресу. Убедитесь, что диск данных расположен по указанному подписанному URL-адресу.

Проблема с удаленным доступом

Эта ошибка возникает, если для образа Windows не включен параметр "Протокол удаленного рабочего стола" (RDP).

Включите доступ по протоколу RDP для образов Windows, перед их отправкой.

Сбой журнала Bash

Эта ошибка возникает, если размер журнала Bash в отправленном образе превышает 1 КБ. Размер журнала ограничен 1 КБ, чтобы этот файл не мог содержать потенциально конфиденциальную информацию.

Чтобы удалить журнал Bash, выполните следующие действия.

  1. Разверните виртуальную машину и выберите пункт Run Command (Выполнение команд) на портале Azure.

    Screenshot of the Azure portal with the 'Run Command' option in the left pane.

  2. Выберите первый пункт RunShellScript и выполните команду cat /dev/null > ~/.bash_history && history -c.

    Screenshot of 'Run Command Script' page on the Azure portal.

  3. После успешного выполнения команды перезапустите виртуальную машину.

  4. Обобщите виртуальную машину, возьмите образ VHD и завершите работу виртуальной машины.

  5. Повторно отправьте обобщенный образ.

Проверки виртуальных сетевых устройств

Во время сертификации образов Marketplace предложение виртуальной машины, которое является сетевым виртуальным устройством (NVA), проверяется с помощью тестов, которые являются универсальными для любого предложения виртуальных машин, и тестовые случаи NVA, перечисленные в таблице ниже. Цель этих конкретных проверок NVA заключается в том, чтобы проверить, насколько хорошо образЫ NVA оркестрируется с стеком SDN.

Тестовый случай Действия по выполнению тестового случая Решение
Доступ к виртуальному жесткому диску Убедитесь, что указан правильный URL-адрес SAS для виртуального жесткого диска, разрешения задаются для разрешения доступа и обобщенного образа NVA. Проверьте образ NVA и указанный URL-адрес.
Развертывание NVA Разверните виртуальную машину с помощью NVA с одной сетевой картой. Убедитесь, что развертывание завершено в течение 20 минут. Если развертывание не завершено в течение 20 минут, проверьте образ NVA.
Перезагрузка NVA Разверните виртуальную машину с помощью NVA с одной сетевой картой. Затем перейдите к виртуальной машине в портал Azure и в разделе "Поддержка и устранение неполадок" в левой области выберите "Повторное развертывание и повторное применение" и повторное развертывание виртуальной машины. После завершения повторного развертывания убедитесь, что состояние виртуальной машины запущено, а порт сетевого адаптера 22 доступен с помощью команды Netcat. Если виртуальная машина не возникает после перезагрузки, может возникнуть проблема с образом NVA.

Если тест Netcat завершается ошибкой, это может быть связано с тем, что сетевой адаптер не удалось приступить после перезагрузки, даже если виртуальная машина запущена. Подождите несколько минут и повторите попытку. Если после 20 минут он по-прежнему завершается ошибкой, может возникнуть проблема с образом NVA
Повторное развертывание NVA Разверните виртуальную машину с помощью NVA с одной сетевой картой. Затем повторно разверните виртуальную машину. Убедитесь, что состояние виртуальной машины запущено, а порт сетевого адаптера 22 доступен с помощью команды Netcat. Если повторное развертывание не завершится в течение 15 минут, может возникнуть проблема с образом NVA.

Если тест Netcat завершается ошибкой, это может быть связано с тем, что сетевой адаптер не удалось приступить после перезагрузки, даже если виртуальная машина запущена. Подождите несколько минут и повторите попытку. Если после 20 минут он по-прежнему завершается ошибкой, может возникнуть проблема с образом NVA
Высокий уровень доступности Разверните виртуальную машину с помощью NVA с одной сетевой картой. Не следует присоединять общедоступный IP-адрес к сетевому адаптеру или при присоединении общедоступного IP-адреса номер SKU должен быть стандартным, а метод выделения IP-адресов должен быть статическим. В той же виртуальной сети настройте внутреннюю подсистему балансировки нагрузки Azure, используя приведенную ниже конфигурацию.
— Подсистема балансировки нагрузки с использованием номера SKU уровня "Стандартный"
— интерфейсный IP-адрес с использованием метода выделения частных IP-адресов в качестве динамического
— пробы работоспособности с помощью TCP, порта 22 с интервалом повтора в 15 секунд
— правило балансировки нагрузки с протоколом как все и включите значение False с плавающим IP-адресом.
— серверный пул, указывающий на виртуальную машину NVA.

После готовности программы установки убедитесь, что виртуальная машина NVA доступен в подсистеме балансировки нагрузки с помощью команды Netcat.
Если NVA недоступен для подсистемы балансировки нагрузки, проверьте настройку виртуальной машины, подсистемы балансировки нагрузки и портов высокой доступности. Если все точно, может возникнуть проблема с изображением NVA.
Пиринг виртуальных сетей Разверните виртуальную машину VM1 с помощью образа NVA с одним сетевым адаптером в виртуальной сети VNET1. В другой виртуальной сети VNET2 разверните виртуальную машину виртуальной машины 2 с помощью любого образа Linux, например ubuntu, с одним сетевым адаптером и параметрами виртуальной машины в качестве метода динамического выделения IP-адресов и базового номера SKU. Создание пиринга виртуальной сети между виртуальной сетью1 и виртуальной сетью2 и трафиком к удаленной виртуальной сети настроено как разрешить (по умолчанию)

После готовности программы установки убедитесь, что из VM2 можно получить частный IP-адрес сетевого адаптера на виртуальной машине NVA VM1 с помощью команды Netcat.
Если виртуальная машина NVA1 недоступна из VM2, убедитесь, что пиринг виртуальной сети настроен правильно и повторите попытку. Если он по-прежнему не работает, может возникнуть проблема с изображением NVA.
Ускорение сети (AN) Разверните виртуальную машину с сетевым адаптером с поддержкой NVA и 1 AN. Вы можете включить AN в сетевом адаптере при создании виртуальной машины или в свойствах сетевого адаптера после создания виртуальной машины. Убедитесь, что виртуальная машина будет запущена и запущена. Если развертывание завершается сбоем, убедитесь, что образ NVA поддерживает ускоренную сеть.
Базовый сетевой адаптер с несколькими сетевыми картами Разверните виртуальную машину с помощью NVA с 3 сетевыми адаптерами с помощью метода динамического выделения IP-адресов и базового номера SKU. Получите частный IP-адрес и MAC-адрес для всех сетевых адаптеров (см. инструкции по просмотру сетевого интерфейса ). Затем повторно разверните виртуальную машину и убедитесь, что частный IP-адрес и MAC-адрес для всех сетевых адаптеров остаются неизменными, как и перед повторной развертыванием. Если частный IP-адрес и MAC-адрес для всех сетевых адаптеров изменяются после повторного развертывания, может возникнуть проблема с образом NVA.
Нарушение сети Разверните виртуальную машину с помощью NVA с одной сетевой картой. Затем создайте и примените группу безопасности сети (NSG), чтобы заблокировать весь трафик на виртуальную машину NVA. Затем убедитесь, что состояние виртуальной машины запущено. Если после применения NSG виртуальная машина исчезнет, может возникнуть проблема с образом NVA.

Дополнительные сведения или вопросы см. в случае поддержки Azure.

Обзор Netcat:

Netcat — это команда, способная установить подключение TCP или UDP между двумя компьютерами, то есть она может записывать и считывать через открытый порт. Во время проверки NVA мы выполняем команду Netcat из виртуальной машины, которая находится в той же виртуальной сети, что и виртуальная машина NVA, чтобы проверить, доступен ли TCP-порт 22. Синтаксис команды: nc <destination_ip_address> <destination_port>где

  • destination_ip_address — это частный IP-адрес, назначенный сетевому адаптеру виртуальной машины.
  • destination_port номер порта в NVA. Мы используем 22 в тестовых случаях NVA.

Пример: nc 192.168.1.1 22

Запрос исключения на образы виртуальных машин для выбора тестов

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

В этом разделе описаны общие сценарии, в которых издатели запрашивают исключение, и порядок запроса таких исключений.

Сценарии для исключения

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

  • Исключение для одного или нескольких тестовых случаев. Чтобы запросить исключения для тестовых случаев, обратитесь в службу поддержки Центра партнеров.

  • Заблокированные виртуальные машины / Нет прав доступа root. У некоторых издателей возникают ситуации, когда виртуальные машины должны быть заблокированы, так как на них установлено такое ПО, как брандмауэры. В этом случае скачайте сертифицированное средство тестирования и отправьте отчет в службу поддержки Центра партнеров.

  • Пользовательские шаблоны. Некоторые издатели публикуют образы VM, для развертывания которых требуется пользовательский шаблон Azure Resource Manager (ARM). В этом случае отправьте настраиваемые шаблоны в службу поддержки Центра партнеров, которые будут использоваться командой сертификации для проверки.

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

Обратитесь в службу поддержки Центра партнеров, чтобы запросить исключение для одного из сценариев и включите следующие сведения.

  • Идентификатор издателя. Введите свой идентификатор издателя портала Центра партнеров.

  • ИД или название предложения. Введите идентификатор или название предложения.

  • Номер SKU или ИД плана. Введите номер SKU или идентификатор плана предложения VM.

  • Версия. Введите версию предложения VM, для которого требуется исключение.

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

  • Причина запроса. Укажите причину запроса исключения и любые сведения об исключениях тестов.

  • Продолжительность. Введите дату окончания для вашего исключения.

  • Вложение. Прикрепленные важные документы свидетельств.

    • Для заблокированных VM прикрепите тестовый отчет.
    • Для пользовательских шаблонов предоставьте во вложении пользовательский шаблон ARM.

    Если эти вложения отсутствуют, запрос будет отклонен.

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

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

Примечание.

Вы не можете удалить последний образ VM из плана или прекратить продажу последнего плана для предложения.

Выполните одно из следующих действий.

Предоставление исправленного образа VM

Чтобы предоставить исправленный образ VM для замены образа VM с уязвимостью или эксплойтом, выполните следующие действия.

  1. Предоставьте новый образ VM для устранения уязвимости системы безопасности или эксплойта.
  2. Удалите образ VM с уязвимостью системы безопасности или эксплойтом.
  3. Повторно опубликуйте предложение.

Предоставление нового образа VM для устранения уязвимости системы безопасности или эксплойта

Чтобы выполнить эти действия, подготовьте технические ресурсы для образа VM, который вы хотите добавить. Дополнительные сведения см. в разделах Создание виртуальной машины с помощью утвержденной базы или Создание виртуальной машины с помощью собственного образа и Создание URI SAS для образа виртуальной машины.

  1. Войдите в Центр партнеров.

  2. На домашней странице выберите плитку Предложения Marketplace.

  3. В столбце Offer alias (Псевдоним предложения) выберите предложение.

  4. На вкладке Обзор плана выберите соответствующий план.

  5. На вкладке Technical configuration (Техническая конфигурация) в разделе VM Images (Образы VM) нажмите + Add VM Image (Добавить образ VM).

    Примечание.

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

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

  7. Выберите элемент Сохранить черновик.

Затем удалите уязвимый образ VM.

Удаление образа VM с уязвимостью системы безопасности или эксплойтом

  1. Войдите в Центр партнеров.
  2. На домашней странице выберите плитку Предложения Marketplace.
  3. В столбце Offer alias (Псевдоним предложения) выберите предложение.
  4. На вкладке Обзор плана выберите соответствующий план.
  5. На вкладке Technical configuration (Техническая конфигурация) в разделе VM Images (Образы VM) нажмите Remove VM Image (Удалить образ VM) рядом с образом, который нужно удалить.
  6. В диалоговом окне нажмите Продолжить.
  7. Выберите элемент Сохранить черновик.

Затем заново опубликуйте предложение.

Повторная публикация предложения

  1. Нажмите Review and publish (Проверить и опубликовать).
  2. Если необходимо предоставить какие-либо сведения для команды сертификации, добавьте их в поле примечаний для сертификации.
  3. Выберите Опубликовать.

О том, как завершить процесс публикации, см. в разделе Просмотр и публикация предложений.

Образы VM с ограниченным доступом или требующие пользовательских шаблонов

Предложение заблокированных VM или с отключенным SSH

Образы, опубликованные с отключенными SSH (для Linux) или отключенными RDP (для Windows), обрабатываются как заблокированные виртуальные машины. Существуют особые бизнес-сценарии, в которых издатели не разрешают доступ или разрешают всего нескольким пользователям.

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

Пользовательские шаблоны

Как правило, все образы, опубликованные в рамках одной виртуальной машины, соответствуют стандартному шаблону ARM для развертывания. Однако существуют сценарии, в которых издателю может потребоваться настройка при развертывании виртуальных машин (например, нескольких сетевых адаптеров).

В зависимости от следующих сценариев (неисчерпаемых), издатели используют пользовательские шаблоны для развертывания виртуальной машины:

  • Для виртуальной машины требуются дополнительные подсети сети.
  • Дополнительные метаданные для вставки в шаблон ARM.
  • До развертывания шаблона ARM необходимо выполнить некоторые команды.

Расширения виртуальной машины

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

Для проверки расширений VM Linux необходимо, чтобы в образ входили следующие компоненты:

Дополнительные сведения см . в расширении виртуальной машины.

Проверка целостности изображения

Если вы создаете образ и создаете диск из образа, чтобы проверить целостность образа, обратите внимание, что первые 1 МБ зарезервированы для оптимизированной производительности, а последние 512 байт зарезервированы для нижнего колонтитула VHD. Поэтому игнорируйте их при проверке целостности изображения.

Следующие шаги