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


Методы устранения неполадок установки helm во время развертывания контейнерной сетевой функции (CNF) оператора Azure Service Manager (AOSM)

CNFs может быть как простой, как один пакет helm с небольшим количеством параметров конфигурации, или как сложный, как десятки пакетов helm с тысячами параметров конфигурации. В этой статье описывается ряд распространенных действий по устранению неполадок при отладке сбоев установки helm.

Убедитесь, что пакет Helm устанавливается правильно с помощью команд direct helm

AOSM не может установить CNF, созданный из неправильных диаграмм helm или неправильно настроенных values.yaml файлов. Существует два основных предварительных требования:

  • Каждая диаграмма helm, включенная в CNF, должна передаваться helm template при предоставлении набора значений, используемых для развертывания диаграммы.
  • helm install необходимо выполнить успешное выполнение непосредственно в кластере Kubernetes, подключенном к Azure Arc.

Убедитесь, что диаграммы helm соответствуют этим предварительным требованиям. Убедитесь, что вы тестируете те же значения helm, которые вы планируете использовать при развертывании с помощью AOSM.

Убедитесь, что шаблон ARM сетевой функции (NF) имеет --atomic значение false

По умолчанию AOSM удаляет неудачные установки из кластера, чтобы сократить использование ресурсов. Это предотвращает подробную отладку в сценариях сбоя. Шаблон NF ARM поддерживает переопределение этого поведения. Используйте это руководство по настройке AOSM для выхода из строя неудачных установок.

Убедитесь, что шаблон Azure Resource Manager (ARM) сетевой функции (NF) использует внедрение хранилища артефактов

AOSM поддерживает подключение диаграмм helm нулевого касания. Эта функция настраивается в шаблоне NF ARM и автоматически включена при подключении CNF с помощью расширения Az CLI AOSM.

  1. Скачайте шаблон NF ARM из Хранилища артефактов.
  2. Убедитесь, что roleOverrideValues свойство содержит Microsoft.HybridNetwork/networkFunctions следующий фрагмент кода. В этом фрагменте используется вымышленная компания Contoso CNF, построенная из трех независимых диаграмм helm. Эти диаграммы helm моделироваются как три приложения сетевых функций в версии определения сетевой функции (NFDV). Шаблон ARM должен содержать один элемент в массиве roleOverrideValues для каждого приложения сетевой функции в NFDV.
roleOverrideValues: ["{\"name\": \"Contoso-one\", \"deployParametersMappingRuleProfile\": {\"applicationEnablement\": \"Enabled\", \"helmMappingRuleProfile\": {\"options\": {\"installOptions\": {\"injectArtifactStoreDetails\":\"true\"}},{\"upgradeOptions\": {\"injectArtifactStoreDetails\":\"true\"}}}}},{\"name\": \"Contoso-two\", \"deployParametersMappingRuleProfile\": {\"applicationEnablement\": \"Enabled\", \"helmMappingRuleProfile\": {\"options\": {\"installOptions\": {\"injectArtifactStoreDetails\":\"true\"}},{\"upgradeOptions\": {\"injectArtifactStoreDetails\":\"true\"}}}}},{\"name\": \"Contoso-three\", \"deployParametersMappingRuleProfile\": {\"applicationEnablement\": \"Enabled\", \"helmMappingRuleProfile\": {\"options\": {\"installOptions\": {\"injectArtifactStoreDetails\":\"true\"}},{\"upgradeOptions\": {\"injectArtifactStoreDetails\":\"true\"}}}}}"]

Если шаблон ARM не содержит \"injectArtifactStoreDetails\":\"true\" параметр для каждого приложения сетевой функции, измените шаблон ARM, чтобы включить параметр для каждого приложения сетевой функции в NFDV и отправить шаблон ARM в Хранилище артефактов.

Используйте портал Azure AOSM для просмотра ошибки развертывания SNS

  1. Перейдите к портал Azure и откройте группу ресурсов, в который развернута служба сети сайта (SNS)
  2. Выберите страницу "Развертывания" в меню "Группа ресурсов"
  3. Откройте страницу развертывания для развертывания, соответствующего сбою развертывания SNS, и нажмите кнопку сведений об ошибке Снимок экрана: сведения об ошибке при развертывании службы сети сайта.

Используйте портал Azure AOSM для просмотра ошибки развертывания NF

  1. Доступ к портал Azure и открытие группы ресурсов, развернутой в SNS
  2. Откройте обзор SNS и щелкните ссылку на свойство ResourcesСнимок экрана: размещенная группа ресурсов, развернутая службой сети сайта.
  3. Выберите страницу "Развертывания" в меню "Группа ресурсов".
  4. Нажмите кнопку сведений об ошибке для развертывания, соответствующего развертыванию сбоем NFСнимок экрана: сведения об ошибке развертывания сбой сетевой функции.

Используйте портал Azure AOSM для просмотра параметров развертывания сетевых функций

  1. Доступ к портал Azure и открытие группы ресурсов, развернутой в SNS
  2. Откройте обзор SNS и щелкните ссылку на свойство ResourcesСнимок экрана: размещенная группа ресурсов, развернутая службой сети сайта.
  3. Откройте обзор NF и нажмите кнопку "Открыть как JSON " для свойства "Значения развертывания" Снимок экрана: значения, передаваемые в развертывание сетевой функции.

В этом представлении показаны значения, переданные в операцию развертывания NF. Эти значения включены в команду, используемую helm install для развертывания NF. Неправильно настроенные, непредвиденные, отсутствующие или неправильно отформатированные значения могут привести к сбою helm install команды.

Используйте портал Azure AOSM для просмотра параметров развертывания компонента сетевой функции

  1. Доступ к портал Azure и открытие группы ресурсов, развернутой в SNS
  2. Откройте обзор SNS и щелкните ссылку на свойство ResourcesСнимок экрана: размещенная группа ресурсов, развернутая службой сети сайта.
  3. Откройте обзор NF и перейдите на страницу "Компоненты " в меню ресурсов.
  4. Нажмите клавишу Open View в формате JSON для интересующего компонента. Снимок экрана: значения, переданные команде установки helm.

В этом представлении показаны значения, передаваемые диаграмме helm в команде helm install . Каждое значение передается команде helm install с помощью --set. Неправильно настроенные, непредвиденные, отсутствующие или неправильно отформатированные значения могут привести к сбою helm install команды.