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:
- Det anslutna klustret, som är en Azure-projektion av kubernetes-infrastrukturen. Mer information finns i Vad är Azure Arc-aktiverade Kubernetes?.
- Ett klustertillägg, som är en underkälla till den anslutna klusterresursen. Serviço de Aplicativo-tillägget installerar nödvändiga poddar i ditt anslutna kluster. Mer information om klustertillägg finns i Klustertillägg på Azure Arc-aktiverade Kubernetes.
- En anpassad plats som kombinerar en grupp med tillägg och mappar dem till ett namnområde för skapade resurser. Mer information finns i Anpassade platser ovanpå Azure Arc-aktiverade Kubernetes.
- En Serviço de Aplicativo Kubernetes-miljö som möjliggör konfiguration som är gemensam för appar men inte relaterade till klusteråtgärder. Konceptuellt distribueras den till den anpassade platsresursen och apputvecklare skapar appar i den här miljön. Den här resursen beskrivs mer detaljerat i Serviço de Aplicativo Kubernetes-miljön.
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?
- Stöds både Windows- och Linux-appar?
- Vilka inbyggda programstackar stöds?
- Stöds alla appdistributionstyper?
- Vilka Serviço de Aplicativo funktioner stöds?
- Stöds alla nätverksfunktioner?
- Stöds hanterade identiteter?
- Finns det några skalningsgränser?
- Vilka loggar samlas in?
- Vad gör jag om jag ser ett providerregistreringsfel?
- Kan jag distribuera Application Services-tillägget i ett ARM64-baserat kluster?
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)