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


Устранение неполадок при публикации предложения контейнеризации, основанного на приложении Kubernetes

После публикации предложение контейнерного приложения на основе Kubernetes проходит следующий высокоуровневый процесс обработки пакетов.

Диаграмма, показывающая три этапа обработки пакета: от

Во-первых, содержимое пакета облачных собственных приложений (CNAB) копируется из собственного реестра в реестр контейнеров Azure, принадлежащий Майкрософт (ACR). Оттуда выполняется сканирование уязвимостей, чтобы обеспечить безопасность изображений. Наконец, приложение Kubernetes регистрируется в качестве расширения типа для кластера Службы Azure Kubernetes (AKS). Если публикация завершается ошибкой, проблему можно связать с одним из этих компонентов. Ниже приведены распространенные ошибки и связанные действия по устранению рисков.

Сбой публикации из-за отсутствия артефактов в CNAB

Ошибка Описание Действие
extensionRegistrationParameters не должны быть нулевыми или пустыми в файле manifest.yaml вашего пакета. Дополнительные сведения см. в статье Создание файла манифеста Приложения Kubernetes упаковываются в виде расширений кластера AKS. Файл манифеста предоставляет входные данные для создания типа расширения. Ознакомьтесь с описанием каждого свойства и укажите сведения.
"Пространство имен не может быть null или пустым для defaultScope в качестве кластера в файле manifest.yaml вашего пакета." Дополнительные сведения см. в статье Создание файла манифеста Приложения Kubernetes, установленные в масштабе кластера, используют пространство имен по умолчанию. Обязательно укажите пространство имен в секции extensionRegistrationParameters вашего файла манифеста.

Публикация завершается сбоем при копировании артефактов из вашего Azure Container Registry в принадлежащее Майкрософт хранилище.

Ошибка Описание Действие
"Доступ к реестру {sourceACRName} был отклонен. Необходимо предоставить доступ к реестру MarketPlace. Дополнительные сведения см. в статье Предоставление доступа к реестру контейнеров Azure Во время процесса публикации корпорация Майкрософт переносит ваше приложение Kubernetes, упакованное как CNAB и загруженное в ACR, в реестр, принадлежащий Майкрософт.

Для этого фирменное приложение Microsoft, ответственное за этот процесс, должно получить разрешения. Эта ошибка возникает, если публикация Marketplace была выполнена без предоставления разрешений.
Для получения дополнительной информации см. раздел Предоставление корпоративному приложению Майкрософт соответствующих разрешений.
"Репозиторий CNAB {cnabBundle} не найден в реестре {sourceACRName}. Необходимо предоставить доступ к реестру MarketPlace. Дополнительные сведения см. в статье Предоставление доступа к реестру контейнеров Azure Приложение Kubernetes, упаковаемое с помощью средства CPA, невозможно найти в ACR. Убедитесь, что пакет успешно отправлен в реестр, и предоставьте собственному приложению Microsoft соответствующие разрешения.
"CNAB был обновлён без изменения версии." Вам следует повторно опубликовать и увеличить версию с {latestBundle.tag} до {currentTag.Major}.{currentTag.Minor}.{currentTag.Build + 1}. План с той же версией уже опубликован с использованием другого CNAB. Если содержимое CNAB изменено, увеличьте версию плана и попытайтесь заново опубликовать.

Публикация не удалась с ошибкой: 'В конфигурации CreateUIDefinition параметр ResourceGroup AllowExisting должен быть установлен в true'.

Эта ошибка возникает, если свойства > конфигурации > основы > resourceGroup > allowExisting в файле createUiDefinition.json не существуют или не заданы в true.

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

снимок экрана файла createUiDefinition.json с соответствующими параметрами.

Вы можете развернуть ваше приложение в группе ресурсов, которая не пуста, установив для свойства 'allowExisting' значение true. Пример файла CreateUIDefinition см. в примере createUiDefinition.json.

Сбой публикации из-за ошибок платформы

Ошибка Описание Действие
Внутренняя ошибка сервера Может быть временной ошибкой. Повторите попытку публикации.

Сканирование уязвимостей

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