Partilhar via


Aplicativos de contêiner do Azure no Azure Arc (visualização)

Você pode executar Aplicativos de Contêiner em um cluster AKS ou AKS-HCI habilitado para Azure Arc.

A execução em um cluster Kubernetes habilitado para Azure Arc permite:

  • Desenvolvedores para aproveitar os recursos do Container Apps
  • Administradores de TI para manter a conformidade corporativa hospedando aplicativos de contêiner na infraestrutura interna.

Aprenda a configurar seu cluster Kubernetes para Aplicativos de Contêiner, por meio de Configurar um cluster Kubernetes habilitado para Azure Arc para executar Aplicativos de Contêiner do Azure

Ao configurar o cluster, você realizará estas ações:

  • O cluster conectado, que é uma projeção do Azure da sua infraestrutura do Kubernetes. 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 Container Apps instala os recursos necessários no cluster conectado. Para obter mais informações sobre extensões de cluster, consulte Extensões de cluster no Kubernetes habilitado para Azure Arc.

  • 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 sobre o Kubernetes habilitado para Azure Arc.

  • Um ambiente conectado de Aplicativos de Contêiner, 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.

Limitações da pré-visualização pública

As seguintes limitações de visualização pública aplicam-se aos Aplicativos de Contêiner do Azure no Kubernetes habilitado para Azure Arc.

Limitação Detalhes
Regiões do Azure suportadas Leste dos EUA, Europa Ocidental, Ásia Oriental
Requisito de rede de cluster Deve suportar o tipo de serviço LoadBalancer
Funcionalidade: Identidades geridas Não disponível
Recurso: Extrair imagens do ACR com identidade gerenciada Não disponível (depende de identidades gerenciadas)
Registos O Log Analytics deve ser configurado com extensão de cluster; não por site

Recursos criados pela extensão Container Apps

Quando a extensão Container Apps é instalada no cluster Kubernetes habilitado para Azure Arc, vários recursos são criados no namespace de versão especificado. Esses recursos permitem que seu cluster seja uma extensão do Microsoft.App provedor de recursos para dar 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. No entanto, apenas uma instalação KEDA é permitida no cluster. Se você tiver uma instalação existente, desative a instalação KEDA enquanto instala a extensão de cluster.

A tabela a seguir descreve a função de cada revisão criada para você:

Pod Description Número de Instâncias CPU Memória Type
<extensionName>-k8se-activator Usado como parte do pipeline de dimensionamento 2 100 milicpu 500 MB ReplicaSet
<extensionName>-k8se-billing Geração de registos de faturação - Aplicações de Contentor do Azure no Azure Arc O Kubernetes é gratuito durante a pré-visualização 3 100 milicpu 100 MB ReplicaSet
<extensionName>-k8se-containerapp-controller O pod do operador principal que cria recursos no cluster e mantém o estado dos componentes. 2 100 milicpu 1 GB ReplicaSet
<extensionName>-k8se-envoy Uma camada de proxy front-end para todas as solicitações http do plano de dados. Ele roteia o tráfego de entrada para os aplicativos corretos. 3 1 Núcleo 1536 MB ReplicaSet
<extensionName>-k8se-envoy-controller Operador, que gera a configuração do Envoy 2 200 milicpu 500 MB ReplicaSet
<extensionName>-k8se-event-processor 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. 2 100 milicpu 500 MB ReplicaSet
<extensionName>-k8se-http-scaler Monitora o volume de solicitações de entrada para fornecer informações de dimensionamento ao KEDA. 1 100 milicpu 500 MB ReplicaSet
<extensionName>-k8se-keda-cosmosdb-scaler Escalador KEDA Cosmos DB 1 10 metros 128 MB ReplicaSet
<extensionName>-k8se-keda-metrics-apiserver Servidor de métricas KEDA 1 1 Núcleo 1000 MB ReplicaSet
<extensionName>-k8se-keda-operator Dimensiona cargas de trabalho de 0/1 a N instâncias 1 100 milicpu 500 MB ReplicaSet
<extensionName>-k8se-log-processor Reúne logs de aplicativos e outros componentes e os envia para o Log Analytics. 2 200 milicpu 500 MB DaemonSet
<extensionName>-k8se-mdm Agente de métricas e logs 2 500 milicpu 500 MB ReplicaSet
dapr-métricas Pod de métricas Dapr 1 100 milicpu 500 MB ReplicaSet
Operador de DAPR Gerencia atualizações de componentes e pontos de extremidade de serviço para Dapr 1 100 milicpu 500 MB ReplicaSet
dapr-placement-server Usado apenas para atores - cria tabelas de mapeamento que mapeiam instâncias de atores para pods 1 100 milicpu 500 MB StatefulSet
dapr-sentinela Gerencia mTLS entre serviços e atua como uma autoridade de certificação 2 800 milicpu 200 MB ReplicaSet

