Serviço de Aplicativo, Functions och Logic Apps i Azure Arc (förhandsversion)

Du kan köra Serviço de Aplicativo, Functions och Logic Apps i ett Azure Arc-aktiverat Kubernetes-kluster. Kubernetes-klustret kan finnas lokalt eller finnas i ett moln från tredje part. Med den här metoden kan apputvecklare dra nytta av funktionerna i Serviço de Aplicativo. Samtidigt kan it-administratörerna upprätthålla företagets efterlevnad genom att vara värd för Serviço de Aplicativo appar i intern infrastruktur. Det gör också att andra IT-operatörer kan skydda sina tidigare investeringar i andra molnleverantörer genom att köra Serviço de Aplicativo på befintliga Kubernetes-kluster.

Anteckning

Information om hur du konfigurerar Kubernetes-klustret för Serviço de Aplicativo, Funktioner och Logic Apps finns i Skapa en Serviço de Aplicativo Kubernetes-miljö (förhandsversion).

I de flesta fall behöver apputvecklare inte veta mer än hur de distribuerar till rätt Azure-region som representerar den distribuerade Kubernetes-miljön. För operatörer som tillhandahåller miljön och underhåller den underliggande Kubernetes-infrastrukturen måste du vara medveten om följande Azure-resurser:

Offentliga begränsningar i förhandsversionen

Följande begränsningar för offentlig förhandsversion gäller för Serviço de Aplicativo Kubernetes-miljöer. Den här listan över begränsningar uppdateras när ändringar och funktioner görs tillgängliga.

Begränsning Information
Azure-regioner som stöds USA, östra, Europa, västra
Krav för klusternätverk Måste ha stöd LoadBalancer för tjänsttyp
Krav för klusterlagring Måste ha klusteransluten lagringsklass tillgänglig för användning av tillägget för att stödja distribution och version av kodbaserade appar där det är tillämpligt
Funktion: Nätverk Inte tillgängligt (förlitar sig på klusternätverk)
Funktion: Hanterade identiteter Inte tillgängligt
Funktion: Key Vault-referenser Inte tillgängligt (beror på hanterade identiteter)
Funktion: Hämta bilder från ACR med hanterad identitet Inte tillgängligt (beror på hanterade identiteter)
Funktion: Redigering i portalen för Functions och Logic Apps Inte tillgängligt
Funktion: Portallista över funktioner eller nycklar Inte tillgängligt om klustret inte kan nås offentligt
Funktion: FTP-publicering Inte tillgängligt
Loggar Log Analytics måste konfigureras med klustertillägget. inte per webbplats

Poddar som skapats av Serviço de Aplicativo-tillägget

När Serviço de Aplicativo-tillägget installeras i Det Azure Arc-aktiverade Kubernetes-klustret skapas flera poddar i versionsnamnområdet som angavs. Med de här poddarna kan kubernetes-klustret vara ett tillägg Microsoft.Web för resursprovidern i Azure och stödja hantering och drift av dina appar. Du kan också välja att låta tillägget installera KEDA för händelsedriven skalning.

I följande tabell beskrivs rollen för varje podd som skapas som standard:

Pod Beskrivning
<extensionName>-k8se-app-controller Kärnoperatorpodden som skapar resurser i klustret och underhåller komponenternas tillstånd.
<extensionName>-k8se-envoy Ett klientdelsproxylager för alla dataplansbegäranden. Den dirigerar den inkommande trafiken till rätt appar.
<extensionName>-k8se-activator Ett alternativt routningsmål för att hjälpa till med appar som har skalats till noll medan systemet får den första instansen tillgänglig.
<extensionName>-k8se-build-service Stöder distributionsåtgärder och hanterar funktionen Avancerade verktyg.
<extensionName>-k8se-http-scaler Övervakar inkommande begärandevolym för att tillhandahålla skalningsinformation till KEDA.
<extensionName>-k8se-img-cacher Hämtar platshållar- och appbilder till en lokal cache på noden.
<extensionName>-k8se-log-processor Samlar in loggar från appar och andra komponenter och skickar dem till Log Analytics.
placeholder-azure-functions-* Används för att påskynda kalla starter för Azure Functions.

Serviço de Aplicativo Kubernetes-miljö

Den Serviço de Aplicativo Kubernetes-miljöresursen krävs innan appar kan skapas. Det möjliggör konfiguration som är gemensam för appar på den anpassade platsen, till exempel dns-standardsuffixet.

