Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Importante
O Azure App Service em Kubernetes habilitado pelo Arc será desativado em 31 de março de 2026. A partir de 30 de setembro de 2025, os clientes não poderão mais instalar a extensão. Solicitamos que você migre para outras soluções, como o Kubernetes habilitado para Aplicativos de Contêiner do Azure on Arc, a migração também permite que você aproveite o Logic Apps Hybrid para suas cargas de trabalho de integração.
Você pode executar o Serviço de Aplicativo, Funções e Aplicativos Lógicos em um cluster Kubernetes habilitado para Azure Arc. O cluster Kubernetes pode ser local ou hospedado em uma nuvem de terceiros. Essa abordagem permite que os desenvolvedores de aplicativos aproveitem os recursos do Serviço de Aplicativo. Ao mesmo tempo, permite que seus administradores de TI mantenham a conformidade corporativa hospedando os aplicativos do Serviço de Aplicativo na infraestrutura interna. Ele também permite que outros operadores de TI protejam seus investimentos anteriores em outros provedores de nuvem executando o Serviço de Aplicativo em clusters Kubernetes existentes.
Nota
Para saber como configurar seu cluster Kubernetes para o Serviço de Aplicativo, Funções e Aplicativos Lógicos, consulte Criar um ambiente Kubernetes do Serviço de Aplicativo (Visualização).
Na maioria dos casos, os desenvolvedores de aplicativos precisam saber nada mais do que como implantar na região correta do Azure que representa o ambiente Kubernetes implantado. Para operadores que fornecem o ambiente e mantêm a infraestrutura subjacente do Kubernetes, você deve estar ciente dos seguintes recursos do Azure:
- O cluster conectado, que é uma projeção da sua infraestrutura do Kubernetes no Azure. Para obter mais informações, consulte O que é o Kubernetes habilitado para Azure Arc?.
- Uma extensão de cluster, que é um subrecurso do recurso de cluster conectado. A extensão do App Service instala os pods necessários no cluster conectado. Para obter mais informações sobre extensões de cluster, consulte Extensões de cluster em Azure Arc-enabled Kubernetes.
- Um local personalizado, que agrupa um grupo de extensões e as mapeia para um namespace para recursos criados. Para obter mais informações, consulte Locais personalizados no Kubernetes habilitado pelo Azure Arc.
- Um ambiente Kubernetes do Serviço de Aplicativo, que permite a configuração comum entre aplicativos, mas não relacionada a operações de cluster. Conceitualmente, ele é implantado no recurso de local personalizado e os desenvolvedores de aplicativos criam aplicativos nesse ambiente. Este recurso é descrito com mais detalhes no ambiente Kubernetes do Serviço de Aplicativo.
Limitações da pré-visualização pública
As limitações de visualização pública a seguir se aplicam a ambientes Kubernetes do Serviço de Aplicativo. Esta lista de limitações é atualizada à medida que as alterações e funcionalidades são disponibilizadas.
| Limitação | Detalhes |
|---|---|
| Regiões do Azure suportadas | Leste dos EUA, Europa Ocidental |
| Requisito de conectividade de cluster | Deve suportar o LoadBalancer tipo de serviço |
| Requisito do SO do nó | Apenas Linux . |
| Requisito de armazenamento em cluster | Deve ter classe de armazenamento anexada ao cluster disponível para uso pela extensão para dar suporte à implantação e compilação de aplicativos baseados em código, quando aplicável |
| Característica: Rede | Não disponível (depende da rede de cluster) |
| Funcionalidade: Identidades geridas | Não disponível |
| Funcionalidade: Referências do cofre de chaves | Não disponível (depende de identidades gerenciadas) |
| Recurso: Extrair imagens do ACR com identidade gerenciada | Não disponível (depende de identidades gerenciadas) |
| Funcionalidade: Edição no portal para Funções e Aplicações Lógicas | Não disponível |
| Característica: Listagem no portal de funções ou chaves | Não disponível se o cluster não estiver acessível publicamente |
| Característica: Publicação FTP | Não disponível |
| Registos | O Log Analytics deve ser configurado com extensão de cluster; não por site |
Pods criados pela extensão App Service
Quando a extensão do App Service é instalada no cluster Kubernetes ativado para o Azure Arc, vários pods são criados no namespace de lançamento que foi especificado. Esses pods permitem que seu cluster Kubernetes seja uma extensão do provedor de Microsoft.Web recursos no Azure e dão suporte ao gerenciamento e à operação de seus aplicativos. Opcionalmente, você pode optar por fazer com que a extensão instale o KEDA para dimensionamento controlado por eventos.
A tabela a seguir descreve a função de cada pod criado por padrão:
| Cápsula | Descrição |
|---|---|
<extensionName>-k8se-app-controller |
O pod do operador principal que cria recursos no cluster e mantém o estado dos componentes. |
<extensionName>-k8se-envoy |
Uma camada de proxy front-end para todas as solicitações de plano de dados. Ele roteia o tráfego de entrada para os aplicativos corretos. |
<extensionName>-k8se-activator |
Um destino de roteamento alternativo para ajudar com aplicativos que foram dimensionados para zero enquanto o sistema obtém a primeira instância disponível. |
<extensionName>-k8se-build-service |
Suporta operações de implantação e serve o recurso Ferramentas avançadas. |
<extensionName>-k8se-http-scaler |
Monitora o volume de solicitações de entrada para fornecer informações de dimensionamento ao KEDA. |
<extensionName>-k8se-img-cacher |
Extrai imagens de espaço reservado e aplicação para uma cache local no nó. |
<extensionName>-k8se-log-processor |
Reúne logs de aplicativos e outros componentes e os envia para o Log Analytics. |
placeholder-azure-functions-* |
Usado para acelerar inicializações a frio das Azure Functions. |
Ambiente Kubernetes do Serviço de Aplicação
O recurso de ambiente Kubernetes do Serviço de Aplicativo é necessário para que os aplicativos possam ser criados. Ele permite a configuração comum a aplicativos no local personalizado, como o sufixo DNS padrão.
Apenas um recurso de ambiente Kubernetes pode ser criado em um local personalizado. Na maioria dos casos, um desenvolvedor que cria e implanta aplicativos não precisa estar diretamente ciente do recurso. Ele pode ser inferido diretamente a partir do ID de local personalizado fornecido. No entanto, ao definir modelos do Azure Resource Manager, qualquer recurso de plano precisa fazer referência diretamente ao identificador de recurso do ambiente. Os valores de local personalizados do plano e do ambiente especificado devem corresponder.
Perguntas frequentes sobre o App Service, Functions e Logic Apps no Azure Arc (Pré-visualização)
- Quanto custa?
- As aplicações Windows e Linux são suportadas?
- A extensão pode ser instalada em nós do Windows?
- Quais pilhas de aplicativos integrados são suportadas?
- Todos os tipos de implantação de aplicativos são suportados?
- Quais recursos do Serviço de Aplicativo são suportados?
- Todos os recursos de rede são suportados?
- As identidades gerenciadas são suportadas?
- Existem limites de escala?
- Quais logs são coletados?
- O que devo fazer se vir um erro de registo de fornecedor?
- Posso implantar a extensão de serviços de aplicativo em um cluster baseado em Arm64?
- Em quais distribuições do Kubernetes posso implantar a extensão?
Quanto custa?
O Serviço de Aplicativo no Azure Arc é gratuito durante a visualização pública.
As aplicações Windows e Linux são suportadas?
Apenas aplicativos baseados em Linux são suportados, tanto código quanto contêineres personalizados. Não há suporte para aplicativos do Windows.
A extensão pode ser instalada em nós do Windows?
Não, a extensão não pode ser instalada em nós do Windows. A extensão suporta apenas a instalação em nós Linux.
Quais pilhas de aplicativos integradas são suportadas?
Todas as componentes Linux integradas são suportadas.
Todos os tipos de implantação de aplicativos são suportados?
A implantação de FTP não é suportada. Atualmente az webapp up também não é suportado. Há suporte para outros métodos de implantação, incluindo Git, ZIP, CI/CD, Visual Studio e Visual Studio Code.
Quais recursos do Serviço de Aplicativo são suportados?
Durante o período de visualização, determinados recursos do Serviço de Aplicativo estão sendo validados. Quando houver suporte, as opções de navegação à esquerda no portal do Azure serão ativadas. As funcionalidades que ainda não são suportadas permanecem com aparência esbatida.
Todos os recursos de rede são suportados?
N.º Recursos de rede, como conexões híbridas ou integração de rede virtual, não são suportados. O suporte à restrição de acesso foi adicionado em abril de 2022. A rede deve ser tratada diretamente nas regras de rede no próprio cluster do Kubernetes.
As identidades gerenciadas são suportadas?
N.º Os aplicações não podem receber identidades geridas quando executadas no Azure Arc. Se a sua aplicação precisar de uma identidade para trabalhar com outro recurso do Azure, considere usar um principal de serviço de aplicação.
Existem limites de escala?
Todos os aplicativos implantados com o Serviço de Aplicativo do Azure no Kubernetes com o Azure Arc podem ser dimensionados dentro dos limites do cluster Kubernetes subjacente. Se o Cluster Kubernetes subjacente ficar sem recursos de computação disponíveis (CPU e memória principalmente), os aplicativos só poderão ser dimensionados para o número de instâncias do aplicativo que o Kubernetes pode agendar com o recurso disponível.
Quais logs são coletados?
Os logs para os componentes do sistema e seus aplicativos são gravados na saída padrão. Ambos os tipos de registo podem ser recolhidos para análise com as ferramentas padrão do Kubernetes. Você também pode configurar a extensão de cluster do App Service com um espaço de trabalho do Log Analytics, e ela envia todos os logs para esse espaço de trabalho.
Por predefinição, os registos dos componentes do sistema são enviados para a equipa do Azure. Os logs do aplicativo não são enviados. Pode evitar que estes registos sejam transferidos ao definir logProcessor.enabled=false como definição de configuração da extensão. Essa definição de configuração também desabilitará o encaminhamento do aplicativo para seu espaço de trabalho do Log Analytics. A desativação do processador de log pode afetar o tempo necessário para quaisquer casos de suporte, e você será solicitado a coletar logs da saída padrão por outros meios.
O que devo fazer se vir um erro de registo de fornecedor?
Quando você cria um recurso de ambiente Kubernetes, você pode ver um erro "Nenhum provedor de recursos registrado encontrado". Os detalhes do erro podem incluir um conjunto de locais e versões de API que são considerados válidos. Se essa mensagem de erro for retornada, a assinatura deverá ser registrada novamente no provedor Microsoft.Web, uma operação que não tem impacto em aplicativos ou APIs existentes. Para se registar novamente, use a CLI do Azure para executar az provider register --namespace Microsoft.Web --wait. Em seguida, tente novamente o comando Kubernetes environment.
Posso implantar a extensão de serviços de aplicativo em um cluster baseado em Arm64?
No momento, não há suporte para clusters baseados no Arm64.
Em quais distribuições do Kubernetes posso implantar a extensão?
A extensão foi validada no AKS, AKS no Azure Local, Google Kubernetes Engine, Amazon Elastic Kubernetes Service e Kubernetes Cluster API.
Notas de versão da extensão
Extensão de serviços de aplicativo v 0.9.0 (maio de 2021)
- Versão de visualização pública inicial da extensão de serviços de aplicações.
- Suporte para implantações baseadas em código e contêiner de aplicativos Web, Function e Logic.
- Suporte ao tempo de execução do aplicativo Web --- .NET 3.1 e 5.0; Nó JS 12 e 14; Python 3.6, 3.7 e 3.8; PHP 7.3 e 7.4; Ruby 2.5, 2.5.5, 2.6 e 2.6.2; Java SE 8u232, 8u242, 8u252, 11.05, 11.06 e 11.07; Tomcat 8.5, 8.5.41, 8.5.53, 8.5.57, 9.0, 9.0.20, 9.0.33 e 9.0.37.
Extensão de serviços de aplicativo v 0.10.0 (novembro de 2021)
- Removido o requisito de pré-atribuição de endereço IP estático necessário para a atribuição ao ponto de extremidade do Envoy
- Atualize Keda para v2.4.0
- Atualizar o Envoy para v1.19.0
- Atualizar o tempo de execução do Azure Function para v3.3.1
- Defina a contagem de réplicas padrão do App Controller e do Envoy Controller como 2 para adicionar mais estabilidade
Se a sua extensão estava na versão estável e a versão secundária de atualização automática está definida como true, a extensão é atualizada automaticamente. Para atualizar manualmente a extensão para a versão mais recente, você pode executar o comando:
az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.10.0
Extensão de serviços de aplicativo v 0.11.0 (dezembro de 2021)
- Adicionado suporte do Application Insights para aplicativos Web Java e .NET
- Adicionado suporte para Aplicações Web .NET 6.0
- Removido o .NET Core 2.0
- Problemas resolvidos que causavam falhas nas operações de troca de slots
- Problemas resolvidos que os clientes enfrentaram durante a criação de aplicativos Web Ruby
Se a sua extensão estava na versão estável e a versão secundária de atualização automática está definida como true, a extensão é atualizada automaticamente. Para atualizar manualmente a extensão para a versão mais recente, você pode executar o comando:
az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.11.0
Extensão de serviços de aplicação v 0.11.1 (dezembro de 2021)
- Versão menor para resolver problema com a atualização do CRD
Se a sua extensão estava na versão estável e a versão secundária de atualização automática está definida como true, a extensão é atualizada automaticamente. Para atualizar manualmente a extensão para a versão mais recente, você pode executar o comando:
az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.11.1
Extensão de serviços de aplicativo v 0.12.0 (janeiro de 2022)
- Suporte para proxy de saída
- Suporte para compilações paralelas no serviço de compilação
- Atualizar o Envoy para 1.20.1
- Problema resolvido com o suporte do Application Insights para aplicativos .NET
Se a sua extensão estava na versão estável e a versão secundária de atualização automática está definida como true, a extensão é atualizada automaticamente. Para atualizar manualmente a extensão para a versão mais recente, você pode executar o comando:
az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.12.0
Extensão de serviços de aplicativo v 0.12.1 (março de 2022)
- Problema resolvido com o suporte a proxy de saída para permitir o registro no espaço de trabalho do Log Analytics
Se a sua extensão estava na versão estável e a versão secundária de atualização automática está definida como true, a extensão é atualizada automaticamente. Para atualizar manualmente a extensão para a versão mais recente, você pode executar o comando:
az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.12.1
Extensão de serviços de aplicativo v 0.12.2 (março de 2022)
- Atualização para resolver falhas de atualização ao atualizar da v 0.12.0 quando o comprimento do nome da extensão é superior a 35 caracteres
Se a sua extensão estava na versão estável e a versão secundária de atualização automática está definida como true, a extensão é atualizada automaticamente. Para atualizar manualmente a extensão para a versão mais recente, você pode executar o comando:
az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.12.2
Extensão de serviços de aplicativo v 0.13.0 (abril de 2022)
- Adicionado suporte para integração sem código do Application Insights para aplicativos Node JS
- Adicionado suporte para restrições de acesso via CLI
- Mais detalhes fornecidos quando a extensão não é instalada, para ajudar na solução de problemas
Se a sua extensão estava na versão estável e a versão secundária de atualização automática está definida como true, a extensão é atualizada automaticamente. Para atualizar manualmente a extensão para a versão mais recente, você pode executar o comando:
az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.13.0
Extensão de serviços de aplicativo v 0.13.1 (abril de 2022)
- Atualização para resolver falhas de atualização observadas durante a atualização automática de clusters para v 0.13.0
Se a sua extensão estava na versão estável e a versão secundária de atualização automática está definida como true, a extensão é atualizada automaticamente. Para atualizar manualmente a extensão para a versão mais recente, você pode executar o comando:
az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.13.1
Extensão de serviços de aplicação v 0.13.5 (dezembro de 2023)
- Atualização para suportar o Kubernetes versão 1.26 e superior
- Atualizar o Envoy para 1.2.1
- Atualize Keda para v2.10.0
- Atualize o EasyAuth para v1.6.20
- Atualizar imagens de base para idiomas suportados
Se a sua extensão estava na versão estável e a versão secundária de atualização automática está definida como true, a extensão é atualizada automaticamente. Para atualizar manualmente a extensão para a versão mais recente, você pode executar o comando:
az k8s-extension update --cluster-type connectedClusters -c <clustername> -g <resource group> -n <extension name> --release-train stable --version 0.13.5