Implantar um aplicativo híbrido com dados locais que dimensionam entre nuvens

Este guia de solução mostra como implantar um aplicativo híbrido que abranja o Azure e o Azure Stack Hub e use uma única fonte de dados local.

Usando uma solução de nuvem híbrida, você pode combinar os benefícios de conformidade de uma nuvem privada com a escalabilidade da nuvem pública. Seus desenvolvedores também podem aproveitar o ecossistema de desenvolvimento da Microsoft e aplicar suas habilidades aos ambientes locais e na nuvem.

Visão geral e suposições

Siga este tutorial para configurar um fluxo de trabalho que permita aos desenvolvedores implantar um aplicativo Web idêntico em uma nuvem pública e em uma nuvem privada. Esse aplicativo pode acessar uma rede roteável fora da Internet que esteja hospedada na nuvem privada. Esses aplicativos Web são monitorados e, quando há um pico de tráfego, um programa modifica os registros DNS para redirecionar o tráfego para a nuvem pública. Quando o tráfego cai para o nível anterior ao pico, ele é roteado de volta para a nuvem privada.

Este tutorial cobre as seguintes tarefas:

  • Implante um servidor de banco de dados do SQL Server com conexão híbrida.
  • Conecte um aplicativo Web no Azure global a uma rede híbrida.
  • Configure o DNS para escala entre nuvens.
  • Configure certificados SSL para escala entre nuvens.
  • Configure e implante o aplicativo Web.
  • Crie um perfil do Gerenciador de Tráfego e configure-o para escala entre nuvens.
  • Configure o monitoramento e os alertas do Application Insights para aumentar o tráfego.
  • Configure a alternância automática de tráfego entre o Azure global e o Azure Stack Hub.

Dica

Diagrama dos pilares híbridos O Microsoft Azure Stack Hub é uma extensão do Azure. O Azure Stack Hub traz a agilidade e a inovação da computação em nuvem para seu ambiente local, fornecendo a única nuvem híbrida que permite criar e implantar aplicativos híbridos em qualquer lugar.

O artigo Considerações de design de aplicativos híbridos examina os pilares da qualidade de software (posicionamento, escalabilidade, disponibilidade, resiliência, capacidade de gerenciamento e segurança) relativos ao design, à implantação e à operação de aplicativos híbridos. As considerações de design ajudam na otimização do design de aplicativos híbridos, reduzindo os desafios nos ambientes de produção.

Suposições

Este tutorial pressupõe que você tenha um conhecimento básico do Azure global e do Azure Stack Hub. Se você quiser saber mais antes de iniciar o tutorial, confira estes artigos:

Este tutorial pressupõe que você tenha uma assinatura do Azure. Caso não tenha uma assinatura, crie uma conta gratuita antes de começar.

Pré-requisitos

Antes de iniciar esta solução, verifique se você atende aos seguintes requisitos:

  • Um ASDK (Kit de Desenvolvimento do Azure Stack) ou uma assinatura em um sistema integrado do Azure Stack Hub. Para implantar o ASDK, siga as instruções em Implantar o ASDK usando o instalador.

  • A instalação do Azure Stack Hub deve ter instalado:

    • O Serviço de Aplicativo do Azure. Trabalhe com seu operador do Azure Stack Hub para implantar e configurar o Serviço de Aplicativo do Azure no seu ambiente. Este tutorial requer que o Serviço de Aplicativo tenha pelo menos uma (1) função de trabalho dedicada disponível.
    • Uma imagem do Windows Server 2016.
    • Um Windows Server 2016 com uma imagem do Microsoft SQL Server.
    • Os planos e as ofertas apropriados.
    • Um nome de domínio para seu aplicativo Web. Se você não tem um, é possível comprá-lo de um provedor de domínio, como GoDaddy, Bluehost e InMotion.
  • Um certificado SSL para seu domínio de uma autoridade de certificação confiável, como o LetsEncrypt.

  • Um aplicativo Web que se comunica com um banco de dados do SQL Server e oferece suporte ao Application Insights. Você pode baixar o aplicativo de exemplo dotnetcore-sqldb-tutorial do GitHub.

  • Uma rede híbrida entre uma rede virtual do Azure e outra do Azure Stack Hub. Para obter instruções detalhadas, confira Configurar a conectividade de nuvem híbrida com o Azure e o Azure Stack Hub.

  • Um pipeline de CI/CD (integração contínua/implantação contínua) com um agente de compilação particular no Azure Stack Hub. Para obter instruções detalhadas, confira Configurar a identidade de nuvem híbrida com os aplicativos do Azure e do Azure Stack Hub.