Endast en Kubernetes-miljöresurs kan skapas på en anpassad plats. I de flesta fall behöver en utvecklare som skapar och distribuerar appar inte vara direkt medveten om resursen. Det kan härledas direkt från det angivna anpassade plats-ID:t. När du definierar Azure Resource Manager mallar måste dock alla planresurser referera till resurs-ID:t för miljön direkt. De anpassade platsvärdena för planen och den angivna miljön måste matcha.

Vanliga frågor och svar om Serviço de Aplicativo, funktioner och Logic Apps i Azure Arc (förhandsversion)

Vad kostar det?

Serviço de Aplicativo på Azure Arc är kostnadsfri under den offentliga förhandsversionen.

Stöds både Windows- och Linux-appar?

Endast Linux-baserade appar stöds, både kod och anpassade containrar. Windows-appar stöds inte.

Vilka inbyggda programstackar stöds?

Alla inbyggda Linux-stackar stöds.

Stöds alla appdistributionstyper?

FTP-distribution stöds inte. För närvarande az webapp up stöds inte heller. Andra distributionsmetoder stöds, inklusive Git, ZIP, CI/CD, Visual Studio och Visual Studio Code.

Vilka Serviço de Aplicativo funktioner stöds?

Under förhandsversionen verifieras vissa Serviço de Aplicativo funktioner. När de stöds aktiveras deras vänstra navigeringsalternativ i Azure-Portal. Funktioner som ännu inte stöds förblir nedtonade.

Stöds alla nätverksfunktioner?

Nej. Nätverksfunktioner som hybridanslutningar eller Virtual Network integrering stöds inte. Stöd för åtkomstbegränsningar lades till i april 2022. Nätverk ska hanteras direkt i nätverksreglerna i själva Kubernetes-klustret.

Stöds hanterade identiteter?

Nej. Appar kan inte tilldelas hanterade identiteter när de körs i Azure Arc. Om din app behöver en identitet för att arbeta med en annan Azure-resurs bör du överväga att använda ett huvudnamn för programtjänsten i stället.

Finns det några skalningsgränser?

Alla program som distribueras med Служба приложений Azure på Kubernetes med Azure Arc kan skalas inom gränserna för det underliggande Kubernetes-klustret. Om det underliggande Kubernetes-klustret får slut på tillgängliga beräkningsresurser (främst CPU och minne) kan programmen bara skala till antalet instanser av programmet som Kubernetes kan schemalägga med tillgänglig resurs.

Vilka loggar samlas in?

Loggar för både systemkomponenter och dina program skrivs till standardutdata. Båda loggtyperna kan samlas in för analys med vanliga Kubernetes-verktyg. Du kan också konfigurera Serviço de Aplicativo klustertillägget med en Log Analytics-arbetsyta och skicka alla loggar till arbetsytan.

Som standard skickas loggar från systemkomponenter till Azure-teamet. Programloggar skickas inte. Du kan förhindra att dessa loggar överförs genom att ange logProcessor.enabled=false som en tilläggskonfigurationsinställning. Den här konfigurationsinställningen inaktiverar även vidarebefordring av programmet till Log Analytics-arbetsytan. Om du inaktiverar loggprocessorn kan det påverka den tid som behövs för eventuella supportärende, och du uppmanas att samla in loggar från standardutdata på något annat sätt.

Vad gör jag om jag ser ett providerregistreringsfel?

När du skapar en Kubernetes-miljöresurs kan vissa prenumerationer se felet "Ingen registrerad resursprovider hittades". Felinformationen kan innehålla en uppsättning platser och API-versioner som anses giltiga. Om det här felmeddelandet returneras måste prenumerationen registreras på nytt med Microsoft. Webbleverantör, en åtgärd som inte har någon inverkan på befintliga program eller API:er. Om du vill registrera om använder du Azure CLI för att köra az provider register --namespace Microsoft.Web --wait. Försök sedan utföra ett nytt försök med Kubernetes-miljökommandot.

Kan jag distribuera Application Services-tillägget i ett ARM64-baserat kluster?

ARM64-baserade kluster stöds inte för tillfället.

Viktig information om tillägg

Programtjänsttillägg v 0.9.0 (maj 2021)

  • Första offentliga förhandsversionen av Application Services-tillägget.
  • Stöd för kod- och containerbaserade distributioner av webb-, funktions- och logikprogram.
  • Webbprogramskörning stöder --- .NET 3.1 och 5.0; Node JS 12 och 14; Python 3.6, 3.7 och 3.8; PHP 7.3 och 7.4; Ruby 2.5, 2.5.5, 2.6 och 2.6.2; Java SE 8u232, 8u242, 8u252, 11.05, 11.06 och 11.07; Tomcat 8.5, 8.5.41, 8.5.53, 8.5.57, 9.0, 9.0.20, 9.0.33 och 9.0.37.

