Habilitar o modo com estado para conectores internos sem estado nos Aplicativos Lógicos do Azure

Aplica-se a: Aplicativos Lógicos do Azure (Standard)

Nos fluxos de trabalho do aplicativo lógico Standard, os seguintes conectores internos baseados no provedor de serviços são sem estado, por padrão:

  • Barramento de Serviço do Azure
  • SAP
  • IBM MQ

Para executar essas operações de conector no modo com estado, você precisa habilitar essa funcionalidade. Este guia de instruções mostra como habilitar o modo com estado para esses conectores.

Pré-requisitos

Habilitar o modo com estado no portal do Azure

  1. No portal do Azure, abra o recurso de aplicativo lógico Standard em que você deseja habilitar o modo com estado para essas operações de conector.

  2. Para habilitar a integração de rede virtual para seu aplicativo lógico e adicionar seu aplicativo lógico à sub-rede criada anteriormente, siga estas etapas:

    1. No menu de recursos do aplicativo lógico, em Configurações, selecione Rede.

    2. Na seção Configuração de tráfego de saída, ao lado de Integração de rede virtual, selecione Não configurado>Adicionar integração de rede virtual.

    3. No painel Adicionar integração de rede virtual que é aberto, selecione sua assinatura do Azure e sua rede virtual.

    4. Na lista Sub-rede, selecione a sub-rede na qual você deseja adicionar seu aplicativo lógico.

    5. Quando terminar, selecione Conectar e retorne à página Rede.

      A propriedade de Integração de rede virtual agora está definida como a rede virtual e a sub-rede selecionadas, por exemplo:

      Captura de tela mostra o portal do Azure, o recurso de aplicativo lógico Standard, a página Rede com a rede virtual e a sub-rede selecionadas.

    Para obter informações gerais sobre como habilitar a integração de rede virtual com seu aplicativo, confira Habilitar a integração de rede virtual no Serviço de Aplicativo do Azure.

  3. Em seguida, atualize a configuração de site subjacente do aplicativo lógico (<nome-de-aplicativo-lógico>.azurewebsites.net) usando uma das seguintes ferramentas:

Atualizar a configuração do site para o aplicativo lógico

Depois de habilitar a integração de rede virtual para seu aplicativo lógico, você precisa atualizar a configuração de site subjacente do aplicativo lógico (<nome-de-aplicativo-lógico>.azurewebsites.net) usando um dos seguintes métodos:

Portal do Azure

Para configurar portas privadas de rede virtual usando o portal do Azure, siga estas etapas:

  1. No portal do Azure, localize e abra o recurso de aplicativo lógico Standard.
  2. No menu do aplicativo lógico, acesse Configurações e selecione Configuração.
  3. Na página Configuração, selecione a guia Configurações gerais.
  4. Em Configurações da Plataforma, na caixa Portas Privadas da VNet, insira as portas que você deseja usar.

API de Gerenciamento de Recursos do Azure

Para concluir essa tarefa com a API de Gerenciamento de Recursos do Azure – Atualizar por Id, examine os seguintes requisitos, sintaxe e valores de parâmetro.

Requisitos

A autorização OAuth e o token de portador são necessários. Para obter o token de portador, siga estas etapas

  1. Enquanto estiver conectado ao portal do Azure, abra as ferramentas de desenvolvedor do navegador da Web (F12).

  2. Obtenha o token enviando qualquer solicitação de gerenciamento, por exemplo, salvando um fluxo de trabalho em seu aplicativo lógico Standard.

Sintaxe

Atualiza um recurso usando a ID de recurso especificada:

PATCH https://management.azure.com/{resourceId}?api-version=2021-04-01

Valores de parâmetro

Elemento Valor
Método de solicitação HTTP PATCH
<resourceId> subscriptions/{IDdaSuaAssinatura}/resourcegroups/{seuGrupoDeRecurso}/providers/Microsoft.Web/sites/{nomeDoWebsite}/config/web
<yourSubscriptionId> A ID da assinatura do Azure
<yourResourceGroup> O grupo de recursos que contém o recurso de aplicativo lógico
<websiteName> O nome do recurso de aplicativo lógico, que é mystandardlogicapp neste exemplo
Corpo da solicitação HTTP {"properties": {"vnetPrivatePortsCount": "2"}}

Exemplo

