Aplicativos de Contêiner do Azure no Azure Arc (Versão prévia)
Você pode executar Aplicativos de Contêiner em um cluster do AKS ou AKS-HCI habilitado para o Azure Arc.
A execução em um cluster do Kubernetes habilitado para o Azure Arc permite:
- Os desenvolvedores aproveitem os recursos dos Aplicativos de Contêiner
- Os administradores de TI podem manter a conformidade corporativa hospedando Aplicativos de Contêiner na infraestrutura interna.
Saiba como configurar seu cluster do Kubernetes para Aplicativos de Contêiner, via Configurar um cluster do Kubernetes habilitado para Azure Arc para executar Aplicativos de Contêiner do Azure
Ao configurar seu cluster, você executará estas ações:
O cluster conectado, que é uma projeção do Azure de sua infraestrutura do Kubernetes. Para saber mais, acesse O que é o Kubernetes habilitado para Azure Arc?.
Uma extensão de cluster, que é um sub-recurso do recurso de cluster conectado. A extensão Aplicativos de Contêiner instala os recursos necessários em seu cluster conectado. Para saber mais sobre as extensões de cluster, confira 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 de recursos criados. Para saber mais, confira 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 visualização pública
As seguintes limitações de visualização pública se aplicam aos Aplicativos de Contêiner do Azure no Kubernetes habilitado para Azure Arc.
Limitação | Detalhes |
---|---|
Regiões do Azure com suporte | Leste dos EUA, Oeste da Europa, Leste da Ásia |
Requisito de rede de cluster | Deve dar suporte para o tipo de serviço LoadBalancer |
Requisitos de SO para o nó | Somente Linux. |
Recurso: identidades gerenciadas | Não disponível |
Recurso: extrair imagens do ACR com identidade gerenciada | Não disponível (depende das identidades gerenciadas) |
Logs | O Log Analytics deve ser configurado com a extensão do cluster; não por aplicativo |
Importante
Se estiver implantando no AKS-HCI, lembre-se de configurar o HAProxy como seu balanceador de carga antes de tentar instalar a extensão.
Recursos criados pela extensão Aplicativos de Contêiner
Quando a extensão Aplicativos de Contêiner é 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 provedor de recursos Microsoft.App
para dar suporte ao gerenciamento e à operação de seus aplicativos.
Como opção, você pode fazer com que a extensão instale o KEDA para o dimensionamento controlado por eventos. No entanto, somente uma instalação do KEDA é permitida no cluster. Se você tiver uma instalação existente, desabilite a instalação do KEDA ao instalar a extensão do cluster.
A tabela a seguir descreve a função de cada revisão criada para você:
Pod | Descrição | Número de Instâncias | CPU | Memória | Tipo |
---|---|---|---|---|---|
<extensionName>-k8se-activator |
Usada como parte do pipeline de colocação em escala | 2 | 100 milicpu | 500 MB | ReplicaSet |
<extensionName>-k8se-billing |
Geração do registro de cobrança: Os Aplicativos de Contêiner do Azure no Kubernetes habilitado para Azure Arc é gratuito durante a visualização | 3 | 100 milicpu | 100 MB | ReplicaSet |
<extensionName>-k8se-containerapp-controller |
Pod principal do operador que cria os recursos no cluster e mantém o estado dos componentes. | 2 | 100 milicpu | 1 GB | ReplicaSet |
<extensionName>-k8se-envoy |
Uma camada de proxy de 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 | 1.536 MB | ReplicaSet |
<extensionName>-k8se-envoy-controller |
Operador, que gera a configuração do Envoy | 2 | 200 millicpu | 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ção de entrada para fornecer informações de dimensionamento para o KEDA. | 1 | 100 milicpu | 500 MB | ReplicaSet |
<extensionName>-k8se-keda-cosmosdb-scaler |
Escalonador do Cosmos DB do KEDA | 1 | 10 m | 128 MB | ReplicaSet |
<extensionName>-k8se-keda-metrics-apiserver |
Servidor de métricas KEDA | 1 | 1 Núcleo | 1.000 MB | ReplicaSet |
<extensionName>-k8se-keda-operator |
Dimensiona cargas de trabalho para dentro e para fora de 0/1 a N instâncias | 1 | 100 milicpu | 500 MB | ReplicaSet |
<extensionName>-k8se-log-processor |
Coleta logs de aplicativos e outros componentes e os envia para o Log Analytics. | 2 | 200 millicpu | 500 MB | DaemonSet |
<extensionName>-k8se-mdm |
Agente de Métricas e Logs | 2 | 500 milicpu | 500 MB | ReplicaSet |
dapr-metrics | Pod de métricas Dapr | 1 | 100 milicpu | 500 MB | ReplicaSet |
dapr-operator | Gerencia atualizações de componentes e pontos de extremidade de serviço para Dapr | 1 | 100 milicpu | 500 MB | ReplicaSet |
dapr-placement-server | Usado somente para Atores: cria tabelas de mapeamento que mapeiam instâncias de atores para pods | 1 | 100 milicpu | 500 MB | StatefulSet |
dapr-sentry | Gerencia o mTLS entre serviços e atua como uma CA | 2 | 800 milicpu | 200 MB | ReplicaSet |
Perguntas frequentes sobre os Aplicativos de Contêiner do Azure no Azure Arc (Versão prévia)
- Quanto custa?
- Há suporte para Quais recursos de Aplicativos de Contêiner?
- Há suporte para identidades gerenciadas?
- Há limites de colocação em escala?
- Quais logs são coletados?
- O que devo fazer se houver um erro de registro do provedor?
- A extensão pode ser instalada em nós do Windows?
- Posso implantar a extensão Aplicativos de Contêiner em um cluster baseado em Arm64?
Quanto custa?
O Aplicativos de Contêiner do Azure no Kubernetes habilitado para Azure Arc é gratuito durante a visualização pública.
Há suporte para quais recursos de Aplicativos de Contêiner?
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 estarão ativadas. Os recursos que ainda não têm suporte permanecem esmaecidos.
Há suporte para identidades gerenciadas?
Não há suporte para identidades gerenciadas. Os aplicativos não podem receber identidades gerenciadas ao serem executados 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 em vez disso.
Há limites de colocação em escala?
Todos os aplicativos implantados com os Aplicativos de Contêiner do Azure no Kubernetes habilitado para o Azure Arc podem ser dimensionados dentro dos limites do cluster do 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 os aplicativos são gravados na saída padrão.
Ambos os tipos de log podem ser coletados para análise usando ferramentas padrão do Kubernetes. Você também pode configurar a extensão do cluster do ambiente do aplicativo com um workspace do Log Analytics, e ele enviará todos os logs para esse espaço de trabalho.
Por padrão, os logs dos componentes do sistema são enviados para a equipe do Azure. Os logs do aplicativo não são enviados. Você pode impedir que esses logs são transferidos definindo logProcessor.enabled=false
como uma definição de configuração de extensão. Essa definição de configuração desativa o encaminhamento de aplicativos para o workspace do Log Analytics. Desabilitar o processador de logs pode afetar o tempo necessário para qualquer caso de suporte e você será solicitado a coletar logs da saída padrão por outros meios.
O que devo fazer se houver um erro de registro do provedor?
Ao criar um recurso de ambiente conectado dos Aplicativos de Contêiner do Azure, algumas assinaturas poderão 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 provedor Microsoft.App
. O novo registro do provedor não tem efeito sobre os aplicativos ou APIs existentes. Para registrar novamente, use a CLI do Azure para executar az provider register --namespace Microsoft.App --wait
. Em seguida, tente novamente o comando de ambiente conectado.
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 oferece suporte apenas para instalação em nós do Linux.
Posso implantar a extensão Aplicativos de Contêiner em um cluster baseado em Arm64?
No momento, não há suporte para clusters baseados em Arm64.
Notas sobre a versão da extensão
Extensão Aplicativos de Contêiner v1.0.46 (dezembro de 2022)
- Versão de visualização pública inicial da Extensão Aplicativos de Contêiner
Extensão Aplicativos de Contêiner v1.0.47 (janeiro de 2023)
- Atualização do Envoy para a versão 1.0.24
Extensão Aplicativos de Contêiner v1.0.48 (fevereiro de 2023)
- Adicionar investigações de integridade aos contêineres do EasyAuth
- Aumento do limite de memória para o dapr-operator
- Adicionada prevenção de substituição de cabeçalho da plataforma
Extensão Aplicativos de Contêiner v1.0.49 (fevereiro de 2023)
- Atualização do KEDA para a versão 2.9.1 e do Dapr para a versão 1.9.5
- Aumento dos limites de recursos do Controlador Envoy para 200 m de CPU
- Aumentar os limites de recursos do controlador do Aplicativo de Contêiner para 1 GB de memória
- Reduzir os limites de recursos do EasyAuth sidecar para 50 m de CPU
- Resolver o registro de erros do KEDA para valores de métrica ausentes
Extensão Aplicativos de Contêiner v1.0.50 (março de 2023)
- Imagens do registro em log atualizadas em sincronia com a nuvem pública
Extensão Aplicativos de Contêiner v1.5.1 (abril de 2023)
- Novo formato do número de controle de versão
- Atualização do Dapr para 1.10.4
- Manutenção da escala do Envoy após as implantações de novas revisões
- Alterar quando as investigações de integridade de inicialização padrão são adicionadas a um contêiner; se o desenvolvedor não definir as investigações de integridade de inicialização e de preparação, as investigações de integridade de inicialização padrão serão adicionadas
- Adiciona a variável de ambiente CONTAINER_APP_REPLICA_NAME aos contêineres personalizados
- Melhoria no desempenho quando várias revisões são interrompidas
Extensão Aplicativos de Contêiner v1.12.8 (junho de 2023)
- Atualização do BIT fluente do OSS para 2.1.2 e Dapr para 1.10.6
- Suporte para registros de contêineres expostos na porta personalizada
- Habilite a ativação/desativação da revisão quando um Aplicativo de Contêiner for interrompido
- Correção da Lista de Revisões que não retorna contêineres de inicialização
- Adicionados cabeçalhos de permissão padrão para a política cors
Extensão Aplicativos de Contêiner v1.12.9 (julho de 2023)
- Pequenas atualizações nos contêineres sidecar EasyAuth
- Atualização dos agentes de monitoramento de extensão
Extensão Aplicativos de Contêiner v1.17.8 (agosto de 2023)
- Atualização do EasyAuth para 1.6.16, Dapr para 1.10.8 e Envoy para 1.25.6
- Adicionar o suporte de montagem de volume para trabalhos do Aplicativo de Contêiner do Azure
- Adicionadas de restrições de IP para aplicativos com o tipo Entrada TCP
- Adicionado o suporte para Aplicativos de Contêiner do Azure com várias portas expostas
Extensão Aplicativos de Contêiner v1.23.5 (dezembro de 2023)
- Atualização do Envoy para 1.27.2, KEDA para v2.10.0, EasyAuth para 1.6.20 e Dapr para 1.11
- Definir o Envoy para o máximo de TLS 1.3
- Correção para resolver falhas nos pods do processador de registros
- Correção de problemas de recuperação do segredo de extração de imagem
- Atualizar o posicionamento do Envoy para distribuir entre os nós disponíveis sempre que possível
- Quando os Aplicativos de Contêiner não conseguirem provisionar como resultado de conflitos de revisão, defina o estado de provisionamento como Falha
Extensão Aplicativos de Contêiner v1.30.6 (janeiro de 2024)
- Atualização do KEDA para v2.12, imagem do Envoy SC para v1.0.4 e imagem do Dapr para v1.11.6
- Tempo limite de resposta padrão adicionado para rotas do Envoy para 1.800 segundos
- Alterou o nível padrão de registro do Fluent Bit para aviso
- Atraso na exclusão de pods de trabalho para garantir a emissão de logs
- Corrigido o problema de exclusão de pods de trabalho para execuções de trabalho com falha
- Garantir que os trabalhos em estado suspenso tenham 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 a capacidade de suspender trabalhos
- Corrigido o problema em que o escalonador KEDA não estava conseguindo criar um trabalho após a execução de um trabalho interrompido
- Adição de startingDeadlineSeconds ao trabalho do Aplicativo de Contêiner em caso de reinicialização do cluster
- Removido o registro em log pesado no servidor de log de acesso do Envoy
- Atualizada a versão da Configuração de Monitoramento dos Aplicativos de Contêiner do Azure no Kubernetes habilitado para Azure Arc
Extensão Aplicativos de Contêiner v1.36.15 (abril de 2024)
- Atualização do Dapr para v1.12 e do Dapr Metrics para v0.6
- Permitir que os clientes habilitem o registro de depuração do SDK do Azure no Dapr
- Escalar o Envoy em resposta ao uso de memória
- Alteração do formato de registro do Envoy para Json
- Exportar as métricas adicionais do Envoy
- Truncar o log do Envoy para os primeiros 1.024 caracteres quando o conteúdo do log falhar na análise
- Tratar o SIGTERM de forma suave no proxy local
- Permitir a capacidade de usar namespaces diferentes com KEDA
- Adicionada validação para o nome da regra de escala
- Coleta de lixo de revisão habilitada por padrão
- Habilitada a emissão de métricas para sidecars
- Adicionadas volumeMounts às execuções de tarefas
- Adicionada validação aos pontos de extremidade do webhook para trabalhos
Extensão Aplicativos de Contêiner v1.37.1 (julho de 2024)
- Atualizar o EasyAuth para dar suporte ao MISE
Extensão de Aplicativos de Contêiner v1.37.2 (setembro de 2024)
- Imagem Dapr-Metrics atualizada para v0.6.8 para resolver o problema de tempo limite da rede
- Problema resolvido no Processador de Logs que impedia o contêiner MDSD de iniciar quando o cluster estava conectado por trás de um Proxy
Extensão Aplicativos de Contêiner v1.37.7 (outubro de 2024)
- Problema resolvido com o contêiner de inicialização do MDM que causou falha no contêiner caso não pudesse ser retirado
- Adicionado suporte para o Modelo de implantação híbrida de Aplicativos Lógicos (Visualização pública)
Próximas etapas
Criar um ambiente conectado de Aplicativos de Contêiner (Versão prévia)