Implantar um servidor de banco de dados do SQL Server com conexão híbrida

  1. Entre no portal do usuário do Azure Stack Hub.

  2. No Dashboard, selecione Marketplace.

    Captura de tela que mostra o Azure Stack Hub Marketplace.

  3. Em Marketplace, selecione Computação e, em seguida, escolha Mais. Em Mais, selecione a imagem Licença gratuita do SQL Server: SQL Server 2017 Developer no Windows Server .

    Captura de tela que mostra como selecionar uma imagem de máquina virtual no portal do usuário do Azure Stack Hub.

  4. Em Licença gratuita do SQL Server: SQL Server 2017 Developer no Windows Server, selecione Criar.

  5. Em Noções básicas > Defina as configurações básicas, forneça um Nome para a máquina virtual (VM), um Nome de usuário para a SA do SQL Server e uma Senha para a SA. Na lista suspensa Assinatura, selecione a assinatura na qual você está efetuando a implantação. Para Grupo de recursos, use Escolher existente e coloque a VM no mesmo grupo de recursos que o seu aplicativo Web do Azure Stack Hub.

    Captura de tela que mostra como definir as configurações básicas de uma VM no portal do usuário do Azure Stack Hub.

  6. Em Tamanho, escolha um para a sua VM. Para este tutorial, recomendamos A2_Standard ou DS2_V2_Standard.

  7. Em Configurações > Configurar recursos opcionais, defina as seguintes configurações:

    • Conta de armazenamento: crie uma nova conta se precisar de uma.

    • Rede virtual:

      Importante

      verifique se sua VM do SQL Server está implantada na mesma rede virtual que os gateways de VPN.

    • Endereço IP público: use as configurações padrão.

    • Grupo de segurança de rede: (NSG). Crie um NSG.

    • Extensões e monitoramento: mantenha as configurações padrão.

    • Conta de armazenamento de diagnóstico: crie uma nova conta se precisar de uma.

    • Selecione OK para salvar a configuração.

      Captura de tela que mostra como configurar recursos opcionais de VM no portal do usuário do Azure Stack Hub.

  8. Em Configurações do SQL Server, defina as seguintes configurações:

    • Em Conectividade do SQL, selecione Pública (Internet).

    • Em Porta, mantenha o padrão 1433.

    • Em Autenticação do SQL, selecione Habilitar.

      Observação

      Quando você habilita a autenticação do SQL, ela deve preencher automaticamente as informações de “SQLAdmin” que você configurou em Noções básicas.

    • Para o restante das configurações, mantenha as opções padrão. Selecione OK.

      Captura de tela que mostra como definir as configurações do SQL Server no portal do usuário do Azure Stack Hub.

  9. Em Resumo, examine a configuração da VM e, em seguida, selecione OK para iniciar a implantação.

    Captura de tela que mostra o resumo da configuração no portal do usuário do Azure Stack Hub.

  10. A criação da VM leva algum tempo. Você pode exibir o STATUS de suas VMs em Máquinas virtuais.

    Captura de tela que mostra o status das máquinas virtuais no portal do usuário do Azure Stack Hub.

Criar aplicativos Web no Azure e no Azure Stack Hub

