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.
Aplica-se a: Aplicativos Lógicos do Azure (Padrão)
Para cenários em que precisa de usar, controlar e gerir a sua própria infraestrutura, crie fluxos de trabalho de Standard Logic App utilizando o modelo híbrido de implementação no Azure Logic Apps. Esse modelo fornece recursos para que você crie e hospede soluções de integração para ambientes parcialmente conectados que exigem processamento local, armazenamento e acesso à rede. Sua infraestrutura pode incluir sistemas locais, nuvens privadas e nuvens públicas. Ao utilizar o modelo híbrido, o seu fluxo de trabalho da Standard Logic App é alimentado pelo runtime do Azure Logic Apps, que é alojado na sua infraestrutura como parte de uma extensão Azure Container Apps.
Para obter uma visão geral da arquitetura que mostra onde os fluxos de trabalho do aplicativo lógico padrão são hospedados e executados em um ambiente parcialmente conectado, consulte Configurar requisitos de infraestrutura para implantação híbrida para aplicativos lógicos padrão.
Este guia prático mostra como criar e implementar um fluxo de trabalho de aplicação de lógica padrão utilizando o modelo híbrido de implantação, depois de configurar os recursos necessários para alojar a sua aplicação.
Importante
O runtime e fluxos de trabalho locais do Azure Logic Apps que utilizam apenas dependências disponíveis localmente podem continuar a correr quando a conectividade do Azure é interrompida. A gestão, implementação, monitorização, operações de identidade e conectores geridos dependentes do Azure podem não estar disponíveis enquanto desconectados. Após 24 horas, pode perder os dados de registo, embora a execução local continue. Para mais informações, consulte Limitações para implementação híbrida.
Limitações
Para as regiões Azure atualmente suportadas, clusters Kubernetes suportados e limitações em toda a plataforma, veja Limitações para implementação híbrida.
As seguintes limitações aplicam-se ao criar e operar aplicações de lógica híbrida:
| Limitação | Descrição |
|---|---|
| Autenticação de identidade gerida para ligações API geridas | As ligações API geridas atualmente não suportam autenticação de identidade gerida em aplicações de lógica híbrida. Deve criar o seu próprio registo de aplicação usando o Microsoft Entra ID. Para obter mais informações, siga estas etapas mais adiante neste guia. |
| Gatilhos baseados em função | Alguns gatilhos baseados em funções, como o Blob do Azure, o Cosmos DB e os Hubs de Eventos, exigem uma conexão com a conta de armazenamento do Azure associada ao seu aplicativo lógico Padrão. Se usar qualquer gatilho baseado em função, nas variáveis de ambiente da sua aplicação lógica padrão no portal do Azure ou no ficheiro local.settings.json do seu projeto de aplicação lógica no Visual Studio Code, adicione a definição de aplicação chamada AzureWebJobsStorage e forneça a cadeia de conexão da sua conta de armazenamento:"Values": { "name": "AzureWebJobsStorage", "value": "{storage-account-connection-string}" } |
Comportamento durante uma interrupção da conectividade do Azure
- Os fluxos de trabalho podem continuar a funcionar se o tempo de execução e todas as dependências necessárias do fluxo de trabalho permanecerem disponíveis localmente.
- As operações incorporadas correm com o tempo de execução local, mas qualquer serviço externo chamado por uma operação deve permanecer acessível.
- As operações de conectores geridos requerem conectividade aos seus serviços alojados no Azure.
- A gestão do portal Azure, a implementação baseada no Azure, as operações de identidade e a entrega de telemetria podem tornar-se indisponíveis ou atrasadas.
- Se o tempo de execução permanecer desligado após 24 horas, pode perder os dados de registo gerados após esse tempo.
Se as suas cargas de trabalho exigirem implementação, monitorização, alertas, execução de reenvio ou operações de identidade durante uma desconexão prolongada, valide o comportamento para a sua configuração específica com a sua conta conta Microsoft ou equipa de produto.
Pré-requisitos
Uma conta e uma subscrição do Azure. Se não tiver uma subscrição, inscreva-se numa conta do Azure gratuita.
Os seguintes recursos geridos pelo cliente, que devem todos existir dentro da mesma rede para a conectividade necessária:
- Um cluster Kubernetes suportado que está ligado ao Azure Arc
- Uma base de dados SQL para armazenar localmente o histórico de execução de fluxos de trabalho, entradas e saídas para processamento
- Uma partilha de arquivos SMB (Server Message Block) para armazenar localmente artefatos usados pelos seus workflows.
Para cumprir estes requisitos, configure estes recursos para suportar a implementação híbrida para fluxos de trabalho Standard.
Para trabalhar no Visual Studio Code, você precisa da extensão Azure Logic Apps (Standard) para Visual Studio Code com os pré-requisitos relacionados.
Gorjeta
Se você tiver uma nova instalação do Visual Studio Code, confirme se você pode executar localmente um fluxo de trabalho padrão básico antes de tentar implantar em sua própria infraestrutura. Esta execução de teste ajuda a isolar quaisquer erros que possam existir no seu projeto de fluxo de trabalho Padrão.
Crie seu aplicativo lógico padrão
Crie seu aplicativo lógico padrão para implantação híbrida seguindo estas etapas:
Na caixa de pesquisa do portal do Azure, insira aplicativos lógicos e selecione Aplicativos lógicos.
Na barra de ferramentas da página Aplicativos lógicos , selecione Adicionar.
Na página Criar Aplicativo Lógico, em Padrão, selecione Híbrido.
Na página Criar Aplicativo Lógico (Híbrido), forneça as seguintes informações:
Propriedade Necessário Valor Descrição Subscrição Sim < Nome da subscrição Azure> Seu nome de assinatura do Azure.
Este exemplo usa Pay-As-You-Go.Grupo de Recursos Sim < Azure-nome-do-grupo-de-recursos> O grupo de recursos do Azure onde você cria seu aplicativo híbrido e recursos relacionados. Esse nome deve ser exclusivo entre regiões e pode conter apenas letras, números, hífenes (-), sublinhados (_), parênteses (()) e pontos (.).
Este exemplo cria um grupo de recursos chamado Hybrid-RG.Nome da Aplicação Lógica Sim < logic-app-name> O nome do aplicativo lógico, que deve ser exclusivo entre regiões e pode conter apenas letras minúsculas, números ou hífenes (-).
Este exemplo usa my-logic-app-hybrid.Região Sim < Região do Azure> Uma região do Azure que suporta implantação híbrida.
Este exemplo usa East US.Ambiente conectado do aplicativo de contêiner Sim < nome-do-ambiente conectado> O cluster Kubernetes habilitado para Arc que você criou como o ambiente de implantação para seu aplicativo lógico. Para obter mais informações, consulte Tutorial: Ativar aplicativos de contentor do Azure em Kubernetes com Azure Arc ativado. Definir definições de armazenamento Sim Ativado ou desativado Continua na guia Armazenamento na página Criar Aplicação Lógica (Híbrido). O exemplo a seguir mostra a página de criação de aplicativo lógico no portal do Azure com valores de exemplo:
Na página Armazenamento, forneça as seguintes informações sobre o provedor de armazenamento e o compartilhamento de arquivos SMB que você configurou anteriormente:
Propriedade Necessário Valor Descrição Cadeia de conexão SQL Sim < sql-server-connection-string> A cadeia de conexão do SQL Server que você salvou anteriormente. Para obter mais informações, consulte Criar provedor de armazenamento do SQL Server. Nome do anfitrião Sim < nome-do-arquivo-compartilhamento-host> O nome do host para seu compartilhamento de arquivos SMB. Caminho de compartilhamento de arquivos Sim < caminho de compartilhamento de arquivos> O caminho de compartilhamento de arquivos para seu compartilhamento de arquivos SMB. Nome de utilizador Sim < arquivo-compartilhamento-nome-de-usuário> O nome de usuário para seu compartilhamento de arquivos SMB. Palavra-passe Sim < arquivo-compartilhamento-senha> A palavra-passe para a partilha de ficheiros SMB. Quando terminar, selecione Rever + criar. Confirme as informações fornecidas e selecione Criar.
Depois que o Azure concluir a implantação, selecione Ir para o recurso.
O portal do Azure abre seu recurso de aplicativo lógico, por exemplo:
No menu de recursos do aplicativo lógico, em Fluxos de trabalho, selecione Fluxos de trabalho.
Na barra de ferramentas da página Fluxos de trabalho, selecione Adicionar para adicionar um fluxo de trabalho vazio com estado ou sem estado.
Depois que o designer abrir, crie seu fluxo de trabalho adicionando um gatilho e ações.
Para obter mais informações, consulte Criar um fluxo de trabalho com um gatilho e ações.
Versionamento para implantações híbridas
Uma aplicação lógica padrão com a opção de hospedagem híbrida cria automaticamente uma nova revisão, que é um conceito de controlo de versão das Aplicações de Contêiner do Azure, sempre que se guardam alterações num fluxo de trabalho secundário. Essa revisão pode levar um pouco de tempo para ser ativada, o que significa que, depois de salvar as alterações, convém aguardar vários momentos antes de testar seu fluxo de trabalho.
Se as alterações ainda não apareceram no fluxo de trabalho, você pode verificar se a revisão existe:
No portal do Azure, abra seu recurso. No menu de recursos, em Revisão, selecione Revisões e réplicas.
Na página Revisões e réplicas, na guia de Revisões ativas, verifique se uma nova revisão aparece na lista.
Para obter mais informações, consulte os seguintes recursos:
Configurar telemetria aprimorada ou OpenTelemetry para monitoramento de desempenho
Você pode configurar a coleta de telemetria aprimorada no Application Insights para seu aplicativo lógico padrão e, em seguida, exibir os dados coletados depois que o fluxo de trabalho concluir uma execução. Esse recurso oferece uma experiência mais simples para obter informações sobre seus fluxos de trabalho e mais controle sobre a filtragem de eventos na fonte de dados, o que ajuda a reduzir os custos de armazenamento. Essas melhorias se concentram em métricas de desempenho em tempo real que fornecem informações sobre a integridade e o comportamento do seu sistema.
Para cenários parcialmente conectados e locais, você pode configurar seu aplicativo lógico padrão para emitir telemetria com base nas configurações do aplicativo com suporte OpenTelemetry que você define para o ambiente específico. Por padrão, esses dados de telemetria são enviados para o Application Insights. Para obter mais informações, consulte Habilitar telemetria aprimorada no Application Insights para fluxos de trabalho padrão em Aplicativos Lógicos do Azure.
O Application Insights requer conectividade ao Azure. Durante a interrupção da conectividade, a entrega de telemetria pode sofrer atrasos e pode perder os dados de registo gerados após 24 horas. Verifique quaisquer requisitos de monitorização local e de emissão de alertas em função do destino e da configuração da telemetria que utiliza.
Alterar a vCPU e a alocação de memória no portal do Azure
Você pode editar as configurações de vCPU e memória para seu recurso de aplicativo lógico padrão. Essas alterações afetam a taxa de faturação para as tarefas do aplicativo lógico padrão.
No portal do Azure, abra seu recurso de aplicativo lógico padrão.
No menu de recursos, em Configurações, selecione Contêineres.
Na barra de ferramentas da página Contêineres, selecione Editar e implantar, que abre o painel Editar um contêiner.
Na guia Propriedades, em Alocação de recursos de contêiner, altere os seguintes valores para se adequar ao seu cenário:
Propriedade Valor Descrição Núcleos de CPU - Padrão: 1
- Mínimo: 0,25
- Máximo: 2Determina os núcleos vCPU a serem atribuídos à sua instância de contêiner. Você pode aumentar esse valor em 0,25 núcleos até o valor máximo. O número total em todas as instâncias de contêiner para este aplicativo lógico é limitado a 2 núcleos. Memória - Padrão: 2
- Mínimo: 0,1
- Máximo: 4Determina a capacidade de memória em gibibytes (GiB) para atribuir à sua instância de contêiner. Pode aumentar este valor em 0,1 GiB até ao valor máximo. A capacidade total em todas as instâncias de contêiner para este aplicativo lógico é limitada a 4 GiB. Quando terminar, selecione Guardar.
Alterar o dimensionamento de réplica no portal do Azure
Você pode controlar o dimensionamento automático para o número de réplicas que são implantadas em resposta a um evento de ativação. Uma réplica é uma nova instância de uma revisão ou versão de recursos de aplicativo lógico. Para alterar os valores mínimo e máximo para esse intervalo, você pode modificar as regras de escala para determinar os tipos de evento que acionam o dimensionamento. Para obter mais informações, veja Definir regras de dimensionamento no Azure Container Apps.
No portal do Azure, abra seu recurso de aplicativo lógico padrão.
No menu de recursos, em Configurações, selecione Escala.
Na página Escala, em Configuração da regra de escala, altere os seguintes valores para se ajustar ao seu cenário:
Propriedade Valor Descrição Réplicas mínimas - Padrão: 1
- Mínimo: 0
- Máximo: 1000Determina o número mínimo de réplicas permitidas para a revisão a qualquer momento. Esse valor substitui as regras de escala e deve ser menor que o número máximo de réplicas. Máximo de réplicas - Padrão: 30
- Mínimo: 0
- Máximo: 1000Determina o número máximo de réplicas permitidas para a revisão a qualquer momento. Esse valor substitui as regras de escala. Quando terminar, selecione Guardar.
Controle o tráfego de entrada para seu aplicativo lógico no portal do Azure
Você pode expor seu aplicativo lógico à Web pública, sua rede virtual e outros aplicativos lógicos em seu ambiente habilitando a entrada. O Azure impõe configurações de entrada por meio de um conjunto de regras que controlam o roteamento do tráfego externo e interno para seu aplicativo lógico. Quando você habilita a entrada, não precisa criar um Balanceador de Carga do Azure, endereço IP público ou quaisquer outros recursos do Azure para habilitar solicitações HTTP de entrada ou tráfego TCP. Para obter mais informações, consulte Ingress in Container Apps.
Nota
Quando você ativar a entrada, todo o tráfego será direcionado para sua última revisão por padrão. Aceda à página de gestão de revisões para alterar as configurações de tráfego.
No menu de recursos, em Configurações, selecione Ingressar.
Na página Ingresso, ao lado de Ingresso, selecione a caixa Habilitado.
Com base no seu cenário, configure as opções restantes.
Para obter mais informações, veja a seguinte documentação:
Configurar a autenticação para conexões de API gerenciadas
As ligações de API geridas não suportam atualmente autenticação de identidade gerida em aplicações de lógica híbrida. Para autenticar estas ligações, deve criar o seu próprio registo de aplicação usando o Microsoft Entra ID. Pode então adicionar os valores do registo desta aplicação como variáveis de ambiente no seu recurso de aplicação Standard Logic. Este modelo de autenticação requer conectividade ao Microsoft Entra ID.
Criar um registo de aplicação com o Microsoft Entra ID
portal do Azure
No portal do Azure, siga Guia de início rápido: registrar um aplicativo na plataforma de identidade da Microsoft para criar um registro de aplicativo.
Após a conclusão da criação, encontre seu novo registro de aplicativo no portal.
No menu de recursos, selecione Visão geral e salve os seguintes valores, que você precisará mais tarde para autenticação de conexão:
- ID de Cliente
- ID do Inquilino
Na barra lateral de recursos, selecione Certificados & segredos>Segredos do cliente Novo>segredo do cliente.
Crie o segredo do cliente e guarde imediatamente o Valor do segredo. O valor não volta a aparecer depois de sair da página.
Para a ID do objeto, execute estas etapas:
Na página Visão geral, selecione Aplicativo gerenciado no link do diretório local para o registro do aplicativo, conforme mostrado:
Na página que se abre, copie e guarde o valor do ID do Objeto:
Agora, adicione os valores salvos como variáveis de ambiente ao recurso do aplicativo lógico padrão.
CLI do Azure
Para criar um registo de aplicação e o seu principal de serviço sem atribuir um papel no Azure, execute o seguinte comando:
az ad sp create-for-rbac \ --name <app-registration-name> \ --skip-assignmentNa saída do comando, guarde os valores
appId,passwordetenantcomo os valores do ID do cliente, do segredo do cliente e do ID do tenant. O segredo do cliente aparece apenas na saída do comando.Obtenha o ID do objeto principal do serviço:
az ad sp show \ --id <client-ID> \ --query id \ --output tsvAgora, adicione os valores salvos como variáveis de ambiente ao recurso do aplicativo lógico padrão.
Para obter mais informações, consulte:
Adicionar valores de registo de aplicação à sua aplicação lógica padrão
No portal do Azure, aceda ao recurso de Aplicação lógica Standard.
No menu de recursos, em Configurações, selecione Contêineres e, em seguida, selecione a guia Variáveis de ambiente.
Para obter mais informações sobre configurações de aplicativo e configurações de host, consulte Editar configurações de aplicativo e configurações de host.
Na barra de ferramentas, selecione Editar e implantar.
No painel Editar um contêiner, selecione Variáveis de ambiente e, em seguida, selecione Adicionar.
Na tabela a seguir, adicione cada variável de ambiente com o valor especificado:
Variável de ambiente Valor WORKFLOWAPP_AAD_CLIENTID < ID do meu cliente> WORKFLOWAPP_AAD_OBJECTID < my-object-ID> WORKFLOWAPP_AAD_TENANTID < my-tenant-ID> Quando terminar, selecione Guardar.
Armazenar e referenciar o segredo do cliente
Guarda o segredo do cliente como um segredo no recurso da tua aplicação Logic. Faz referência a esse segredo da variável de ambiente WORKFLOWAPP_AAD_CLIENTSECRET .
Importante
Roda o segredo antes que expire.
No portal do Azure, vá para o recurso Logic App.
Na barra lateral da app Logic, em Definições, seleciona Segredos.
Na barra de ferramentas, selecione Adicionar.
No painel Adicionar segredo , forneça a seguinte informação e depois selecione Adicionar:
Chave Valor WORKFLOWAPP_AAD_CLIENTSECRET < meu-cliente-segredo> Na barra lateral da app Logic, em Definições, selecione Containers e depois selecione o separador Variáveis de Ambiente .
Na barra de ferramentas, selecione Editar e implantar.
Adiciona a variável de ambiente WORKFLOWAPP_AAD_CLIENTSECRET , seleciona a opção para referenciar um segredo e seleciona o segredo que criaste.
Quando terminar, selecione Guardar.
Problemas conhecidos e resolução de problemas
A seção a seguir descreve os problemas atualmente conhecidos e as diretrizes para solucionar problemas comuns.
Problemas gerais de configuração do ambiente ou implantação do portal
Para ajudá-lo a diagnosticar e depurar problemas com a configuração do ambiente ou falhas de implantação do portal, você pode tentar executar o script dotroubleshoot.ps1 PowerShell fornecido para a opção de implantação híbrida.
Vá para o repositório GitHub do Azure Logic Apps: scripts/pasta hybrid.
Copie o arquivo troubleshoot.ps1 para uma pasta no mesmo local da implantação do aplicativo lógico.
Execute o script usando o PowerShell.
Clusters Kubernetes habilitados pelo Arc
Em cenários raros, poderás notar um alto consumo de memória no teu cluster. Para evitar esse problema, aumente a capacidade ou adicione redimensionamento automático para pools de nós.
O host de função não está em execução
Depois de implantar seu aplicativo lógico padrão, confirme se o aplicativo está sendo executado corretamente.
No portal do Azure, abra seu recurso de aplicativo lógico.
No menu de recursos, selecione Visão geral.
Na página Visão geral, ao lado do campo URL do aplicativo, selecione a URL do recurso.
Se o seu aplicativo estiver sendo executado corretamente, uma janela do navegador será aberta e mostrará a seguinte mensagem:
Caso contrário, se a sua aplicação tiver alguma falha, verifique se os seus pods Kubernetes estão a funcionar corretamente. Certifique-se de que
kubectlusa o contexto do seu cluster e depois execute os seguintes comandos:kubectl get ns kubectl get pods -n logicapps-aca-ns kubectl describe pod {logic-app-pod-name} -n logicapps-aca-nsPara obter mais informações, veja a seguinte documentação:
O cluster não tem capacidade suficiente
Se você executou o comando anterior e recebe um aviso semelhante ao exemplo a seguir, seu cluster não tem nós suficientes para processamento:
Warning: FailedScheduling 4m52s (x29 over 46m) default-scheduler 0/2 nodes are available: 2 Too many pods. preemption: 0/2 nodes are available: 2 No preemption victims found for incoming pod.
Para o AKS, aumente o número de nós e configure o autoescalonamento seguindo estes passos:
No portal do Azure, vá para sua instância de serviço do Kubernetes.
No menu de instâncias, em Configurações, selecione Pools de nós.
Na barra de ferramentas da página Ferramentas do Nó, selecione + Adicionar pool de nós.
Para obter mais informações, veja a seguinte documentação:
- Criar conjuntos de nós para um cluster no Serviço Kubernetes do Azure (AKS)
- Gerir grupos de nós para o cluster no Serviço Kubernetes do Azure (AKS)
- Visão geral do dimensionamento automático de cluster no Serviço Kubernetes do Azure (AKS)
- Utilizar o autoscaler de cluster no Serviço Kubernetes do Azure (AKS)
Para OpenShift ou RKE2, utilize o procedimento suportado para a sua distribuição do Kubernetes para aumentar a capacidade.
Driver CSI (SMB Container Storage Interface) não instalado
Depois de executar o comando anterior kubectl describe pod , se o seguinte aviso aparecer, confirme se o driver CSI para seu compartilhamento de arquivos SMB está instalado corretamente:
Warning FailedScheduling 5m16s (x2 over 5m27s) default-scheduler 0/14 nodes are available: pod has unbound immediate PersistentVolumeClaims. preemption: 0/14 nodes are available: 14 Preemption is not helpful for scheduling.
Normal NotTriggerScaleUp 9m49s (x31 over 14m) cluster-autoscaler pod didn't trigger scale-up: 3 pod has unbound immediate PersistentVolumeClaims
Para confirmar, execute o seguinte comando:
kubectl get csidrivers
Se os resultados não incluírem smb.csi.k8s.io, siga as instruções específicas da distribuição para instalar o driver SMB.
Para verificar o estado do pod do controlador CSI SMB, execute o seguinte comando:
kubectl --namespace=kube-system get pods --selector="app.kubernetes.io/name=csi-driver-smb" --watch
Conteúdos relacionados
- Configurar requisitos para a implantação de aplicativos lógicos padrão em sua própria infraestrutura
- Habilitar telemetria aprimorada no Application Insights para fluxos de trabalho padrão em Aplicativos Lógicos do Azure
- Porque migrar do BizTalk Server para o Azure Logic Apps Standard?
- Migrar o BizTalk Server com o Azure Logic Apps Migration Agent