Uw .NET-web-app of -service migreren naar Azure-app Service
App Service is een volledig beheerde rekenplatformservice die is geoptimaliseerd voor het hosten van schaalbare websites en webtoepassingen. In dit artikel vindt u informatie over het lift-and-shiften van een bestaande toepassing naar Azure-app Service, wijzigingen die u moet overwegen en aanvullende resources voor het overstappen naar de cloud. De meeste ASP.NET websites (webformulieren, MVC) en services (Web-API, WCF) kunnen zonder wijzigingen rechtstreeks naar Azure-app Service worden verplaatst. Sommigen hebben mogelijk kleine wijzigingen nodig, terwijl andere mogelijk een herstructurering nodig hebben.
Klaar om aan de slag te gaan? Publiceer uw ASP.NET + SQL-toepassing naar Azure-app Service.
Overwegingen
On-premises resources (inclusief SQL Server)
Controleer de toegang tot on-premises resources omdat deze mogelijk moeten worden gemigreerd of gewijzigd. Hier volgen opties voor het beperken van de toegang tot on-premises resources:
- Maak een VPN waarmee App Service wordt verbonden met on-premises resources met behulp van Azure Virtual Networks.
- On-premises services veilig beschikbaar maken voor de cloud zonder firewallwijzigingen met behulp van Azure Relay.
- Afhankelijkheden, zoals een SQL-database , migreren naar Azure.
- Gebruik platform-as-a-serviceaanbiedingen in de cloud om afhankelijkheden te verminderen. In plaats van verbinding te maken met een on-premises e-mailserver, kunt u bijvoorbeeld SendGrid gebruiken.
Poortbindingen
Azure-app Service ondersteunt poort 80 voor HTTP- en poort 443 voor HTTPS-verkeer.
Voor WCF worden de volgende bindingen ondersteund:
Binding | Opmerkingen |
---|---|
BasicHttp |
|
WSHttp |
|
WSDualHttpBinding |
Ondersteuning voor websockets moet zijn ingeschakeld. |
NetHttpBinding |
Ondersteuning voor websockets moet zijn ingeschakeld voor dubbelzijdige contracten. |
NetHttpsBinding |
Ondersteuning voor websockets moet zijn ingeschakeld voor dubbelzijdige contracten. |
BasicHttpContextBinding |
|
WebHttpBinding |
|
WSHttpContextBinding |
Verificatie
Azure-app Service ondersteunt standaard anonieme verificatie en formulierverificatie wanneer dit is bedoeld. Windows-verificatie kan worden gebruikt door alleen te integreren met Azure Active Directory en ADFS. Meer informatie over het integreren van uw on-premises mappen met Azure Active Directory.
Assembly's in de GAC (Global Assembly Cache)
Dit wordt niet ondersteund. Overweeg om vereiste assembly's te kopiëren naar de map \bin van de app. Aangepaste .msi bestanden die zijn geïnstalleerd op de server (bijvoorbeeld PDF-generatoren) kunnen niet worden gebruikt.
IIS-instellingen
Alles wat traditioneel is geconfigureerd via applicationHost.config in uw toepassing, kan nu worden geconfigureerd via Azure Portal. Dit geldt voor AppPool-bitsheid, websockets in-/uitschakelen, beheerde pijplijnversie, .NET Framework-versie (2.0/4.0), enzovoort. Als u de toepassingsinstellingen wilt wijzigen, gaat u naar Azure Portal, opent u de blade voor uw web-app en selecteert u vervolgens het tabblad Toepassing Instellingen.
IIS5-compatibiliteitsmodus
IiS5-compatibiliteitsmodus wordt niet ondersteund. In Azure-app Service worden elke web-app en alle toepassingen eronder uitgevoerd in hetzelfde werkproces met een specifieke set toepassingsgroepen.
IIS7+ schemacompatibiliteit
Sommige elementen en kenmerken zijn niet gedefinieerd in het IIS-schema van Azure-app Service. Als u problemen ondervindt, kunt u overwegen XDT-transformaties te gebruiken.
Groep van één toepassing per site
In Azure-app Service worden elke web-app en alle toepassingen eronder uitgevoerd in dezelfde groep toepassingen. Overweeg om één groep toepassingen met algemene instellingen tot stand te brengen of een afzonderlijke web-app te maken voor elke toepassing.
COM- en COM+-onderdelen
Azure-app Service staat de registratie van COM-onderdelen op het platform niet toe. Als uw app gebruikmaakt van COM-onderdelen, moeten deze worden herschreven in beheerde code en worden geïmplementeerd met de site of toepassing.
Fysieke mappen
Azure-app Service staat fysieke stationstoegang niet toe. Mogelijk moet u Azure Files gebruiken voor toegang tot bestanden via SMB. Azure Blob Storage kan bestanden opslaan voor toegang via HTTPS.
ISAPI-filters
Azure-app Service kan het gebruik van ISAPI-filters ondersteunen, maar de ISAPI-DLL moet worden geïmplementeerd met uw site en zijn geregistreerd via web.config.
HTTPS-bindingen en SSL
HTTPS-bindingen worden niet gemigreerd en de SSL-certificaten die zijn gekoppeld aan uw websites. SSL-certificaten kunnen handmatig worden geüpload nadat de sitemigratie is voltooid.
SharePoint en FrontPage
SharePoint- en FrontPage Server Extensions (FPSE) worden niet ondersteund.
Grootte van website
Gratis sites hebben een maximale grootte van 1 GB aan inhoud. Als uw site groter is dan 1 GB, moet u een upgrade uitvoeren naar een betaalde SKU. Zie Prijzen voor App Service.
Databaseomvang
Voor SQL Server-databases controleert u de huidige prijzen voor SQL Database.
Integratie van Azure Active Directory (AAD)
AAD werkt niet met gratis apps. Als u AAD wilt gebruiken, moet u de app-SKU upgraden. Zie Prijzen voor App Service.
Controle en diagnose
Uw huidige on-premises oplossingen voor bewaking en diagnose werken waarschijnlijk niet in de cloud. Azure biedt echter hulpprogramma's voor logboekregistratie, bewaking en diagnostische gegevens, zodat u problemen met web-apps kunt identificeren en opsporen. U kunt eenvoudig diagnostische gegevens inschakelen voor uw web-app in de configuratie en u kunt de logboeken bekijken die zijn vastgelegd in Azure-toepassing Insights. Meer informatie over het inschakelen van diagnostische logboekregistratie voor web-apps.
Verbinding maken iontekenreeksen en toepassingsinstellingen
Overweeg het gebruik van Azure KeyVault, een service waarmee gevoelige informatie die in uw toepassing wordt gebruikt, veilig wordt opgeslagen. U kunt deze gegevens ook opslaan als een App Service-instelling.
DNS
Mogelijk moet u DNS-configuraties bijwerken op basis van de vereisten van uw toepassing. Deze DNS-instellingen kunnen worden geconfigureerd in de aangepaste App Service-domeininstellingen.
Azure-app-service met Windows-containers
Als uw app niet rechtstreeks naar App Service kan worden gemigreerd, kunt u Overwegen App Service te gebruiken met Behulp van Windows-containers, waardoor het gebruik van de GAC-, COM-onderdelen, MSA's, volledige toegang tot .NET FX-API's, DirectX en meer mogelijk is.