Perguntas frequentes sobre aplicativos de contêiner do Azure no Azure Arc (visualização)

Quanto custa?

Os Aplicativos de Contêiner do Azure no Kubernetes habilitado para Azure Arc são gratuitos durante a visualização pública.

Quais recursos de aplicativos de contêiner são suportados?

Durante o período de visualização, determinados recursos do Aplicativo de Contêiner do Azure estão sendo validados. Quando houver suporte, as opções de navegação à esquerda no portal do Azure serão ativadas. Os recursos que ainda não são suportados permanecem acinzentados.

As identidades gerenciadas são suportadas?

Não há suporte para identidades gerenciadas. Não é possível atribuir identidades gerenciadas aos aplicativos em execução no Azure Arc. Se seu aplicativo precisar de uma identidade para trabalhar com outro recurso do Azure, considere usar uma entidade de serviço de aplicativo.

Existem limites de escala?

Todos os aplicativos implantados com Aplicativos de Contêiner do Azure no Kubernetes habilitado para Azure Arc podem ser dimensionados dentro dos limites do cluster Kubernetes subjacente. Se o cluster ficar sem recursos de computação disponíveis (CPU e memória principalmente), os aplicativos serão 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 ambiente do aplicativo com um espaço de trabalho do Log Analytics e ele 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?

À medida que você cria um recurso de ambiente conectado dos Aplicativos de Contêiner do Azure, algumas assinaturas podem ver o 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 Microsoft.App provedor. O novo registro do provedor não tem efeito sobre aplicativos ou APIs existentes. Para se registrar novamente, use a CLI do Azure para executar az provider register --namespace Microsoft.App --waito . Em seguida, tente novamente o comando connected environment.

Posso implantar a extensão Container Apps em um cluster baseado em ARM64?

No momento, não há suporte para clusters baseados em ARM64.

Notas de versão da extensão

Container Apps extension v1.0.46 (dezembro de 2022)

  • Versão prévia pública inicial da extensão de aplicativos de contêiner

Extensão Container Apps v1.0.47 (janeiro de 2023)

  • Atualização do Envoy para 1.0.24

Container Apps extension v1.0.48 (fevereiro de 2023)

  • Adicionar sondas ao(s) contêiner(es) EasyAuth
  • Aumento do limite de memória para dapr-operator
  • Prevenção adicionada de substituição de cabeçalho de plataforma

Container Apps extension v1.0.49 (fevereiro de 2023)

  • Atualização do KEDA para 2.9.1 e Dapr para 1.9.5
  • Aumente os limites de recursos do Envoy Controller para 200 m de CPU
  • Aumente os limites de recursos do Container App Controller para 1 GB de memória
  • Reduza os limites de recursos do sidecar EasyAuth para 50 m de CPU
  • Resolver o log de erros KEDA para valores de métrica ausentes

Extensão Container Apps v1.0.50 (março de 2023)

  • Imagens de registo atualizadas em sincronia com a nuvem pública

Extensão Container Apps v1.5.1 (abril de 2023)

  • Novo formato de número de controle de versão
  • Atualização do Dapr para 1.10.4
  • Manter a escala do Envoy após implantações de novas revisões
  • Mude para quando os testes de inicialização padrão são adicionados a um contêiner, se o desenvolvedor não definir os testes de inicialização e de preparação, os testes de inicialização padrão serão adicionados
  • Adiciona CONTAINER_APP_REPLICA_NAME variável de ambiente a contêineres personalizados
  • Melhoria no desempenho quando várias revisões são interrompidas

