Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Você pode executar Aplicativos de Contêiner em um AKS habilitado para Azure Arc ou AKS no cluster Local do Azure.
A execução em um cluster Kubernetes habilitado para Azure Arc permite:
- Os desenvolvedores podem aproveitar os recursos do Container Apps
- Administradores de TI mantêm a conformidade corporativa hospedando apps 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ê executa 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 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 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 Aplicativos de Contêiner do Azure no Kubernetes habilitado para Azure Arc.
Limitação | Detalhes |
---|---|
Regiões do Azure suportadas | Austrália Leste, Centro dos EUA, Leste Asiático, Leste dos EUA, Centro-Norte dos EUA, Sudeste Asiático, Suécia Central, Reino Unido Sul, Europa Ocidental, Oeste dos EUA |
Requisito de conectividade de cluster | Deve suportar o tipo de serviço LoadBalancer |
Requisito do SO do nó | Apenas Linux . |
Funcionalidade: Identidades geridas | Não disponível |
Recurso: Extrair imagens do ACR com identidade gerenciada | Não disponível (depende de identidades gerenciadas) |
Funcionalidade: Armazenamento de Ficheiros do Azure | O driver SMB (>= v1.18.0) deve ser instalado antes de usar o armazenamento SMB de arquivos do Azure |
Registos | O Log Analytics deve ser configurado com extensão de cluster; não por aplicação |
Os seguintes recursos são suportados:
- Rótulos / Etiquetas
- Métricas
- Autenticação fácil
- Fluxo de log
- Resiliência
- Domínios personalizados
- Trabalhos de Aplicativos de contêiner
- Gestão de Revisões
- Console do contêiner do aplicativo
Importante
Se estiver implantando no AKS no Azure Local , certifique-se de ter configurado o HAProxy como seu balanceador de carga antes de tentar instalar a extensão. Além disso, certifique-se de que 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 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ê:
Cápsula | Descrição | Número de instâncias | CPU | Memória | Tipo |
---|---|---|---|---|---|
<extensionName>-k8se-activator |
Usado como parte do fluxo de trabalho de dimensionamento | 2 | 100 miliCPU | 500 MB | Conjunto de réplicas |
<extensionName>-k8se-billing |
Geração de registos de faturamento | 3 | 100 miliCPU | 100 MB | Conjunto de réplicas |
<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 | Conjunto de réplicas |
<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 | Conjunto de réplicas |
<extensionName>-k8se-envoy-controller |
Operador, que gera a configuração do Envoy | 2 | 200 milicpu | 500 MB | Conjunto de réplicas |
<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 | Conjunto de réplicas |
<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 | Conjunto de réplicas |
<extensionName>-k8se-keda-cosmosdb-scaler |
Escalador KEDA Cosmos DB | 1 | 10 metros | 128 MB | Conjunto de réplicas |
<extensionName>-k8se-keda-metrics-apiserver |
Servidor de métricas KEDA | 1 | 1 Núcleo | 1.000 MB | Conjunto de réplicas |
<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 | Conjunto de réplicas |
<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 | Conjunto de réplicas |
dapr-métricas | Pod de métricas Dapr | 1 | 100 miliCPU | 500 MB | Conjunto de réplicas |
Operador de DAPR | Gerencia atualizações de componentes e pontos de extremidade de serviço para Dapr | 1 | 100 miliCPU | 500 MB | Conjunto de réplicas |
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 | Conjunto de réplicas |
Perguntas frequentes sobre aplicativos de contêiner do Azure no Azure Arc
- Aplicativos de contêiner do Azure no Azure Arc
Quais recursos de aplicativos de contêiner são suportados?
Consulte o portal para obter a lista mais atualizada. As funcionalidades não suportadas são exibidas a cinzento no portal.
As identidades gerenciadas são suportadas?
Não há suporte para identidades gerenciadas. Não é possível atribuir identidades geridas aos aplicativos em execução no Azure Arc. Se o 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 implementados com Azure Container Apps no Kubernetes habilitado para Azure Arc podem ser escalados 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, enviando 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 desabilita o encaminhamento do aplicativo para o 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 registar novamente, use a CLI do Azure para executar az provider register --namespace Microsoft.App --wait
. Em seguida, tente novamente o comando connected environment.
Como posso instalar o driver SMB?
Você pode instalar o driver SMB usando o seguinte comando Helm. Para obter métodos de instalação adicionais, consulte Instalar driver em um cluster 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 suporta apenas a instalação em nós Linux.
Posso implantar a extensão Container Apps em um cluster baseado em Arm64?
Não. Não há suporte para clusters baseados em Arm64.