O Serviço de Aplicativo do Azure simplifica a execução e o gerenciamento de um aplicativo Web. Como o Azure Stack Hub é consistente com o Azure, o Serviço de Aplicativo pode ser executado em ambos os ambientes. Você usará o Serviço de Aplicativo para hospedar seu aplicativo.

Criar aplicativos Web

  1. Crie um aplicativo Web no Azure seguindo as instruções em Gerenciar um Plano do Serviço de Aplicativo no Azure. Coloque o aplicativo Web na mesma assinatura e defina o grupo de recursos como sua rede híbrida.

  2. Repita a etapa anterior (1) no Hub Azure Stack.

Adicionar rota para o Azure Stack Hub

É necessário que o Serviço de Aplicativo no Azure Stack Hub possa ser roteado da Internet pública para permitir que os usuários acessem seu aplicativo. Caso o Azure Stack Hub esteja acessível pela Internet, anote o endereço IP ou a URL voltada para o público para o aplicativo Web do Azure Stack Hub.

Se você está usando um ASDK, é possível configurar um mapeamento NAT estático para expor o Serviço de Aplicativo fora do ambiente virtual.

Conectar um aplicativo Web no Azure a uma rede híbrida

Para fornecer conectividade entre o front-end da Web no Azure e o banco de dados do SQL Server no Azure Stack Hub, é necessário que o aplicativo Web esteja conectado à rede híbrida entre o Azure e o Azure Stack Hub. Para habilitar a conectividade, você terá que:

  • Configurar conectividade ponto a site.
  • Configurar o aplicativo Web.
  • Modificar o gateway de rede local no Azure Stack Hub.

Configurar a rede virtual do Azure para conectividade ponto a site

É necessário que o gateway de rede virtual no lado do Azure da rede híbrida permita que conexões ponto a site sejam integradas ao Serviço de Aplicativo do Azure.

  1. No portal do Azure, acesse a página do gateway de rede virtual. Em Configurações, selecione Configuração ponto a site.

    Captura de tela que mostra a opção ponto a site em um gateway de rede virtual do Azure.

  2. Selecione Configurar agora para configurar o ponto a site.

    Captura de tela que mostra como iniciar a configuração ponto a site em um gateway de rede virtual do Azure.

  3. Na página de configuração Ponto a site, insira o intervalo de endereços IP privado que você deseja usar no Pool de endereços.

    Observação

    Verifique se o intervalo especificado não se sobrepõe a nenhum intervalo de endereços já usado por sub-redes nos componentes globais da rede híbrida do Azure ou do Azure Stack Hub.

    Em Tipo de Túnel, desmarque IKEv2 VPN. Selecione Salvar para concluir a configuração de ponto a site.

    Captura de tela que mostra as configurações ponto a site em um gateway de rede virtual do Azure.

Integrar o aplicativo do Serviço de Aplicativo do Azure com a rede híbrida

  1. Para conectar o aplicativo à VNet do Azure, siga as instruções em Integração VNet exigida pelo gateway.

  2. Acesse Configurações para ver o plano do Serviço de Aplicativo que hospeda o aplicativo Web. Em Configurações, selecione Rede.

    Captura de tela que mostra como configurar a Rede para o plano do Serviço de Aplicativo.

  3. Em Integração VNET, selecione Clique aqui para gerenciar.

    Captura de tela que mostra como gerenciar a integração VNET para o plano do Serviço de Aplicativo.

  4. Selecione o VNET que você deseja configurar. Em ENDEREÇOS IP ROTEADOS PARA VNET, insira o intervalo de endereços IP para a VNet do Azure, a do Azure Stack Hub e os espaços de endereço ponto a site. Selecione Salvar para validar e salvar essas configurações.

    Captura de tela que mostra os intervalos de endereços IP a serem roteados na Integração de Rede Virtual.