https://management.azure.com/subscriptions/XXxXxxXX-xXXx-XxxX-xXXX-XXXXxXxXxxXX/resourcegroups/My-Standard-RG/providers/Microsoft.Web/sites/mystandardlogicapp/config/web?api-version=2021-02-01

PowerShell do Azure

Para concluir essa tarefa com o Azure PowerShell, examine os requisitos, sintaxe e valores a seguir. Esse método não exige que você obtenha manualmente o token de portador.

Sintaxe

Set-AzContext -Subscription {yourSubscriptionID}
$webConfig = Get-AzResource -ResourceId {resourceId}
$webConfig.Properties.vnetPrivatePortsCount = 2
$webConfig | Set-AzResource -ResourceId {resourceId}

Para saber mais, confira a seguinte documentação:

Valores de parâmetro

Elemento Valor
<IDdaSuaAssinatura> A ID da assinatura do Azure
<resourceId> subscriptions/{IDdaSuaAssinatura}/resourcegroups/{seuGrupoDeRecurso}/providers/Microsoft.Web/sites/{nomeDoWebsite}/config/web
<yourResourceGroup> O grupo de recursos que contém o recurso de aplicativo lógico
<websiteName> O nome do recurso de aplicativo lógico, que é mystandardlogicapp neste exemplo

Exemplo

https://management.azure.com/subscriptions/XXxXxxXX-xXXx-XxxX-xXXX-XXXXxXxXxxXX/resourcegroups/My-Standard-RG/providers/Microsoft.Web/sites/mystandardlogicapp/config/web?api-version=2021-02-01

Solucionar problemas de erros

Erro: a contagem de instâncias reservadas é inválida

Se você receber um erro que diz que a contagem de instâncias reservadas é inválida, use a seguinte solução alternativa:

$webConfig.Properties.preWarmedInstanceCount = $webConfig.Properties.reservedInstanceCount
$webConfig.Properties.reservedInstanceCount = $null
$webConfig | Set-AzResource -ResourceId {resourceId}

Exemplo de erro:

Set-AzResource :
{
   "Code":"BadRequest",
   "Message":"siteConfig.ReservedInstanceCount is invalid.  Please use the new property siteConfig.PreWarmedInstanceCount.",
   "Target": null,
   "Details":
   [
      {
         "Message":"siteConfig.ReservedInstanceCount is invalid. Please use the new property siteConfig.PreWarmedInstanceCount."
      },
      {
         "Code":"BadRequest"
      },
      {
         "ErrorEntity":
         {
            "ExtendedCode":"51021",
            "MessageTemplate":"{0} is invalid. {1}",
            "Parameters":
            [
               "siteConfig.ReservedInstanceCount", "Please use the new property siteConfig.PreWarmedInstanceCount."
            ],
            "Code":"BadRequest",
            "Message":"siteConfig.ReservedInstanceCount is invalid. Please use the new property siteConfig.PreWarmedInstanceCount."
         }
      }
   ],
   "Innererror": null
}

Evitar perda de contexto durante eventos de redução horizontal de recursos

Eventos de redução horizontal de recursos podem causar a perda de contexto para conectores internos com o modo com estado habilitado. Para evitar essa possível perda antes que esses eventos possam acontecer, corrija o número de instâncias disponíveis para o recurso de aplicativo lógico. Dessa forma, nenhum evento de escala pode causar essa possível perda de contexto.

  1. No menu do recurso do aplicativo lógico, em Configurações, selecione Escalar horizontalmente.

  2. Na página Escalar horizontalmente, na seção Expansão de Aplicativos, siga estas etapas:

    1. Defina Impor Limite de Expansão Horizontal como Sim, que mostra o Limite Máximo de Expansão Horizontal.

    2. Defina Instâncias Sempre Prontas para o mesmo número que o Limite Máximo de Expansão Horizontal e a Intermitência Máxima, que aparece na seção Planejar Expansão horizontal, por exemplo:

    A captura de tela mostra o portal do Azure, o recurso de aplicativo lógico Standard, a página Escalar horizontalmente e o número de Instâncias Sempre Prontas definidos para corresponder à Intermitência Máxima e ao Limite Máximo de Expansão Horizontal.

  3. Quando terminar, na barra de ferramentas Escalar horizontalmente, selecione Salvar.

Próximas etapas