Когда вы публикуете образ виртуальной машины в Azure Marketplace, команда Azure проверяет его безопасность, совместимость с Azure и возможность использовать в качестве загрузочного. Если образ виртуальной машины не пройдет какой-либо из тестов на высокое качество, он не будет опубликован. Вы получите сообщение об ошибке с описанием проблемы.
В этой статье приведены объяснения распространенных сообщений об ошибках во время публикации образа виртуальной машины и предложены соответствующие решения.
Примечание.
Если у вас есть вопросы по этой статье или предложения по улучшению, обратитесь в службу поддержки Центра партнеров.
Сбой расширения виртуальной машины
Проверьте, поддерживает ли ваш образ расширения VM.
Чтобы включить расширения VM, выполните следующие действия.
Выберите виртуальную машину Linux.
Перейдите в раздел Параметры диагностики.
Включите базовые матрицы, обновив учетную запись хранения.
Выберите Сохранить.
Чтобы убедиться, что расширения VM должным образом активированы, выполните следующие действия.
На виртуальной машине перейдите на вкладку расширений VM и проверьте состояние расширения системы диагностики Linux.
Проверьте состояние подготовки.
- Если состояние подготовлено успешно, тестовый случай расширений прошел.
- Если состояние подготовлено сбоем, тестовый случай расширений завершился сбоем, и необходимо задать флаг "Затверденный".
Если происходит сбой расширения VM, сведения о его включении см. в разделе Использование диагностического расширения Linux для мониторинга метрик и журналов. Если вы не хотите, чтобы расширение VM было включено, обратитесь в службу технической поддержки и попросите его отключить.
Проблема с подготовкой виртуальных машин
Перед отправкой предложения убедитесь, что вы следовали процессу подготовки виртуальной машины. О том, как просмотреть сведения о подготовке VM в формате JSON, см. в разделе Тестирование образа виртуальной машины.
Проблемы подготовки могут включать следующие сценарии сбоя.
Сценарий | Ошибка | Причина | Решение |
---|---|---|---|
1 | Недопустимый виртуальный жесткий диск (VHD) | Если указанное значение файла cookie в нижнем колонтитуле VHD неверно, виртуальный жесткий диск считается недопустимым. | Повторно создайте образ и отправьте запрос. |
2 | Недопустимый тип BLOB-объекта | Не удалось подготовить виртуальную машину, так как используемый BLOB-объект является блочным, а не страничным. | Повторно создайте образ со страничным типом и отправьте запрос. |
3 | Превышение времени ожидания или неправильное обобщение подготовки | Это проблема обобщения виртуальной машины. | Повторно создайте образ с обобщением и отправьте запрос. |
Примечание.
Дополнительные сведения об обобщении VM см. в следующей документации:
Примечание.
Если при подготовке к работе возникает ошибка, так как для создания образа виртуальной машины требуется развернуть настраиваемый шаблон ARM, установите флажок "Требуется настраиваемый шаблон ARM для развертывания" на странице "Техническая конфигурация" в Центре партнеров. Это помогает группе сертификации принять надлежащие меры для этого запроса, не завершив ошибку при подготовке.
Спецификации VHD
Файлы cookie conectix и другие спецификации 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, для процесса сертификации, выполните следующие действия.
Запустите новейшее средство проверки для сертификации виртуальных машин Azure на своем образе.
Отправьте запрос в службу поддержки. Обязательно прикрепите отчет набора средств и предоставьте следующие сведения о предложении.
- Название предложения
- Имя издателя
- Идентификатор плана / номер SKU и версия
Повторно отправьте запрос на сертификацию.
Примечание.
Если вы публикуете заблокированный образ виртуальной машины, который отключен или ограничен, включите флажок "Удаленный рабочий стол или SSH отключен" на странице "Техническая конфигурация" Центра партнеров. Это сообщает группе сертификации, что это по проектированию и выполнению правильных проверок на изображении без сбоя в доступе с ограниченным доступом.
Сбой загрузки
В следующей таблице представлены проблемы, которые могут возникнуть при скачивании образа виртуальной машины с подписанным 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 добавлять важные метаданные в образ (например, метаданные для улучшения времени загрузки для клиентов, выставления счетов и других сведений). Это рекомендация, которая рекомендуется, если вы уже используете утвержденный базовый образ , а образ имеет допустимый тег выставления счетов. Однако если образ не имеет допустимого тега выставления счетов, публикация может завершиться ошибкой, если первый 1 МБ диска ОС не пуст.
Если вы создаете собственный образ, который не имеет допустимого тега выставления счетов, убедитесь, что первые 2048 секторов (1 МБ) диска ОС пусты. В противном случае публикация завершится ошибкой. Это требование относится только к диску ОС (не к дискам данных). Если вы создаете образ из утвержденной базы, он уже будет иметь 1 МБ пустым. Следовательно, вам не нужно работать над ним отдельно.
Чтобы освободить первые 1 МБ на диске ОС, выполните действия, описанные в следующем разделе.
Как сохранить 1 МБ свободного места на пустом виртуальном жестком диске (2048 секторов, каждый сектор 512 байт)
Эти действия применяются только к Linux.
Создайте любую виртуальную машину Linux, например Ubuntu, CentOS или другую. Заполните обязательные поля и нажмите кнопку "Далее: Диски".
Создайте неуправляемый диск для своей виртуальной машины. Используйте значения по умолчанию или укажите любое значение для полей, таких как размер диска ОС, тип диска ОС и тип шифрования.
После создания виртуальной машины в левой области выберите диски.
Подключите VHD в качестве диска данных к виртуальной машине, чтобы создать таблицу разделов.
Выберите " Подключить существующие диски":
Найдите свою учетную запись хранения VHD.
Выберите контейнер и выберите виртуальный жесткий диск.
Нажмите ОК.
Ваш VHD будет добавлен как диск данных LUN 0.
Перезапустите виртуальную машину.
После перезапуска виртуальной машины войдите на нее с помощью Putty или другого клиента и выполните команду
sudo -i
, чтобы получить доступ с правами root.Создайте раздел на своем VHD.
Введите команду
fdisk /dev/sdb
.Чтобы просмотреть список существующих разделов на VHD, введите
p
.Введите
d
, чтобы удалить все существующие разделы, доступные на вашем VHD. Если этот шаг не требуется, его можно пропустить.Введите
n
, чтобы создать новый раздел, и выберитеp
(основной раздел).Введите 2048 в качестве значения первого сектора. Значение последнего сектора можно оставить принятым по умолчанию.
Внимание
Все существующие данные будут удалены до 2048 секторов (каждый сектор 512 байт). Создайте резервную копию виртуального жесткого диска перед созданием новой секции.
Введите
w
, чтобы подтвердить создание раздела.Вы можете проверить таблицу разделов, выполнив команду
n fdisk /dev/sdb
и введяp
. Вы увидите, что раздел создан со значением смещения 2048.
Отключите 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, выполните следующие действия.
Разверните виртуальную машину и выберите пункт Run Command (Выполнение команд) на портале Azure.
Выберите первый пункт RunShellScript и выполните команду
cat /dev/null > ~/.bash_history && history -c
.После успешного выполнения команды перезапустите виртуальную машину.
Обобщите виртуальную машину, возьмите образ VHD и завершите работу виртуальной машины.
Повторно отправьте обобщенный образ.
Проверки виртуальных сетевых устройств
Во время сертификации образов 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 для замены единственного образа VM в плане или если вы закончили работу с планом, прекратите распространение плана.
- Если вы не планируете заменять единственный образ VM в предложении, рекомендуется прекратить распространение этого предложения.
Предоставление исправленного образа VM
Чтобы предоставить исправленный образ VM для замены образа VM с уязвимостью или эксплойтом, выполните следующие действия.
- Предоставьте новый образ VM для устранения уязвимости системы безопасности или эксплойта.
- Удалите образ VM с уязвимостью системы безопасности или эксплойтом.
- Повторно опубликуйте предложение.
Предоставление нового образа VM для устранения уязвимости системы безопасности или эксплойта
Чтобы выполнить эти действия, подготовьте технические ресурсы для образа VM, который вы хотите добавить. Дополнительные сведения см. в разделах Создание виртуальной машины с помощью утвержденной базы или Создание виртуальной машины с помощью собственного образа и Создание URI SAS для образа виртуальной машины.
Войдите в Центр партнеров.
На домашней странице выберите плитку Предложения Marketplace.
В столбце Offer alias (Псевдоним предложения) выберите предложение.
На вкладке Обзор плана выберите соответствующий план.
На вкладке Technical configuration (Техническая конфигурация) в разделе VM Images (Образы VM) нажмите + Add VM Image (Добавить образ VM).
Примечание.
За один раз можно добавить только один образ VM в один план. Чтобы добавить несколько образов VM, сначала опубликуйте первый образ, а потом добавьте следующий.
В появившихся полях укажите новую версию диска и образ виртуальной машины.
Выберите элемент Сохранить черновик.
Затем удалите уязвимый образ VM.
Удаление образа VM с уязвимостью системы безопасности или эксплойтом
- Войдите в Центр партнеров.
- На домашней странице выберите плитку Предложения Marketplace.
- В столбце Offer alias (Псевдоним предложения) выберите предложение.
- На вкладке Обзор плана выберите соответствующий план.
- На вкладке Technical configuration (Техническая конфигурация) в разделе VM Images (Образы VM) нажмите Remove VM Image (Удалить образ VM) рядом с образом, который нужно удалить.
- В диалоговом окне нажмите Продолжить.
- Выберите элемент Сохранить черновик.
Затем заново опубликуйте предложение.
Повторная публикация предложения
- Нажмите Review and publish (Проверить и опубликовать).
- Если необходимо предоставить какие-либо сведения для команды сертификации, добавьте их в поле примечаний для сертификации.
- Выберите Опубликовать.
О том, как завершить процесс публикации, см. в разделе Просмотр и публикация предложений.
Образы VM с ограниченным доступом или требующие пользовательских шаблонов
Предложение заблокированных VM или с отключенным SSH
Образы, опубликованные с отключенными SSH (для Linux) или отключенными RDP (для Windows), обрабатываются как заблокированные виртуальные машины. Существуют особые бизнес-сценарии, в которых издатели не разрешают доступ или разрешают всего нескольким пользователям.
Во время проверок заблокированные виртуальные машины могут не разрешать выполнение определенных команд сертификации.
Пользовательские шаблоны
Как правило, все образы, опубликованные в рамках одной виртуальной машины, соответствуют стандартному шаблону ARM для развертывания. Однако существуют сценарии, в которых издателю может потребоваться настройка при развертывании виртуальных машин (например, нескольких сетевых адаптеров).
В зависимости от следующих сценариев (неисчерпаемых), издатели используют пользовательские шаблоны для развертывания виртуальной машины:
- Для виртуальной машины требуются дополнительные подсети сети.
- Дополнительные метаданные для вставки в шаблон ARM.
- До развертывания шаблона ARM необходимо выполнить некоторые команды.
Расширения виртуальной машины
Расширения виртуальных машин Azure — это небольшие приложения, которые выполняют задачи настройки и автоматизации после развертывания виртуальных машин Azure. Например, если на виртуальную машину требуется установить программное обеспечение, антивирусную защиту или выполнить сценарий внутри него, можно использовать расширение виртуальной машины.
Для проверки расширений VM Linux необходимо, чтобы в образ входили следующие компоненты:
- Необходимо установить минимальный поддерживаемый агент Azure Linux или более поздней версии.] (https://learn.microsoft.com/troubleshoot/azure/virtual-machines/support-extensions-agent-version)
- Версия Python выше 2.6+
Дополнительные сведения см . в расширении виртуальной машины.
Проверка целостности изображения
Если вы создаете образ и создаете диск из образа для проверки целостности образа, обратите внимание, что первые 1 МБ зарезервированы для оптимизированной производительности и последние 512 байт зарезервированы для нижнего колонтитула VHD. Поэтому игнорируйте их при проверке целостности изображения.
Связанный контент
- Настройка свойств предложения виртуальной машины
- Активные вознаграждения Marketplace
- Если у вас есть вопросы или предложения по улучшению, обратитесь в службу поддержки Центра партнеров.