Compartilhar via


Migrar seu aplicativo Web .NET ou serviço para o Serviço de Aplicativo do Azure

O Serviço de Aplicativo é um serviço de plataforma de computação totalmente gerenciado otimizado para hospedar sites escalonáveis e aplicativos Web. Este artigo fornece informações sobre como fazer lift-and-shift de um aplicativo existente para o Serviço de Aplicativo do Azure, modificações a serem consideradas e recursos adicionais para migrar para a nuvem. A maioria dos sites ASP.NET (Webforms, MVC) e serviços (API Web, WCF) pode se mover diretamente para o Serviço de Aplicativo do Azure sem alterações. Alguns podem precisar de pequenas alterações, enquanto outros podem precisar de alguma refatoração.

Pronto para começar? Publique seu aplicativo ASP.NET + SQL no Serviço de Aplicativo do Azure.

Considerações

Recursos locais (incluindo o SQL Server)

Verifique o acesso aos recursos locais, pois eles podem precisar ser migrados ou alterados. Veja a seguir as opções para atenuar o acesso a recursos locais:

  • Crie uma VPN conectando o Serviço de Aplicativo a recursos locais usando redes virtuais do Azure.
  • Exponha com segurança os serviços locais à nuvem sem alterações de firewall usando a Retransmissão do Azure.
  • Migre dependências como um banco de dados SQL para o Azure.
  • Use ofertas de plataforma como serviço na nuvem para reduzir as dependências. Por exemplo, em vez de se conectar a um servidor de email local, considere usar o SendGrid.

Associações de Porta

O Serviço de Aplicativo do Azure dá suporte à porta 80 para HTTP e à porta 443 para tráfego HTTPS.

Para o WCF, há suporte para as seguintes associações:

Associação Anotações
BasicHttp
WSHttp
WSDualHttpBinding O suporte ao soquete da Web deve estar habilitado.
NetHttpBinding O suporte ao soquete da Web deve ser habilitado para contratos duplex.
NetHttpsBinding O suporte ao soquete da Web deve ser habilitado para contratos duplex.
BasicHttpContextBinding
WebHttpBinding
WSHttpContextBinding

Autenticação

O Serviço de Aplicativo do Azure dá suporte à autenticação anônima por padrão e à autenticação de Formulários quando pretendida. A autenticação do Windows pode ser usada integrando-se apenas ao Azure Active Directory e ao ADFS. Saiba mais sobre como integrar seus diretórios locais ao Azure Active Directory.

Instale assemblies no cache de assembly global (GAC)

Não há suporte para isso. Considere copiar os assemblies necessários para a pasta \bin do aplicativo. Arquivos de.msi personalizados instalados no servidor (por exemplo, geradores PDF) não podem ser usados.

Configurações do IIS

Tudo tradicionalmente configurado por meio de applicationHost.config em seu aplicativo agora pode ser configurado por meio do portal do Azure. Isso se aplica ao número de bits do AppPool, habilitar/desabilitar WebSockets, versão do pipeline gerenciada, versão do .NET Framework (2.0/4.0) etc. Para modificar as configurações do aplicativo, navegue até o portal do Azure, abra o painel do aplicativo web e selecione a guia Configurações do Aplicativo.

Modo de compatibilidade do IIS5

Não há suporte para o Modo de Compatibilidade do IIS5. No Serviço de Aplicativo do Azure, cada aplicativo Web e todos os aplicativos sob ele são executados no mesmo processo de trabalho com um conjunto específico de pools de aplicativos.

Conformidade de esquema do IIS7+

Alguns elementos e atributos não são definidos no esquema do IIS do Serviço de Aplicativo do Azure. Se você encontrar problemas, considere o uso de transformações XDT.

Pool de aplicativos único por site

No Serviço de Aplicativo do Azure, cada aplicativo Web e todos os aplicativos sob ele são executados no mesmo pool de aplicativos. Considere estabelecer um único pool de aplicativos com configurações comuns ou criar um aplicativo Web separado para cada aplicativo.

Componentes COM e COM+

O Serviço de Aplicativo do Azure não permite o registro de componentes COM na plataforma. Se o aplicativo usa componentes COM, eles precisam ser reescritos no código gerenciado e implantados com o site ou aplicativo.

Diretórios físicos

O Serviço de Aplicativo do Azure não permite acesso à unidade física. Talvez seja necessário usar os Arquivos do Azure para acessar arquivos via SMB. O Armazenamento de Blobs do Azure pode armazenar arquivos para acesso via HTTPS.

Filtros ISAPI

O Serviço de Aplicativo do Azure pode dar suporte ao uso de Filtros ISAPI, no entanto, a DLL ISAPI deve ser implantada com seu site e registrada por meio de web.config.

Configurações HTTPS e SSL

As associações HTTPS não são migradas nem os certificados SSL associados aos seus sites. No entanto, os certificados SSL podem ser carregados manualmente após a conclusão da migração de site.

SharePoint e FrontPage

Não há suporte para FPSE (Extensões de Servidor do SharePoint e FrontPage).

Tamanho do site

Sites gratuitos têm um limite de tamanho de 1 GB de conteúdo. Se o site for maior que 1 GB, você deverá atualizar para um SKU pago. Confira Preço do Serviço de Aplicativo.

Tamanho do banco de dados

Para bancos de dados do SQL Server, verifique os preços atuais do Banco de Dados SQL.

Integração do AAD (Azure Active Directory)

O AAD não funciona com aplicativos gratuitos. Para usar o AAD, você deve atualizar o SKU do aplicativo. Confira Preço do Serviço de Aplicativo.

Monitoramento e diagnóstico

É improvável que as soluções locais atuais para monitoramento e diagnóstico funcionem na nuvem. No entanto, o Azure fornece ferramentas para registro em log, monitoramento e diagnóstico para que você possa identificar e depurar problemas com aplicativos Web. Você pode habilitar facilmente o diagnóstico para seu aplicativo Web em sua configuração e pode exibir os logs registrados no Azure Application Insights. Saiba mais sobre como habilitar o log de diagnóstico para aplicativos Web.

Cadeias de conexão e configurações de aplicativo

Considere usar o Azure KeyVault, um serviço que armazena com segurança informações confidenciais usadas em seu aplicativo. Como alternativa, você pode armazenar esses dados como uma configuração do Serviço de Aplicativo.

Sistema de Nomes de Domínio (DNS)

Talvez seja necessário atualizar as configurações de DNS com base nos requisitos do aplicativo. Essas configurações de DNS podem ser definidas nas configurações de domínio personalizado do Serviço de Aplicativo.

Serviço de Aplicativo do Azure com contêineres do Windows

Se o aplicativo não puder ser migrado diretamente para o Serviço de Aplicativo, considere o Serviço de Aplicativo usando contêineres do Windows, o que permite o uso do GAC, componentes COM, MSIs, acesso total às APIs do .NET FX, DirectX e muito mais.

Consulte também