Distribuire Istanza gestita su Servizio app di Azure

Istanza gestita nel servizio app di Azure combina la semplicità della piattaforma distribuita come servizio con la flessibilità del controllo a livello di infrastruttura. Istanza gestita è progettata per applicazioni che richiedono la personalizzazione del sistema operativo, networking privato e integrazione sicura con i servizi Azure.

Importante

Istanza gestita è generalmente disponibile per le app web Windows in alcune regioni ed è limitato ai piani tariffari Pv4 e Pmv4. Microsoft aggiungerà altre regioni nel tempo. Istanza gestita non supporta Linux e i contenitori.

In questa guida rapida, completerai i passaggi seguenti:

  1. Usare l'interfaccia della riga di comando per sviluppatori di Azure per distribuire risorse di esempio.
  2. Crea una Istanza gestita su Servizio app di Azure.
  3. Distribuire un'app di esempio.
  4. Verificare la distribuzione.

Prerequisiti

  • Account Azure: è necessario un account Azure con una sottoscrizione attiva. Se non si dispone già di un account, è possibile creare un account gratuitamente.

  • Identità gestita

  • Guida introduttiva: Caricare, scaricare ed elencare BLOB con il portale di Azure

  • Script opzionale di configurazione (installazione): Questo quickstart utilizza uno script PowerShell denominato Install.ps1 in un file .zip compresso per installare i font. Gli script di configurazione non sono obbligatori per Istanza gestita. Usa uno script di configurazione quando la tua applicazione richiede dipendenze, ruoli a livello di sistema operativo, funzionalità o configurazioni, oppure modifiche persistenti che altrimenti si perderebbero dopo il riavvio di un'istanza. Usa RDP per la diagnostica invece che per la configurazione persistente.

Distribuire risorse di esempio

Puoi rapidamente distribuire tutte le risorse necessarie in questo quickstart usando Azure Developer CLI (AZD). Il modello AZD usato in questa guida introduttiva proviene da esempi di Azure.

mkdir managed-instance-quickstart
cd managed-instance-quickstart
azd init --template https://github.com/Azure-Samples/managed-instance-azure-app-service-quickstart.git .
azd env set AZURE_LOCATION northeurope
azd up

Il comando azd up esegue le azioni seguenti:

  1. Crea un'identità gestita assegnata dall'utente.
  2. Crea un BLOB di archiviazione di Azure.
  3. Assegna l'identità gestita al contenitore di archiviazione e al piano di Istanza Gestita.
  4. Concede nel contenitore di archiviazione l'accesso a Storage-Blob-Data-Contributor.
  5. Comprime i tipi di carattere e Install.ps1 in scripts.zip.
  6. Caricare scripts.zip nel contenitore di archiviazione.

Annotazioni

Il pacchetto di script di configurazione (scripts.zip) distribuito con le risorse di esempio contiene Install.ps1, che copia i file di font Microsoft Aptos in C:\Windows\Fonts. L'app di esempio che distribuisci usa questi font.

Il codice di PowerShell seguente è lo script di configurazione (installazione) usato nel modello.

# Install.ps1 - Copy and register fonts on Managed Instance
Write-Host "Installing custom fonts on Managed Instance..." -ForegroundColor Green

# Copy all TTF and OTF fonts to Windows Fonts folder and register them
Get-ChildItem -Recurse -Include *.ttf, *.otf | ForEach-Object {
    $FontFullName = $_.FullName
    $FontName = $_.BaseName + " (TrueType)"
    $Destination = "$env:windir\Fonts\$($_.Name)"

    Write-Host "Installing font: $($_.Name)"
    Copy-Item $FontFullName -Destination $Destination -Force
    New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts" -Name $FontName -PropertyType String -Value $_.Name -Force | Out-Null
}

Write-Host "Font installation completed." -ForegroundColor Green

L'output finale di azd up dovrebbe essere simile all'esempio seguente.

=== Deployment Complete ===
Storage Account: stgpjqep6fdlfv6
Container Name: scripts
Managed Identity Client name: id-gpjqep6fdlfv6
Resource Group: rg-managed-instance

I valori per Storage Account, Container NameManaged Identity Client name, Resource Group, e Script URI vengono usati in un secondo momento.

Distribuire un piano di Istanza gestita

Seguire questa procedura per creare un piano di Istanza gestita e distribuirvi un'app:

  1. Accedi al portale di Azure.
  2. Selezionare + Crea una risorsa.
  3. Cercare Identità gestita
  4. Seleziona Web App (per Istanza gestita) nei risultati.
  5. Selezionare Crea per avviare il processo di creazione.
  6. Nella scheda Basic specificare i dettagli seguenti.

Dettagli di progetto

Impostazione Value
Subscription la propria sottoscrizione di Azure
Gruppo di risorse rg-managed-instance

Dettagli dell'app

Impostazione Value
Nome contoso-mi-app
Stack di runtime ASPNET V4.8
Area geografica Un'area nelle vicinanze

Piani tariffari

Impostazione Value
Piano di Windows Usare il piano predefinito o crearne uno nuovo(ad esempio, 'contoso-mi-plan')
Piani tariffari* Selezionare un piano tariffario. Se Pv4 o Pmv4 non è visibile nei piani tariffari, confermare la disponibilità dell'area o richiedere più quote.

Nella scheda Avanzate specificare i dettagli seguenti.

Script di configurazione (installazione)

Impostazione Value
Account di archiviazione Usare il piano predefinito o crearne uno nuovo(ad esempio, 'contoso-mi-plan')
Contenitore script
File ZIP scripts.zip
Value Verificare che l'URL .zip sia corretto
Identità Selezionare l'identità gestita creata in precedenza
  • Selezionare Rivedi e crea e quindi Crea.

Distribuire un'app di esempio in Istanza gestita

In questo passaggio si usa Cloud Shell per distribuire un'app di esempio inclusa nel modello AZD in Istanza gestita.

  • Il comando seguente distribuisce l'app Web nel piano di Istanza gestita. Aggiorna <app-name> e <resource-group> con i tuoi valori.
az webapp deploy \
  --resource-group "<resource-group-name>" \
  --name "<app-name>" \
  --src-path app.zip \
  --type zip

Passare all'app

Per passare all'app creata, selezionare il dominio predefinito nella pagina Panoramica .

L'app .NET è in esecuzione su un piano di istanza gestita. L'app usa i tipi di carattere dalla directory C:\Windows\Fonts.

Screenshot che mostra l'app di esempio che usa C:\Windows\Fonts\Aptos.TTF.

Gestire il piano di Istanza gestita

Per gestire l'app Web, passare al portale di Azure e cercare e selezionare Servizi app.

Nella pagina Servizi app selezionare il nome dell'app Web.

Nella pagina Panoramica selezionare il nome del piano di servizio App. In Piano di servizio app corrente selezionare il nome del piano.

Nel menu a sinistra in Impostazioni selezionare Configurazione per visualizzare i dettagli di configurazione.

Pulire le risorse

Nei passaggi precedenti sono state create risorse di Azure in un gruppo di risorse. Se non si prevede di aver bisogno di queste risorse in futuro, è possibile eliminarle eliminando il gruppo di risorse.

  1. Nella pagina Panoramica dell'app Web nel portale di Azure selezionare il collegamento myResourceGroup in Gruppo di risorse.
  2. Nella pagina del gruppo di risorse assicurarsi che le risorse elencate siano quelle da eliminare.
  3. Selezionare Elimina gruppo di risorse, digitare myResourceGroup nella casella di testo e quindi selezionare Elimina.
  4. Confermare di nuovo selezionando Elimina.