Tekniker för att felsöka helm-installationsfel under distribution av containerbaserad nätverksfunktion (CNF) i Azure Operator Service Manager (AOSM)
CNF:er kan vara så enkla som ett enda helm-paket med ett litet antal konfigurationsparametrar, eller så komplexa som tiotals helm-paket med tusentals konfigurationsparametrar. Den här artikeln beskriver en serie vanliga felsökningssteg för felsökning av helm-installationsfel.
Bekräfta att helm-paketet installeras korrekt med hjälp av direkt helm-kommandon
AOSM kan inte installera en CNF som bygger på felaktiga helm-diagram eller felkonfigurerade values.yaml
filer. Det finns två grundläggande förutsättningar:
- Varje helm-diagram som ingår i CNF måste skickas
helm template
när det tillhandahålls med den uppsättning värden som används för att distribuera diagrammet helm install
måste lyckas när det körs direkt i Det Azure Arc-anslutna Kubernetes-klustret
Testa att helm-diagrammen uppfyller dessa krav. Kontrollera att du testar med samma helm-värden som du tänker använda när du distribuerar via AOSM.
- Du kan ansluta till ditt Azure Operator Nexus Kubernetes-kluster med hjälp av klusteranslutning och använda helm-installation för att installera helm-diagram.
Bekräfta att nätverksfunktionens ARM-mall (NF) har --atomic
angetts till false
Som standard tar AOSM bort misslyckade installationer från klustret för att minska resursanvändningen. Detta förhindrar detaljerad felsökning i felscenarier. NF ARM-mallen stöder åsidosättande av det här beteendet. Använd den här instruktionsguiden för att konfigurera AOSM för att lämna misslyckade installationer på plats.
Bekräfta att din nätverksfunktionsmall (NF) Azure Resource Manager (ARM) använder artefaktarkivinmatning
AOSM stöder zero-touch-registrering av helm-diagram. Den här funktionen konfigureras i NF ARM-mallen och aktiveras automatiskt om du registrerade CNF med hjälp av Az CLI AOSM-tillägget.
- Ladda ned NF ARM-mallen från Artifact Store.
- Bekräfta att
roleOverrideValues
egenskapen förMicrosoft.HybridNetwork/networkFunctions
innehåller följande kodfragment. Det här kodfragmentet använder en fiktiv Contoso CNF som skapats från tre oberoende helm-diagram. Dessa helm-diagram modelleras som tre nätverksfunktionsprogram i nätverksfunktionsdefinitionsversionen (NFDV). ARM-mallen bör ha ett element i matrisenroleOverrideValues
för varje nätverksfunktionsprogram i 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\"}}}}}"]
Om ARM-mallen \"injectArtifactStoreDetails\":\"true\"
inte innehåller inställningen för varje nätverksfunktionsprogram redigerar du ARM-mallen så att den innehåller inställningen för varje nätverksfunktionsprogram i NFDV och laddar upp ARM-mallen till Artifact Store.
Använd AOSM Azure-portalen för att visa SNS-distributionsfelet
- Öppna Azure-portalen och öppna resursgruppen som du distribuerade SNS (Site Network Service) till
- Välj sidan Distributioner på menyn Resursgrupp
- Öppna distributionssidan för distributionen som motsvarar din misslyckade SNS-distribution och välj knappen felinformation
Använd AOSM Azure-portalen för att visa NF-distributionsfelet
- Öppna Azure-portalen och öppna resursgruppen som du distribuerade SNS till
- Öppna SNS-översikten och klicka på länken till egenskapen Resurser
- Välj sidan Distributioner på menyn Resursgrupp.
- Välj knappen felinformation för distributionen som motsvarar den misslyckade NF-distributionen
Använd AOSM Azure-portalen för att visa parametrarna för nätverksfunktionens distribution
- Öppna Azure-portalen och öppna resursgruppen som du distribuerade SNS till
- Öppna SNS-översikten och klicka på länken till egenskapen Resurser
- Öppna NF-översikten och klicka på knappen Öppna som JSON för egenskapen Distributionsvärden
Den här vyn visar de värden som har skickats till NF-distributionsåtgärden. Dessa värden ingår i kommandot helm install
som används för att distribuera NF. Felkonfigurerade, oväntade, saknade eller felaktigt formaterade värden kan orsaka helm install
att kommandot misslyckas.
Använd AOSM Azure-portalen för att visa distributionsparametrarna för nätverksfunktionens komponent
- Öppna Azure-portalen och öppna resursgruppen som du distribuerade SNS till
- Öppna SNS-översikten och klicka på länken till egenskapen Resurser
- Öppna NF-översikten och gå till sidan Komponenter från resursmenyn.
- Tryck på Öppna vy som JSON för komponenten av intresse.
Den här vyn visar de värden som skickas till helm-diagrammet i helm install
kommandot. Varje värde skickas till helm install
kommandot med hjälp av --set
. Felkonfigurerade, oväntade, saknade eller felaktigt formaterade värden kan orsaka helm install
att kommandot misslyckas.