Para saber mais sobre como o Serviço de Aplicativo se integra às VNets do Azure, confira Integrar seu aplicativo a uma Rede Virtual do Azure.

Configurar a rede virtual do Azure Stack Hub

O gateway de rede local na rede virtual do Azure Stack Hub precisa ser configurado para rotear o tráfego pelo intervalo de endereços ponto a site do Serviço de Aplicativo.

  1. No portal do Azure Stack Hub, acesse Gateway de rede local. Em Configurações, escolha Configuração.

    Captura de tela que mostra a opção de configuração do Gateway em um gateway de rede local do Azure Stack Hub.

  2. Em Espaço de endereço, insira o intervalo de endereços ponto a site para o gateway de rede virtual no Azure.

    Captura de tela que mostra um espaço de endereço Ponto a site em um gateway de rede local do Azure Stack Hub.

  3. Selecione Salvar para validar e salvar a configuração.

Configurar o DNS para escala entre nuvens

Ao configurar corretamente o DNS para aplicativos entre nuvens, os usuários podem acessar as instâncias globais do Azure e do Azure Stack Hub do seu aplicativo Web. A configuração de DNS para este tutorial também permite que o Gerenciador de Tráfego do Azure roteie o tráfego quando a carga aumenta ou diminui.

Este tutorial usa o DNS do Azure para gerenciar o DNS porque os domínios do Serviço de Aplicativo não funcionarão.

Criar subdomínios

Como o Gerenciador de Tráfego depende de CNAMEs de DNS, um subdomínio é necessário para rotear corretamente o tráfego para os pontos de extremidade. Para obter mais informações sobre os registros DNS e o mapeamento de domínio, confira mapear domínios com o Gerenciador de Tráfego.

Para o ponto de extremidade do Azure, você criará um subdomínio que os usuários possam usar para acessar seu aplicativo Web. Neste tutorial, você pode usar app.northwind.com, mas deve personalizar esse valor com base no seu domínio.

Também será necessário criar um subdomínio com um registro A para o ponto de extremidade do Azure Stack Hub. Você pode usar azurestack.northwind.com.

Configurar um domínio personalizado no Azure

  1. Adicione o nome do host app.northwind.com ao aplicativo Web do Azure mapeando um CNAME para o Serviço de Aplicativo do Azure.

Configurar domínios personalizados no Azure Stack Hub

  1. Adicione o nome do host azurestack.northwind.com ao aplicativo Web do Azure Stack Hub mapeando um registro A para o Serviço de Aplicativo do Azure. Use o endereço IP roteável da Internet para o aplicativo do Serviço de Aplicativo.

  2. Adicione o nome do host app.northwind.com ao aplicativo Web do Azure Stack Hub mapeando um CNAME para o Serviço de Aplicativo do Azure. Use o nome de host que você configurou na etapa anterior (1) como o destino para o CNAME.

Configure certificados SSL para escala entre nuvens

É importante garantir que os dados confidenciais coletados pelo seu aplicativo Web estejam protegidos enquanto estão em trânsito e quando são armazenados no banco de dados SQL.

Você configurará seus aplicativos Web do Azure e do Azure Stack Hub para usar certificados SSL para todo o tráfego de entrada.

Adicionar SSL ao Azure e ao Azure Stack Hub

Para adicionar SSL ao Azure:

  1. Verifique se o certificado SSL obtido é válido para o subdomínio que você criou. Não há problema em usar certificados curinga.

  2. No portal do Azure, siga as instruções nas seções Preparar o aplicativo Web e Associar certificado SSL do artigo Associar um certificado SSL personalizado existente a aplicativos Web do Azure. Selecione SSL baseado em SNI como o Tipo de SSL.

  3. Redirecione todo o tráfego para a porta HTTPS. Siga as instruções na seção Impor HTTPS do artigo Associar um certificado SSL personalizado existente a aplicativos Web do Azure.

