Delen via


Beheerd exemplaar configureren in Azure App Service (preview)

Managed Instance in Azure App Service (preview) is een hostingoptie binnen het bereik van een plan voor Windows-web-apps waarvoor aanpassingen van het besturingssysteem (OS) nodig zijn, optionele privénetwerken en beveiligde integratie met Azure-resources. In dit artikel wordt uitgelegd hoe u Managed Instance configureert in belangrijke gebieden:

  • Beheerde identiteit
  • Configuratiescripts (installeren)
  • Opslagkoppelingen
  • Registersleutels
  • RdP-toegang (Remote Desktop Protocol)

Belangrijk

Managed Instance is in preview, beschikbaar voor Windows-web-apps in bepaalde regio's en beperkt tot Pv4- en Pmv4-prijsplannen. Meer regio's om te volgen. Linux en containers worden niet ondersteund.

Een beheerde identiteit toevoegen (aan het App Service-plan)

Beheerde identiteiten op planniveau maken verificatie mogelijk voor infrastructuurbewerkingen die plaatsvinden op de platformlaag, zoals configuratiescripts (installeren) die tijdens het opstarten toegang hebben tot Azure Storage, registeradapters die geheimen ophalen uit Key Vault en opslagkoppelingen die verifiëren bij Azure Files. Deze onderdelen zijn gedeelde resources die meerdere apps in het plan verbruiken. Met een identiteit op planniveau kan managed Instance bijvoorbeeld eenmaal worden geverifieerd voor infrastructuuronderdelen, terwijl afzonderlijke apps hun eigen identiteit onderhouden voor app-specifieke resources, zoals databases en toepassingsgeheimen.

Beheerde identiteiten voor het App Service-plan zijn vereist in de volgende scenario's:

  • Om uw configuratiescript veilig te openen en op te halen uit Azure Storage.
  • Toegang tot Key Vaults om referenties en waarden op te geven voor opslagkoppelingen en registersleuteladapters.

Zie Door de gebruiker toegewezen beheerde identiteiten beheren om een beheerde identiteit te maken.

Ga als volgende te werk om een beheerde identiteit toe te voegen aan een beheerd exemplaarplan:

  1. Ga naar uw beheerde exemplaar in Azure Portal.
  2. Selecteer De id-gebruiker>die is toegewezen.
  3. Selecteer + Toevoegen.
  4. Selecteer het abonnement en de beheerde identiteit.
  5. Selecteer Toevoegen om de identiteit toe te voegen aan het plan.

Configuratiescripts toevoegen (installeren)

Configuratiescripts (installeren) worden uitgevoerd bij het opstarten van het exemplaar om permanente aanpassing toe te passen. Voorbeelden zijn onder andere COM-registratie (Component Object Model), Microsoft/Windows Installers (MSI) installaties, Internet Information Services (IIS Server) configuratie, ACL-wijzigingen, het inschakelen van Windows-onderdelen, het instellen van omgevingsvariabelen.

U hebt het volgende nodig om configuratiescripts (installeren) te gebruiken:

  • Een beheerde identiteit die is toegewezen aan het App Service-plan
  • Een opslagaccount met een Blob-container met het configuratiescriptpakket (install) (zip).
  • Eén zip-bestand waarvan de hoofdmap (toegangspunt) bevat Install.ps1
  • Storage Blob Data Reader rol in het opslagaccount, de container of de resourcegroep

Een configuratiescript toevoegen:

  1. Ga naar uw Managed Instance App Service-plan in Azure Portal.

  2. SelecteerAlgemene instellingen voor configuratie>.

  3. Begin in de sectie Configuratiescript door het script te configureren.

    Configuratie Waarde
    Opslagaccount Selecteer uw opslagaccount
    Container Voer de naam van uw container in
    Zipfile Voer de naam van het zip-bestand in
    Waarde Controleer of deze waarde juist is
  4. Selecteer Toepassen om de wijzigingen op te slaan.

Best practices voor configuratiescripts

  • Scripts idempotent maken (controleren vóór installatie).
  • Beveilig destructieve bewerkingen (vermijd het wijzigen van beveiligde Windows-systeemmappen).
  • Verspringende zware installaties om de opstartlatentie te verminderen.