Container Apps extension v1.12.8 (junho de 2023)

  • Atualize o bit OSS Fluent para 2.1.2 e Dapr para 1.10.6
  • Suporte para registros de contêineres expostos em porta personalizada
  • Habilitar ativar/desativar revisão quando um aplicativo de contêiner é interrompido
  • Corrigir lista de revisões que não retorna contêineres init
  • Padrão permitir cabeçalhos adicionados para a política de cors

Container Apps extension v1.12.9 (julho de 2023)

  • Pequenas atualizações nos contentores de sidecar EasyAuth
  • Atualização dos Agentes de Monitoramento de Extensão

Extensão Container Apps v1.17.8 (agosto de 2023)

  • Atualize o EasyAuth para 1.6.16, Dapr para 1.10.8 e Envoy para 1.25.6
  • Adicionar suporte de montagem de volume para trabalhos do Aplicativo de Contêiner do Azure
  • Adicionadas restrições de IP para aplicativos com tipo TCP Ingress
  • Adicionado suporte para aplicativos de contêiner com várias portas expostas

Container Apps extension v1.23.5 (dezembro de 2023)

  • Atualize o Envoy para 1.27.2, KEDA para v2.10.0, EasyAuth para 1.6.20 e Dapr para 1.11
  • Definir Envoy para TLS máximo 1.3
  • Correção para resolver falhas nos pods do processador de log
  • Correção para problemas de recuperação secreta de extração de imagem
  • Atualize o posicionamento do Envoy para distribuir entre os nós disponíveis sempre que possível
  • Quando os aplicativos de contêiner não forem provisionados como resultado de conflitos de revisão, defina o estado de provisionamento como falha

Extensão Container Apps v1.30.6 (janeiro de 2024)

  • Atualize o KEDA para v2.12, a imagem do Envoy SC para v1.0.4 e a imagem Dapr para v1.11.6
  • Adicionado tempo limite de resposta padrão para rotas do Envoy para 1800 segundos
  • Alterado o nível de log padrão de bit fluente para avisar
  • Atrasar a exclusão de pods de trabalho para garantir a emissão de logs
  • Corrigido o problema de exclusão do pod de trabalho para execuções de trabalho com falha
  • Verifique se os trabalhos em estado suspenso também têm pods com falha excluídos
  • Atualização para não resolver HTTPOptions para aplicativos TCP
  • Permitir que os aplicativos escutem em HTTP ou HTTPS
  • Adicionar capacidade de suspender trabalhos
  • Corrigido o problema em que o escalador KEDA não conseguia criar trabalho após a interrupção da execução do trabalho
  • Adicionar startingDeadlineSeconds ao trabalho do aplicativo de contêiner em caso de reinicialização do cluster
  • Removido o registro pesado no servidor de log de acesso do Envoy
  • Versão atualizada da Configuração de Monitoramento para Aplicativos de Contêiner do Azure no Kubernetes habilitado para Azure Arc

Extensão Container Apps v1.36.15 (abril de 2024)

  • Atualize o Dapr para v1.12 e o Dapr Metrics para v0.6
  • Permitir que os clientes habilitem o log de depuração do SDK do Azure no Dapr
  • Dimensionar o Envoy em resposta ao uso da memória
  • Alteração do formato de log do Envoy para Json
  • Exportar métricas adicionais do Envoy
  • Truncar o log do Envoy para os primeiros 1.024 caracteres quando o conteúdo do log não foi analisado
  • Manipule SIGTERM graciosamente no proxy local
  • Permitir a capacidade de alavancar diferentes namespaces com KEDA
  • Validação adicionada para o nome da regra de escala
  • GC de revisão ativada por padrão
  • Emissão habilitada de métricas para sidecars
  • Adicionado volumeMounts para execuções de trabalho
  • Validação adicionada a pontos de extremidade webhook para trabalhos

Próximos passos

Criar um ambiente conectado de Aplicativos de Contêiner (Visualização)