Para adicionar SSL ao Azure Stack Hub:

  1. Repita as etapas de 1 a 3 que você usou para o Azure usando o portal do Azure Stack Hub.

Configurar e implantar o aplicativo Web

Você configurará o código do aplicativo para relatar telemetria para a instância correta do Application Insights e configurará os aplicativos Web com as cadeias de conexão corretas. Para saber mais sobre o Application Insights, confira O que é o Application Insights?

Adicionar o Application Insights

  1. Abra seu aplicativo Web no Microsoft Visual Studio.

  2. Adicione o Application Insights ao seu projeto para transmitir a telemetria que o Application Insights usa para criar alertas quando o tráfego da Web aumenta ou diminui.

Configurar cadeias de conexão dinâmicas

Cada instância do aplicativo Web usará um método diferente para se conectar ao banco de dados SQL. O aplicativo no Azure usa o endereço IP privado da VM do SQL Server, e o aplicativo no Azure Stack Hub usa o endereço IP público da VM do SQL Server.

Observação

Em um sistema integrado do Azure Stack Hub, o endereço IP público não deve ser roteável pela Internet. Em um ASDK, o endereço IP público não é roteável fora do ASDK.

Você pode usar variáveis de ambiente do Serviço de Aplicativo para passar uma cadeia de conexão diferente para cada instância do aplicativo.

  1. Abra o aplicativo no Visual Studio.

  2. Abra Startup.cs e localize o seguinte bloco de código:

    services.AddDbContext<MyDatabaseContext>(options =>
        options.UseSqlite("Data Source=localdatabase.db"));
    
  3. Substitua o bloco de código anterior pelo código a seguir, que usa uma cadeia de conexão definida no arquivo appsettings.json:

    services.AddDbContext<MyDatabaseContext>(options =>
        options.UseSqlServer(Configuration.GetConnectionString("MyDbConnection")));
     // Automatically perform database migration
     services.BuildServiceProvider().GetService<MyDatabaseContext>().Database.Migrate();
    

Definir as configurações do Serviço de Aplicativo

  1. Crie cadeias de conexão para o Azure e o Azure Stack Hub. As cadeias de caracteres devem ser as mesmas, exceto para os endereços IP que são usados.

  2. No Azure e no Azure Stack Hub, adicione a cadeia de conexão apropriada como uma configuração de aplicativo no aplicativo Web, usando SQLCONNSTR\_ como um prefixo no nome.

  3. Salve as configurações do aplicativo Web e reinicie o aplicativo.

Habilitar a colocação em escala automática no Azure global

Quando você cria seu aplicativo Web em um ambiente do Serviço de Aplicativo, ele começa com uma instância. Você pode escalar horizontalmente para adicionar instâncias e fornecer mais recursos de computação para o seu aplicativo. Da mesma forma, você pode reduzir horizontalmente o número de instâncias de que seu aplicativo precisa.

Observação

Você precisa ter um Plano do Serviço de Aplicativo para configurar a ação de escalar e reduzir horizontalmente. Se você não tem um plano, crie um antes de iniciar as próximas etapas.

Habilitar a expansão automática

  1. No portal do Azure, localize o Plano do Serviço de Aplicativo para os sites que você deseja escalar horizontalmente e, em seguida, selecione Expansão (Plano do Serviço de Aplicativo).

    Captura de tela que mostra como dimensionar o Serviço de Aplicativo do Azure.

  2. Clique em Habilitar dimensionamento automático.

    Captura de tela que mostra como habilitar o dimensionamento automático no Serviço de Aplicativo do Azure.

  3. Forneça um nome para o Nome de configuração do dimensionamento automático. Na regra de dimensionamento automático Padrão, selecione Escala com base em uma métrica. Defina os limites da instância como Mínimo: 1, Máximo: 10 e Padrão: 1.

    Captura de tela que mostra como configurar o dimensionamento automático no Serviço de Aplicativo do Azure.

  4. Selecione +Adicionar uma regra.

  5. Em Origem da Métrica, selecione Recurso Atual. Use os critérios e as ações a seguir para a regra.

