Problemen oplossen tijdens het publiceren van een Kubernetes-containeraanbieding op basis van een toepassing
Na publicatie doorloopt een Container-aanbieding op basis van een Kubernetes-toepassing de volgende stroom op hoog niveau voor bundelverwerking.
Eerst wordt de inhoud van de Cloud Native Application Bundle (CNAB) gekopieerd uit uw eigen register naar een microsoft-Azure Container Registry (ACR). Van daaruit wordt het scannen van beveiligingsproblemen uitgevoerd om ervoor te zorgen dat installatiekopieën veilig zijn. Ten slotte wordt de Kubernetes-toepassing geregistreerd als een extensietype voor een Azure Kubernetes Service -cluster (AKS). Als het publiceren mislukt, kan dit een probleem zijn met een van deze onderdelen. Zie hieronder voor veelvoorkomende fouten en gerelateerde risicobeperkingsstappen.
Publiceren mislukt met ontbrekende artefacten in de CNAB
Fout | Beschrijving | Actie |
---|---|---|
'extensionRegistrationParameters kan niet null of leeg zijn in manifest.yaml van uw pakket. Voor meer informatie raadpleegt https://aka.ms/K8sOfferAssets#create-the-manifest-file u " | Kubernetes-toepassingen worden verpakt als AKS-clusterextensies. Het manifestbestand biedt invoer voor het maken van het extensietype. | Lees de beschrijving voor elke eigenschap en geef de informatie op. |
'naamruimte kan niet null of leeg zijn voor defaultScope als cluster in extensionRegistrationParameters in manifest.yaml van uw pakket. Raadpleeg https://aka.ms/K8sOfferAssets#create-the-manifest-file"voor meer informatie; | Kubernetes-toepassingen die zijn geïnstalleerd op clusterbereik, gebruiken het standaardbereik dat is opgegeven als de naamruimte. | Zorg ervoor dat u een naamruimte opgeeft in de extensionRegistrationParameters sectie van het manifestbestand |
Publiceren mislukt tijdens het kopiëren van de artefacten van uw ACR naar een ACR die eigendom is van Microsoft
Fout | Beschrijving | Actie |
---|---|---|
'Toegang tot register {sourceACRName} is geweigerd. Geef MarketPlace toegang tot het register. raadpleegt u: https://aka.ms/K8sOfferAssets#grant-access-to-your-azure-container-registry " | Tijdens het publicatieproces verplaatst Microsoft uw Kubernetes-toepassing, die is verpakt als CNAB en geüpload naar een ACR, naar een register dat eigendom is van Microsoft. Om dit te doen, moet de eigen app van Microsoft die verantwoordelijk is voor dit proces, worden voorzien van machtigingen. Deze fout wordt weergegeven als de Marketplace-publicatie is uitgevoerd zonder de machtigingen op te geven. |
Geef de eigen app van Microsoft de juiste machtigingen. |
'CNAB-opslagplaats {cnabBundle} is niet gevonden in register {sourceACRName}. Geef MarketPlace toegang tot het register. raadpleegt u: https://aka.ms/K8sOfferAssets#grant-access-to-your-azure-container-registry " | De Kubernetes-toepassing die is verpakt met behulp van het CPA-hulpprogramma, kan niet worden gevonden in uw ACR. | Zorg ervoor dat de bundel is geüpload naar uw register en geef de eigen app van Microsoft de juiste machtigingen. |
"De CNAB is bijgewerkt zonder de versie bij te werken. Publiceer opnieuw en verhoog uw versie van {latestBundle.tag} naar {currentTag.Major}. {currentTag.Minor}. {currentTag.Build + 1}." | Een plan met dezelfde versie is al gepubliceerd met behulp van een andere CNAB. | Als uw CNAB-inhoud is gewijzigd, verhoog dan de abonnementsversie en probeer opnieuw te publiceren. |
Publiceren mislukt met de fout 'ResourceGroup AllowExisting moet worden ingesteld op true in de configuratie van CreateUIDefinition'
Deze fout treedt op als de > parameter config > basics > resourceGroup > allowExisting eigenschap in het createUiDefinition.json
bestand niet bestaat of niet is ingesteld op true.
U kunt deze fout oplossen door ervoor te zorgen dat de eigenschap is ingesteld op true, zoals wordt weergegeven in het onderstaande voorbeeld:
Door de eigenschap allowExisting in te stellen op true, kan uw toepassing worden geïmplementeerd in een resourcegroep die niet leeg is. Zie het voorbeeld in createUiDefinition.json voor een voorbeeldbestand createUIDefinition.
Publiceren mislukt met platformfouten
Fout | Beschrijving | Actie |
---|---|---|
Interne serverfout | Dit kan een tijdelijke fout zijn. | Probeer opnieuw te publiceren. |
Scannen op beveiligingsproblemen
U kunt ook fouten tegenkomen als gevolg van beveiligingsproblemen in uw installatiekopieën. Zie Problemen met containercertificering oplossen voor meer informatie over het scannen van beveiligingsproblemen en het oplossen van problemen.