Tutorial: Criar um Aplicativo de Contêiner do Azure no Kubernetes habilitado para Azure Arc (Visualização)
Neste tutorial, você cria um aplicativo Container para um cluster Kubernetes habilitado para Azure Arc (Visualização) e aprende a:
- Criar um aplicativo de contêiner no Azure Arc
- Exibir o diagnóstico do seu aplicativo
Pré-requisitos
Antes de continuar a criar um aplicativo de contêiner, primeiro você precisa configurar um cluster Kubernetes habilitado para Azure Arc para executar os Aplicativos de Contêiner do Azure.
Adicionar extensões da CLI do Azure
Inicie o ambiente Bash no Azure Cloud Shell.
Em seguida, adicione as extensões necessárias da CLI do Azure.
Aviso
O comando a seguir instala uma extensão personalizada de Aplicativos de Contêiner que não pode ser usada com o serviço de nuvem pública. Você precisará desinstalar a extensão se voltar para a nuvem pública do Azure.
az extension add --upgrade --yes --name customlocation
az extension add --name containerapp --upgrade --yes
Criar um grupo de recursos
Crie um grupo de recursos para os serviços criados neste tutorial.
GROUP_NAME="my-container-apps-resource-group"
az group create --name $GROUP_NAME --location eastus
Obter informações de localização personalizadas
Obtenha o seguinte grupo de locais, nome e ID do administrador do cluster. Consulte Criar um local personalizado para obter detalhes.
CUSTOM_LOCATION_GROUP="<RESOURCE_GROUP_CONTAINING_CUSTOM_LOCATION>"
CUSTOM_LOCATION_NAME="<NAME_OF_CUSTOM_LOCATION>"
Obtenha o ID de local personalizado.
CUSTOM_LOCATION_ID=$(az customlocation show \
--resource-group $CUSTOM_LOCATION_GROUP \
--name $CUSTOM_LOCATION_NAME \
--query id \
--output tsv)
Recuperar ID do ambiente conectado
Agora que você tem a ID de local personalizada, pode consultar o ambiente conectado.
Um ambiente conectado é basicamente o mesmo que um ambiente padrão de Aplicativos de Contêiner, mas o cluster Kubernetes habilitado para Arc subjacente controla as restrições de rede.
CONTAINER_APP_NAME="my-container-app"
CONNECTED_ENVIRONMENT_ID=$(az containerapp connected-env list --custom-location $CUSTOM_LOCATION_ID -o tsv --query '[].id')
Criar uma aplicação
O exemplo a seguir cria um aplicativo Node.js.
az containerapp create \
--resource-group $GROUP_NAME \
--name $CONTAINER_APP_NAME \
--environment $CONNECTED_ENVIRONMENT_ID \
--environment-type connected \
--image mcr.microsoft.com/k8se/quickstart:latest \
--target-port 80 \
--ingress external
az containerapp browse --resource-group $GROUP_NAME --name $CONTAINER_APP_NAME
Obter logs de diagnóstico usando o Log Analytics
Nota
Uma configuração do Log Analytics é necessária quando você instala a extensão Container Apps para exibir informações de diagnóstico. Se você instalou a extensão sem o Log Analytics, ignore esta etapa.
Navegue até o espaço de trabalho do Log Analytics configurado com a extensão Aplicativos de contêiner e selecione Logs na navegação à esquerda.
Execute a seguinte consulta de exemplo para mostrar os logs das últimas 72 horas.
Se houver um erro ao executar uma consulta, tente novamente em 10 a 15 minutos. Pode haver um atraso para o Log Analytics começar a receber logs do seu aplicativo.
let StartTime = ago(72h);
let EndTime = now();
ContainerAppConsoleLogs_CL
| where TimeGenerated between (StartTime .. EndTime)
| where ContainerAppName_s =~ "my-container-app"
Os logs de aplicativos para todos os aplicativos hospedados em seu cluster Kubernetes são registrados no espaço de trabalho do Log Analytics na tabela de log personalizada chamada ContainerAppConsoleLogs_CL
.
- Log_s contém logs de aplicativos para uma determinada extensão de Aplicativos de Contêiner
- AppName_s contém o nome do aplicativo Container App. Além dos logs que você escreve por meio do código do aplicativo, a coluna Log_s também contém logs na inicialização e no desligamento do contêiner.
Você pode saber mais sobre consultas de log em Introdução ao Kusto.