Programtjänsttillägg v 0.10.0 (november 2021)

  • Krav för förtilldelad statisk IP-adress som krävs för tilldelning till Envoy-slutpunkten har tagits bort
  • Uppgradera Keda till v2.4.0
  • Uppgradera Envoy till v1.19.0
  • Uppgradera Azure Function Runtime till v3.3.1
  • Ange standardreplikantalet för App Controller och Envoy Controller till 2 för att ge ytterligare stabilitet

Om tillägget var i den stabila versionen och den automatiska uppgraderingsversionen är inställd på true uppgraderas tillägget automatiskt. Om du vill uppgradera tillägget till den senaste versionen manuellt kan du köra kommandot:

    az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.10.0

Programtjänsttillägg v 0.11.0 (december 2021)

  • Application Insights-stöd har lagts till för Java- och .NET-webbprogram
  • Stöd har lagts till för .NET 6.0-webbprogram
  • .NET Core 2.0 har tagits bort
  • Lösta problem som gjorde att växlingsåtgärder för fack misslyckades
  • Lösta problem som kunder upplever när de skapar Ruby-webbprogram

Om tillägget var i den stabila versionen och den automatiska uppgraderingsversionen är inställd på true uppgraderas tillägget automatiskt. Om du vill uppgradera tillägget till den senaste versionen manuellt kan du köra kommandot:

    az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.11.0

Programtjänsttillägg v 0.11.1 (december 2021)

  • Mindre version för att lösa problem med CRD-uppdatering

Om tillägget var i den stabila versionen och den automatiska uppgraderingsversionen är inställd på true uppgraderas tillägget automatiskt. Om du vill uppgradera tillägget till den senaste versionen manuellt kan du köra kommandot:

    az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.11.1

Programtjänsttillägg v 0.12.0 (januari 2022)

  • Stöd för utgående proxy
  • Stöd för parallella versioner i byggtjänsten
  • Uppgradera Envoy till 1.20.1
  • Löst problem med Application Insights-stöd för .NET-program

Om tillägget var i den stabila versionen och den automatiska uppgraderingsversionen är inställd på true uppgraderas tillägget automatiskt. Om du vill uppgradera tillägget till den senaste versionen manuellt kan du köra kommandot:

    az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.12.0

Programtjänsttillägg v 0.12.1 (mars 2022)

  • Löst problem med stöd för utgående proxy för att aktivera loggning till Log Analytics-arbetsytan

Om tillägget var i den stabila versionen och den automatiska uppgraderingsversionen är inställd på true uppgraderas tillägget automatiskt. Om du vill uppgradera tillägget till den senaste versionen manuellt kan du köra kommandot:

    az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.12.1

Programtjänsttillägg v 0.12.2 (mars 2022)

  • Uppdatera för att lösa uppgraderingsfel vid uppgradering från v 0.12.0 när tilläggets namnlängd är över 35 tecken

Om tillägget var i den stabila versionen och den automatiska uppgraderingsversionen är inställd på true uppgraderas tillägget automatiskt. Om du vill uppgradera tillägget till den senaste versionen manuellt kan du köra kommandot:

    az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.12.2

Programtjänsttillägg v 0.13.0 (april 2022)

  • Stöd har lagts till för kodlös integrering av Application Insights för Node JS-program
  • Stöd för åtkomstbegränsningar har lagts till via CLI
  • Mer information ges när tillägget inte kan installeras, för att hjälpa till med felsökningsproblem

Om tillägget var i den stabila versionen och den automatiska uppgraderingsversionen är inställd på true uppgraderas tillägget automatiskt. Om du vill uppgradera tillägget till den senaste versionen manuellt kan du köra kommandot:

    az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.13.0

Programtjänsttillägg v 0.13.1 (april 2022)

  • Uppdatera för att lösa uppgraderingsfel som visas vid automatisk uppgradering av kluster till v 0.13.0

Om tillägget var i den stabila versionen och den automatiska uppgraderingsversionen är inställd på true uppgraderas tillägget automatiskt. Om du vill uppgradera tillägget till den senaste versionen manuellt kan du köra kommandot:

    az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.13.1

Nästa steg

Skapa en Serviço de Aplicativo Kubernetes-miljö (förhandsversion)