Critérios

  1. Em Agregação de Tempo, selecione Média.

  2. Em Nome da Métrica, selecione Percentual de CPU.

  3. Em Operador, selecione Maior que.

    • Defina o Limite como 50.
    • Defina a Duração como 10.

Ação

  1. Em Operação, selecione Aumentar Contagem por.

  2. Defina a Contagem de Instâncias como 2.

  3. Defina o Resfriamento como 5.

  4. Selecione Adicionar.

  5. Selecione + Adicionar uma regra.

  6. Em Origem da Métrica, selecione Recurso Atual.

    Observação

    O recurso atual conterá o nome/GUID do Plano do Serviço de Aplicativo, e as listas suspensas Tipo de Recurso e Recurso ficarão indisponíveis.

Habilitar a redução horizontal automática

Quando o tráfego diminui, o aplicativo Web do Azure pode reduzir automaticamente o número de instâncias ativas para reduzir os custos. Essa ação é menos agressiva do que a expansão e minimiza o impacto nos usuários do aplicativo.

  1. Acesse a condição de expansão Padrão e selecione + Adicionar uma regra. Use os critérios e as ações a seguir para a regra.

Critérios

  1. Em Agregação de Tempo, selecione Média.

  2. Em Nome da Métrica, selecione Percentual de CPU.

  3. Em Operador, selecione Menor que.

    • Defina o Limite como 30.
    • Defina a Duração como 10.

Ação

  1. Em Operação, selecione Diminuir contagem por.

    • Defina a Contagem de Instâncias como 1.
    • Defina o Resfriamento como 5.
  2. Selecione Adicionar.

Crie um perfil do Gerenciador de Tráfego e configure a escala entre nuvens.

Crie um perfil do Gerenciador de Tráfego usando o portal do Azure e, em seguida, configure os pontos de extremidade para habilitar a escala entre nuvens.

Criar perfil do Gerenciador de Tráfego

  1. Selecione Criar um recurso.

  2. Selecione Rede.

  3. Selecione perfil do Gerenciador de Tráfego e defina as seguintes configurações:

    • Em Nome, insira um nome para o seu perfil. Esse nome deve ser exclusivo na zona trafficmanager.net e usado para criar um nome DNS (por exemplo, northwindstore.trafficmanager.net).
    • Para Método de roteamento, selecione o Ponderado.
    • Em Assinatura, selecione a aquela na qual deseja criar esse perfil.
    • Em Grupo de Recursos, crie um grupo de recursos para esse perfil.
    • Em Local do grupo de recursos, selecione o local do grupo de recursos. Essa configuração refere-se ao local do grupo de recursos e não tem impacto no perfil do Gerenciador de Tráfego implantado globalmente.
  4. Selecione Criar.

    Captura de tela que mostra como criar um perfil do Gerenciador de Tráfego.

    Quando a implantação global do seu perfil do Gerenciador de Tráfego estiver concluída, ela será mostrada na lista do grupo de recursos no qual você a criou.

Adicionar pontos de extremidade do Gerenciador de Tráfego

  1. Pesquise o perfil do Gerenciador de Tráfego que você criou. Se você navegou até o grupo de recursos para pesquisar o perfil, selecione-o.

  2. No Perfil do Gerenciador de Tráfego, em CONFIGURAÇÕES, selecione Ponto de extremidade.

  3. Selecione Adicionar.

  4. Em Adicionar ponto de extremidade, use as seguintes configurações para o Azure Stack Hub:

    • Para Tipo, selecione Ponto de extremidade externo.
    • Insira um Nome para o ponto de extremidade.
    • Para FQDN (Nome de domínio totalmente qualificado) ou IP, insira a URL externa para o seu aplicativo Web do Azure Stack Hub.
    • Em Peso, mantenha o valor padrão 1. Esse peso faz com que todo o tráfego passe para esse ponto de extremidade caso ele esteja íntegro.
    • Deixe a opção Adicionar como desabilitado desmarcada.
  5. Selecione OK para salvar o ponto de extremidade do Azure Stack Hub.