Voorbeeld van minimale zip-structuur:

Install.ps1
myInstallerfileNameGoesHere.msi
config.xml

Voorbeeld van configuratiescript:

# Install Components, for example Crystal Reports, Control Library, Database Driver
$ComponentInstaller = "myInstallerFileNameGoesHere.msi"
try {
    $Component = Join-Path $PSScriptRoot $ComponentInstaller
    Start-Process $Component -ArgumentList "/q" -Wait -ErrorAction Stop
} catch {
    Write-Error "Failed to install ${ComponentInstaller}: $_"
    exit 1
}

Opslagkoppelingen configureren

Opslagkoppelingen bieden permanente externe opslag (bijvoorbeeld Azure Files) die toegankelijk is voor uw app. Gebruiken voor verouderde code die toegang tot gedeeld bestandssysteem nodig heeft, niet voor geheimen (gebruik Key Vault). Hoewel lokale (tijdelijke) opslag ook beschikbaar is, zijn permanente wijzigingen opslagkoppelingen vereist.

U hebt het volgende nodig om opslagkoppelingen te configureren:

  • Beheerde identiteit (voor Key Vault-toegang)
  • Key Vault-geheim (referentiebron)

Opslagkoppelingen configureren:

  1. Ga naar uw beheerde exemplaar in Azure Portal.
  2. SelecteerConfiguratiekoppelingen>.
  3. Selecteer + Nieuwe opslagkoppeling.

Geef de volgende gegevens op om de opslagkoppeling te configureren:

Configuratie Waarde
Naam Voer een koppelingsnaam in
Opslagtype Azure-bestanden, Aangepast of Lokaal (tijdelijke opslag)
Opslagaccount Een opslagaccount selecteren of invoeren
Bestand delen Een bestandsshare selecteren
Waarde Een sleutelkluis selecteren
Geheim Het sleutelkluisgeheim selecteren
Stationsletter koppelen Pad naar stationsletter selecteren

U kunt externe opslag koppelen aan uw beheerde exemplaar. Gekoppelde opslag blijft bij het opnieuw opstarten en toegankelijk vanuit het bestandssysteem van uw app.

Opslagkoppelingen configureren met Azure Files

Een Azure Files-opslagkoppeling configureren:

  1. Maak een Azure Storage-account en een Azure Files-share.
  2. Sla een verbindingsreferentie op in Key Vault als geheim. Ondersteunde geheime inhoud: (bijvoorbeeld: DefaultEndpointsProtocol=...;AccountName=...;AccountKey=...;EndpointSuffix=core.windows.net)
  3. Voeg de koppeling toe in Managed Instance (Azure Portal of ARM/Bicep/Terraform).

Aanbeveling

Dwing machtigingen op shareniveau af via Azure RBAC + share-ACL's voor verbeterde beveiliging.

Opslagkoppelingen configureren met aangepaste UNC

Gebruik koppelingen voor SMB-shares die elders worden gehost (on-premises, VM of niet-Microsoft). Zorg voor netwerkconnectiviteit (integratie van virtuele netwerken/privé-eindpunten/firewalls).

  1. Als er referenties nodig zijn, slaat u deze op in een Key Vault-geheim in de indeling: username=<user>,password=<password>
    • Vermijd domeinbeheerdersaccounts; gebruik een service-identiteit met minimale bevoegdheden.
  2. Voeg de koppeling toe in Managed Instance.

Registersleutels configureren

Sommige toepassingen zijn afhankelijk van waarden die worden gelezen uit het Windows-register. Met een registersleuteladapter kunt u registersleutels maken en geheimen uit Azure Key Vault gebruiken als waarde.

U hebt het volgende nodig om registersleutels te configureren:

  • Beheerde identiteit (voor Key Vault-toegang)
  • Key Vault-geheim (referentiebron)

Registersleutels configureren:

  1. Ga naarconfiguratieregistersleutels>.

  2. Selecteer + Toevoegen.

    Configuratie Waarde
    Path Voer het registerpad in
    Kluis Voer een bestaande kluisnaam in
    Geheim Het sleutelkluisgeheim selecteren of invoeren
    Typologie Tekenreeks of DWORD
  3. Selecteer Toevoegen om de registersleutel toe te voegen.

