Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Você pode executar Aplicativos de Contêiner em um AKS ou AKS habilitado para Azure Arc no cluster do Azure Local.
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
As limitações a seguir se aplicam aos Apps de Contêiner do Azure no Kubernetes com Azure Arc habilitado.
| Limitações | Detalhes |
|---|---|
| Regiões do Azure com suporte | Leste da Austrália, Eua Central, Leste da Ásia, Leste dos EUA, Centro-Norte dos EUA, Sudeste Asiático, Suécia Central, Sul do Reino Unido, Oeste da Europa, Oeste dos EUA |
| 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) |
| Recurso: Armazenamento de Arquivos do Azure | O driver SMB (>= v1.18.0) deve ser instalado antes de usar o armazenamento SMB de arquivos do Azure |
| Registros | O Log Analytics deve ser configurado com a extensão do cluster; não por aplicativo |
Há suporte para os seguintes recursos:
- Rótulos
- Métricas
- Autenticação Fácil
- Fluxo de log
- Resiliência
- Domínios personalizados
- Trabalhos dos Aplicativos de Contêiner
- Gestão de Revisão
- Console do contêiner do aplicativo
Importante
Se estiver implantando no AKS no Azure Local, certifique-se de configurar o HAProxy como seu balanceador de carga antes de tentar instalar a extensão. Além disso, verifique se o CoreDNS personalizado está habilitado.
Para obter informações sobre como habilitar o CoreDNS personalizado do AKS, consulte a documentação da az containerapp arc CLI.
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 de registro de cobrança | 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 aplicativos de contêiner do Azure no Azure Arc
- Aplicativos de Contêiner do Azure no Azure Arc
Há suporte para quais recursos de Aplicativos de Contêiner?
Verifique o portal para obter a lista mais atualizada. As funcionalidades sem suporte estão acinzentadas no portal.
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.
Como posso instalar o Driver SMB?
Você pode instalar o driver SMB usando o comando Helm a seguir. Para obter métodos de instalação adicionais, consulte Instalar driver em um cluster do Kubernetes.
helm repo add csi-driver-smb https://raw.githubusercontent.com/kubernetes-csi/csi-driver-smb/master/charts
helm install csi-driver-smb csi-driver-smb/csi-driver-smb --namespace kube-system --version v1.18.0
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?
Não. Não há suporte para clusters baseados em Arm64.
Conteúdo relacionado
- Criar um ambiente conectado de aplicativos de contêiner
- Notas de versão de extensão dos Aplicativos de Contêiner do Azure