Você configurará o ponto de extremidade do Azure em seguida.

  1. No perfil do Gerenciador de Tráfego, selecione Ponto de extremidade.

  2. Selecione +Adicionar.

  3. Em Adicionar ponto de extremidade, use as seguintes configurações para o Azure:

    • Em Tipo, selecione Ponto de extremidade do Azure.
    • Insira um Nome para o ponto de extremidade.
    • Para Tipo de recurso de destino, selecione Serviço de Aplicativo.
    • Em Recurso de destino, selecione Escolher um serviço de aplicativo para ver uma lista de aplicativos Web na mesma assinatura.
    • Em Recursos, escolha o Serviço de Aplicativo que deseja adicionar como o primeiro ponto de extremidade.
    • Em Peso, selecione 2. Essa configuração faz com que todo o tráfego vá para esse ponto de extremidade caso o ponto de extremidade primário não esteja íntegro ou caso você tenha uma regra/alerta que redirecione o tráfego ao ser disparado.
    • Deixe a opção Adicionar como desabilitado desmarcada.
  4. Selecione OK para salvar o ponto de extremidade do Azure.

Depois que todos os pontos de extremidade são configurados, eles são listados no Perfil do Gerenciador de Tráfego quando você seleciona os Pontos de extremidade. O exemplo na captura de tela a seguir mostra dois pontos de extremidade, com status e informações de configuração para cada um deles.

Captura de tela que mostra pontos de extremidade no perfil do Gerenciador de Tráfego.

Configurar o monitoramento e alertas do Application Insights no Azure

O Application Insights do Azure permite que você monitore seu aplicativo e envie alertas com base nas condições que você configurar. Por exemplo: o aplicativo está indisponível, está apresentando falhas ou está mostrando problemas de desempenho.

Você usará as métricas do Azure Application Insights para criar alertas. Quando esses alertas são disparados, a instância do aplicativo Web alterna automaticamente do Azure Stack Hub para o Azure para escalar horizontalmente e, em seguida, alterna novamente para o Azure Stack Hub para reduzir horizontalmente.

Crie um alerta de métricas

No portal do Azure, acesse o grupo de recursos deste tutorial e selecione a instância do Application Insights para abrir o Application Insights.

Captura de tela que mostra Application Insights.

Você usará essa exibição para criar um alerta de expansão e outro de redução.

Criar o alerta de expansão

  1. Em CONFIGURAR, selecione Alertas (clássico).

  2. Selecione adicionar alerta de métrica (clássico).

  3. Em Adicionar regra, defina as seguintes configurações:

    • Em Nome, insira Intermitência no Azure Cloud.
    • A Descrição é opcional.
    • Em Origem>Alerta no, selecione Métricas.
    • Em Critérios, selecione sua assinatura, o grupo de recursos do seu perfil do Gerenciador de Tráfego e o nome do perfil do Gerenciador de Tráfego para o recurso.
  4. Em Métrica, selecione Taxa de Solicitação.

  5. Em Condição, selecione Maior que.

  6. Em Limite, insira 2.

  7. Em Período, selecione Nos últimos 5 minutos.

  8. Em Notificar via:

    • Marque a caixa de seleção Proprietários, colaboradores e leitores de email.
    • Insira seu endereço de email em Emails adicionais do administrador.
  9. Na barra de menu, selecione Salvar.