Waarschuwing

Wees voorzichtig bij het wijzigen van systeemkritieke registerpaden. Onjuiste wijzigingen kunnen van invloed zijn op de stabiliteit van exemplaren.

RDP-toegang (Bastion) configureren

Quickstart: Met Azure Bastion kunt u automatisch veilig verbinding maken met uw VM-exemplaren via Remote Desktop Protocol (RDP). RDP via Azure Bastion is bedoeld voor tijdelijke diagnostische gegevens (logboekinspectie, snelle validatie). Als u Bastion wilt gebruiken via de portal, voert u een upgrade uit van uw Bastion-resource naar de standaardprijscategorie en selecteert u Systeemeigen clientondersteuning en IP-Based Verbinding.

U hebt de volgende resources nodig voor Toegang tot Bastion/RDP:

  • Managed Instance moet zijn geïntegreerd met een virtueel netwerk
  • Azure Bastion-host in het virtuele doelnetwerk
  • Poort 3389 moet zijn toegestaan van de NSG van het Bastion-subnet naar het subnet van het App Service-plan

Bastion configureren:

  1. Ga naar Configuration>Bastion/RDP.
  2. Controleer of het virtuele netwerk is verbonden.
  3. Selecteer Extern bureaublad toestaan (via Bastion).

Waarschuwing

Pas geen handmatige installatieprogramma's of configuratiewijzigingen alleen toe via RDP. Wijzigingen gaan verloren bij recyclen of configuratiedrift maken.

Veelgestelde vragen (FAQ)

Welk besturingssysteem (besturingssysteem) wordt uitgevoerd in Managed Instance in Azure App Service?

Windows Server 2022.

Kan ik meer Windows-rollen en -functies inschakelen?

Ja, via een configuratiescript. Functies die zijn verwijderd uit een toekomstige versie van Windows Server, zijn echter niet beschikbaar in Managed Instance.

Ontvangt Managed Instance in Azure App Service regelmatig updates voor het platform en de toepassingsstack?

Ja, exemplaren ontvangen routineplatformupdates en -onderhoud. Vooraf geïnstalleerde toepassingsstacks worden ook regelmatig bijgewerkt. U moet alle onderdelen onderhouden die zijn geïnstalleerd via configuratiescripts (installatie).

Welke programmeertalen zijn geïnstalleerd in Managed Instance in Azure App Service?

Microsoft .NET Framework 3.5, 4.8 en Microsoft .NET 8.0. Als u andere runtimes nodig hebt, kunt u deze installeren met behulp van een configuratiescript. Deze worden niet onderhouden door het platform en moeten handmatig worden bijgewerkt.

Wat zijn beperkingen voor de configuratiescripts (installeren)?

Configuratiescripts (installeren) kunnen afhankelijkheden installeren, functies en onderdelen inschakelen en het besturingssysteem aanpassen. Destructieve bewerkingen (bijvoorbeeld verwijderen Windows\System32) worden echter niet ondersteund en kunnen leiden tot instabiliteit van instanties.

Op welk machtigingsniveau wordt een configuratiescript (installatiescript) uitgevoerd?

Configuratiescripts (installeren) worden uitgevoerd met beheerdersmachtigingen om installatie en configuratie van onderdelen op systeemniveau toe te staan.

Welke rolmachtigingen heeft een operator bij het maken van verbinding met een exemplaar met Behulp van Bastion?

Operators die verbinding maken via Bastion, hebben beheerdersbevoegdheden tijdens de sessie.

Hoe los ik fouten op met mijn configuratiescript of register-/opslagadapters?

Raadpleeg de logboeken voor configuratiescripts (installatie) om problemen op te lossen. Ze zijn te vinden in C:\InstallScripts\Script\Install.log op het exemplaar (niet de web-app). U kunt ook App Service-consolelogboeken verzenden naar Azure Monitor en Log Analytics.

Adapterlogboeken vindt u in de hoofdmap van de computer. Ze worden ook aangemeld bij App Service-platformlogboeken.

Wat is het adresseerbare geheugen van een beheerd exemplaar in een Azure App Service-werkrolexemplaren?

Het adresseerbare geheugen van een beheerd exemplaar op een Azure App Service-werkrolexemplaren is afhankelijk van het gekozen prijsplan. De volgende tabel bevat het adresseerbare geheugen voor het beheerde exemplaar op het Azure App Service-werkrolexemplaren. Het is belangrijk om te overwegen of u een configuratiescript hebt waarmee meer onderdelen, services, enzovoort worden geïnstalleerd. Deze resources zijn van invloed op de hoeveelheid geheugen die beschikbaar is voor gebruik door uw web-apps.

Prijsoverzicht Kernen Geheugen (MB)
P0v4 1 2048
P1v4 2 5952
P2v4 4 13440
P3v4 8 28672
P1Mv4 2 13440
P2Mv4 4 28672
P3Mv4 8 60160
P4Mv4 16 121088
P5Mv4 32 246016

Welke Azure Storage-service moet ik gebruiken om een configuratiescript (installatie) te uploaden?

Gebruik de Azure Storage-blobservice voor het uploaden van het script en de vereiste afhankelijkheden.

Is er een beperking voor naamgeving en indeling voor het configuratiescript (installatiescript) ?

Ja, het script moet de naam Install.ps1hebben. Alleen PowerShell wordt ondersteund. Zorg ervoor dat u configuratiescripts en afhankelijkheden uploadt als één .zip-bestand.

Is er een groottelimiet voor de afhankelijkheden die ik kan uploaden als onderdeel van het zip-bestand?

Er wordt geen groottelimiet afgedwongen. Houd er rekening mee dat de totale grootte van afhankelijkheden van invloed is op de inrichtingstijd van het exemplaar.

Wordt het toevoegen of bewerken van managed instances op App Service-planadapters de planexemplaren opnieuw gestart?

Ja, het toevoegen of bewerken van planadapters voor beheerde exemplaren (configuratiescript/opslag/register) start de onderliggende exemplaren opnieuw op en is van invloed op alle web-apps die in het plan zijn geïmplementeerd. Houd er rekening mee dat het opnieuw opstarten van het exemplaar alle wijzigingen verwijdert die zijn aangebracht via de RDP-sessie. Gebruik altijd configuratiescript (installatie) om afhankelijkheden te installeren of andere vereiste configuratiewijzigingen te behouden.

Mijn beheerde exemplaarplan heeft meerdere exemplaren, kan ik één exemplaar opnieuw starten?

Ja, blader naar het beheerde exemplaar en selecteer Exemplaren in het linkermenu. Selecteer vervolgens opnieuw opstarten naast de naam van het exemplaar.

Mijn beheerde exemplaar in het App Service-plan heeft meerdere webtoepassingen, kan ik één webtoepassing opnieuw starten?

Ja, blader naar de overzichtspagina van de app en selecteer Opnieuw opstarten.

Kan ik beheerde identiteit toewijzen aan mijn webtoepassing binnen het beheerde exemplaar in het App Service-plan?

Ja, u kunt een andere beheerde identiteit toewijzen aan een webtoepassing in het beheerde exemplaar. Volg de richtlijnen voor beheerde identiteit

Is er een beperking voor het aantal adapters dat ik voor Managed Instance in een App Service-plan kan maken?

Nee, er is geen limiet voor het aantal opslag- of registeradapters. U kunt slechts één configuratiescriptadapter (installeren) maken voor Managed Instance in een App Service-plan. Het verhogen van het aantal adapters kan van invloed zijn op de inrichtingstijd voor Managed Instance.

Welke regio's hebben ondersteuning voor Managed Instance in App Service?

Momenteel is ondersteuning voor Managed Instance in App Service beperkt tot VS - oost, VS - west-centraal, Azië - oost, Europa - noord en Australië - oost. In de loop van de tijd worden er meer regio's toegevoegd aan de preview. Als u een bijgewerkte lijst met regio's wilt ophalen, kunt u de volgende CLI-opdracht gebruiken (u moet Azure CLI versie 2.82.0 of hoger gebruiken).

az appservice list-locations --managed-instance-enabled --sku <Pv4 or PmV4 sku your require, for example P1v4>