Criar o alerta de redução

  1. Em CONFIGURAR, selecione Alertas (clássico).

  2. Selecione adicionar alerta de métrica (clássico).

  3. Em Adicionar regra, defina as seguintes configurações:

    • Em Nome, insira Escalar de volta para o Azure Stack Hub.
    • A Descrição é opcional.
    • Em Origem>Alerta no, selecione Métricas.
    • Em Critérios, selecione sua assinatura, o grupo de recursos do seu perfil do Gerenciador de Tráfego e o nome do perfil do Gerenciador de Tráfego para o recurso.
  4. Em Métrica, selecione Taxa de Solicitação.

  5. Em Condição, selecione Menor que.

  6. Em Limite, insira 2.

  7. Em Período, selecione Nos últimos 5 minutos.

  8. Em Notificar via:

    • Marque a caixa de seleção Proprietários, colaboradores e leitores de email.
    • Insira seu endereço de email em Emails adicionais do administrador.
  9. Na barra de menu, selecione Salvar.

A captura de tela a seguir mostra os alertas de expansão e redução horizontal.

Captura de tela que mostra alertas do Application Insights (clássico).

Redirecionar o tráfego entre o Azure e o Azure Stack Hub

Você pode configurar a alternância do tráfego de aplicativo Web para manual ou automática entre o Azure e o Azure Stack Hub.

Configurar a alternância manual entre o Azure e o Azure Stack Hub

Quando o site atingir os limites que você configurar, você receberá um alerta. Use as etapas a seguir para redirecionar manualmente o tráfego para o Azure.

  1. No portal do Azure, selecione seu perfil do Gerenciador de Tráfego.

    Captura de tela que mostra os pontos de extremidade do Gerenciador de Tráfego no portal do Azure.

  2. Selecione Pontos de extremidade.

  3. Selecione o Ponto de extremidade do Azure.

  4. Em Status, selecione Habilitado e, em seguida, selecione Salvar.

    Captura de tela que mostra como habilitar um ponto de extremidade do Azure no portal do Azure.

  5. Em Pontos de extremidade para o perfil do Gerenciador de Tráfego, selecione Ponto de extremidade externo.

  6. Em Status, selecione Desabilitado e, em seguida, selecione Salvar.

    Captura de tela que mostra como desabilitar o ponto de extremidade do Azure Stack Hub no portal do Azure.

Depois que os pontos de extremidade são configurados, o tráfego do aplicativo vai para o aplicativo Web de expansão do Azure em vez do aplicativo Web do Azure Stack Hub.

Captura de tela que mostra pontos de extremidade alterados no tráfego do aplicativo Web do Azure.

Para reverter o fluxo de volta para o Azure Stack Hub, use as etapas anteriores para:

  • Habilitar o ponto de extremidade do Azure Stack Hub.
  • Desabilitar o ponto de extremidade do Azure.

Configurar a alternância automática entre o Azure e o Azure Stack Hub

Também é possível usar o monitoramento do Application Insights se seu aplicativo é executado em um ambiente sem servidor fornecido pelo Azure Functions.

Nesse cenário, você pode configurar o Application Insights para usar um webhook que chama um aplicativo de funções. Esse aplicativo habilita ou desabilita automaticamente um ponto de extremidade em resposta a um alerta.

Use as etapas a seguir como um guia para configurar a alternância automática de tráfego.

  1. Crie um aplicativo de funções do Azure.

  2. Crie uma função disparada por HTTP.

  3. Importe os SDKs do Azure para o Resource Manager, aplicativos Web e Gerenciador de Tráfego.

  4. Desenvolva código para:

    • Autenticar-se na sua assinatura do Azure.
    • Usar um parâmetro que alterna os pontos de extremidade do Gerenciador de Tráfego para direcionar o tráfego para o Azure ou o Azure Stack Hub.
  5. Salvar seu código e adicionar a URL do aplicativo de funções com os parâmetros apropriados à seção Webhook das configurações da regra de alerta do Application Insights.

  6. O tráfego é redirecionado automaticamente quando um alerta do Application Insights é disparado.

Próximas etapas:

Consulte estes guias de implantação híbrida adicionais: