Lab 08: Creare una soluzione multilivello usando i servizi di Azure
Interfaccia utente di Microsoft Azure
Considerata la natura dinamica degli strumenti cloud di Microsoft, è possibile rilevare modifiche all’interfaccia utente di Azure apportate dopo lo sviluppo di questo contenuto per la formazione. È quindi possibile che le istruzioni e le procedure del lab non siano allineate correttamente.
Microsoft aggiorna questo corso di formazione quando la community segnala le modifiche necessarie. Poiché gli aggiornamenti cloud vengono apportati spesso, tuttavia, è possibile che si rilevino modifiche all’interfaccia utente prima degli aggiornamenti del contenuto per la formazione. In questo caso, adattarsi alle modifiche e quindi eseguire le operazioni necessarie nei lab.
Istruzioni
Prima di iniziare
Accedere all’ambiente lab
Accedere alla macchina virtuale Windows 10 usando le credenziali seguenti:
-
Nome utente: Admin
-
Password: Pa55w.rd
Nota: il docente fornirà le istruzioni necessarie per la connessione all’ambiente lab virtuale.
Esaminare le applicazioni installate
Trovare la barra delle applicazioni nel desktop di Windows 10. Questa barra delle applicazioni contiene le icone delle applicazioni che verranno usate in questo lab:
- Microsoft Edge
Diagramma dell’architettura
Esercizio 1: Creare una risorsa di Servizio app di Azure usando un’immagine del contenitore Docker
Attività 1: Aprire il portale di Azure
-
Sulla barra delle applicazioni selezionare l’icona di Microsoft Edge.
-
Nella finestra del browser che si aprirà passare al portale di Azure (portal.azure.com) e quindi accedere con l’account che si userà per questo lab.
Nota: se si sta eseguendo l’accesso al portale di Azure per la prima volta, verrà visualizzata una presentazione del portale. Selezionare Attività iniziali per ignorare la presentazione e iniziare a usare il portale.
Attività 2: Creare un’app Web mediante la risorsa di Servizio app di Azure usando un’immagine del contenitore httpbin
-
Nel portale di Azure usare la casella di testo Cerca risorse, servizi e documentazione per cercare Servizi app e quindi nell’elenco dei risultati selezionare Servizi app.
-
Nel pannello Servizi app selezionare + Crea.
-
Nella scheda Informazioni di base del pannello Crea app Web eseguire le azioni seguenti:
Impostazione Azione Elenco a discesa Sottoscrizione Mantenere il valore predefinito Sezione Gruppo di risorse Selezionare Crea nuovo, immettere ApiService e quindi selezionare OK Casella di testo Nome Immettere httpapi [nomeutente] Sezione Pubblica Selezionare Contenitore Docker Sezione Sistema operativo Selezionare Linux. Elenco a discesa Area Selezionare qualsiasi area di Azure in cui è possibile distribuire un’app Web di Azure Sezione Piano Linux Selezionare Crea nuovo, immettere il valore ApiPlan nella casella di testo Nome e quindi selezionare OK Sezione Piano tariffario Selezionare Modifica dimensioni nel pannello Selezione specifiche, selezionare Visualizza opzioni aggiuntive, selezionare S1 e quindi selezionare Applica -
Selezionare Avanti: Docker > .
-
Nella scheda Docker eseguire le azioni seguenti e quindi selezionare Rivedi e crea:
Impostazione Azione Elenco a discesa Opzioni Selezionare Contenitore singolo Elenco a discesa Origine immagine Selezionare Docker Hub Elenco a discesa Tipo di accesso Selezionare Pubblico Casella di testo Immagine e tag Immettere kennethreitz/httpbin:latest -
Nella scheda Rivedi e crea esaminare le opzioni selezionate durante i passaggi precedenti.
-
Selezionare Crea per creare l’app Web usando la configurazione specificata.
Nota: prima di procedere con il lab, attendere il completamento dell’attività di creazione.
Attività 3: Testare l’applicazione Web httpbin
-
Nel portale di Azure usare la casella di testo Cerca risorse, servizi e documentazione per cercare Servizi app e quindi nell’elenco dei risultati selezionare Servizi app.
-
Nel pannello Servizi app selezionare l’app Web appena creata.
-
Nel pannello che mostra le proprietà dell’app appena creata selezionare Sfoglia.
-
All’interno dell’applicazione Web eseguire le azioni seguenti:
a. Selezionare Formati di risposta.
b. Selezionare GET /html.
c. Selezionare Prova.
Lo screenshot seguente mostra la sezione Prova dell’applicazione Web.
d. Selezionare Esegui.
e. Esaminare il valore delle caselle di testo Corpo della risposta e Intestazioni della risposta.
f. Esaminare il valore della casella di testo URL della richiesta.
-
All’interno dell’applicazione Web eseguire le azioni seguenti:
a. Selezionare Dati dinamici.
b. Selezionare GET /bytes/{n} .
c. Selezionare Prova.
d. Nella casella di testo n immettere 25.
e. Selezionare Esegui.
f. Esaminare il valore delle caselle di testo Corpo della risposta e Intestazioni della risposta.
g. Selezionare Scarica il file. Al termine del download, aprire il file in Blocco note, esaminarne il contenuto e quindi chiuderlo.
Nota: il file contiene una sequenza di byte generati in modo casuale.
Lo screenshot seguente mostra la sezione dei dati dinamici dell’applicazione Web.
-
All’interno dell’applicazione Web eseguire le azioni seguenti:
a. Selezionare Codici di stato.
b. Selezionare GET /status/{codes} .
c. Selezionare Prova.
d. Nella casella di testo codici immettere 404.
e. Selezionare Esegui.
f. Esaminare la sezione Server response (Risposta del server) e notare che include la voce Error: NOT FOUND (Errore: NON TROVATO).
-
Chiudere la finestra del browser in cui è visualizzata l’applicazione Web.
-
Tornare alla finestra del browser in cui è visualizzata l’app Web httpapi [nomeutente] .
-
Nella sezione Impostazioni selezionare il collegamento Proprietà.
-
Nella sezione Proprietà registrare il valore del collegamento URL. Questo valore verrà usato più avanti nel lab per inviare richieste all’API corrispondente.
Verifica
In questo esercizio è stata creata una nuova app Web di Azure usando un’immagine del contenitore originata da Docker Hub.
Esercizio 2: Creare un livello proxy API usando Gestione API di Azure
Attività 1: Creare una risorsa di Gestione API di Azure
-
Nel portale di Azure usare la casella di testo Cerca risorse, servizi e documentazione per cercare Servizi Gestione API e quindi nell’elenco dei risultati selezionare Servizi Gestione API.
-
Nel pannello Servizi Gestione API selezionare + Crea.
-
Nel pannello Installa gateway di gestione API eseguire le azioni seguenti e quindi selezionare Rivedi e crea:
Impostazione Azione Elenco a discesa Sottoscrizione Mantenere il valore predefinito. Sezione Gruppo di risorse Selezionare il gruppo ApiService creato in precedenza nel lab Elenco Area Selezionare la stessa area scelta nell’esercizio precedente Casella di testo Nome della risorsa Immettere proapi [nomeutente] Casella di testo Nome organizzazione Immettere Contoso Casella di testo Indirizzo di posta elettronica dell’amministratore Immettere admin@contoso.com
Elenco a discesa Piano tariffario Consumo (contratto di servizio del 99,95%) Lo screenshot seguente mostra le impostazioni configurate del pannello Crea Gestione API dell’applicazione Web.
-
Nella scheda Rivedi e crea esaminare l’opzione specificata nel passaggio precedente e quindi selezionare Crea.
Nota: prima di procedere con il lab, attendere il completamento dell’attività di creazione.
-
Nel pannello Panoramica sulla distribuzione selezionare Vai alla risorsa.
Attività 2: Definire una nuova API
-
Nel pannello Servizio Gestione API selezionare API nella sezione API.
-
Nella sezione Define a new API (Definisci una nuova API) selezionare HTTP.
-
Nella finestra Crea un’API HTTP eseguire le azioni seguenti e selezionare Crea:
Impostazione Azione Casella di testo Nome visualizzato Immettere HTTPBin API Casella di testo Nome Immettere httpbin-api Casella di testo URL servizio Web Immettere l’URL dell’app Web copiato in precedenza in questo lab. Nota: assicurarsi che l’URL inizi con il prefisso https:// Casella di testo Suffisso dell’URL dell’API Lasciare il campo vuoto Lo screenshot seguente mostra le impostazioni configurate della finestra Crea un’API vuota dell’applicazione Web.
Nota: attendere il completamento della creazione della nuova API.
-
Nella scheda Progettazione selezionare + Aggiungi operazione.
-
Nella sezione Aggiungi operazione eseguire le azioni seguenti e quindi selezionare Salva:
Impostazione Azione Casella di testo Nome visualizzato Immettere Echo Headers Casella di testo Nome Verificare che il valore sia impostato su echo-headers Elenco URL Selezionare GET Casella di testo URL Immettere / Lo screenshot seguente mostra le impostazioni configurate della sezione Aggiungi operazione.
-
Sempre nella scheda Progettazione selezionare Echo Headers nell’elenco delle operazioni.
-
Nel riquadro Elaborazione in ingresso della sezione Progettazione selezionare + Aggiungi criteri.
-
Nella sezione Add inbound policy (Aggiungi criteri in ingresso) selezionare il riquadro Imposta intestazioni.
-
Nella sezione Imposta intestazioni eseguire le azioni seguenti e quindi selezionare Salva:
Impostazione Azione Casella di testo Nome Immettere source Casella di testo Valore Selezionare l’elenco, selezionare Aggiungi valore e quindi immettere azure-api-mgmt Elenco Azione Selezionare accoda Lo screenshot seguente mostra le impostazioni configurate della sezione Progettazione.
-
Sempre nella scheda Progettazione selezionare Echo Headers nell’elenco delle operazioni.
-
Nella sezione Progettazione per Echo Headers selezionare l’icona a forma di matita nel riquadro Back-end.
-
Nella sezione Back-end eseguire le azioni seguenti e quindi selezionare Salva:
Impostazione Azione Sezione URL del servizio Selezionare la casella di controllo Sostituzione Casella di testo URL servizio Accodare il valore /headers al valore corrente. Nota: ad esempio, se il valore corrente è http://httpapi[yourname].azurewebsites.net
, il nuovo valore saràhttp://httpapi[yourname].azurewebsites.net/headers
-
Tornare alla scheda Progettazione, selezionare Echo Headers nell’elenco delle operazioni e quindi selezionare la scheda Test.
-
Nella sezione Echo Headers selezionare Invia.
Lo screenshot seguente mostra le impostazioni configurate della sezione Echo Headers.
-
Esaminare i risultati della richiesta API.
Nota: verificare che nella risposta siano visualizzate molte intestazioni inviate come parte della richiesta. Dovrebbero includere la nuova intestazione Source creata come parte di questa attività.
Lo screenshot seguente mostra la risposta alla richiesta Echo Headers.
-
Selezionare la scheda Progettazione per tornare all’elenco delle operazioni.
Attività 3: Modificare una risposta API
-
Nella scheda Progettazione selezionare + Aggiungi operazione.
-
Nella sezione Aggiungi operazione eseguire le azioni seguenti e quindi selezionare Salva:
Impostazione Azione Casella di testo Nome visualizzato Immettere Get Legacy Data Casella di testo Nome Verificare che il valore sia impostato su get-legacy-data Elenco URL Verificare che il valore sia impostato su GET Casella di testo URL Immettere /xml -
Tornare alla scheda Progettazione e selezionare Get Legacy Data nell’elenco delle operazioni.
-
Selezionare la scheda Test e quindi selezionare Invia.
-
Esaminare i risultati della richiesta API.
Nota: a questo punto, i risultati dovrebbero essere in formato XML.
Lo screenshot seguente mostra i risultati della richiesta API.
-
Selezionare la scheda Progettazione e quindi selezionare Get Legacy Data.
-
Nella sezione Elaborazione in uscita del riquadro Progettazione selezionare Aggiungi criterio.
Lo screenshot seguente mostra la sezione Elaborazione in uscita.
-
Nella sezione Add outbound policy (Aggiungi criteri in uscita) selezionare il riquadro Altri criteri.
-
Nell’editor del codice dei criteri trovare il blocco di contenuto XML seguente:
<outbound> <base /> </outbound>
-
Sostituire il blocco di codice XML con il codice seguente:
<outbound> <base /> <xml-to-json kind="direct" apply="always" consider-accept-header="false" /> </outbound>
-
Nell’editor di codice dei criteri selezionare Salva.
-
Tornare alla scheda Progettazione, selezionare Get Legacy Data nell’elenco delle operazioni e quindi selezionare Test.
-
Nella sezione Get Legacy Data selezionare Invia.
-
Esaminare i risultati della richiesta API.
Nota: i nuovi risultati sono in formato JSON (JavaScript Object Notation).
-
Nella sezione Risposta HTTP eseguire le azioni seguenti:
-
Selezionare Traccia.
-
Esaminare il contenuto nelle caselle di testo Back-end e In uscita e notare che includono i dettagli delle operazioni API corrispondenti con le informazioni sulla tempistica.
-
Attività 4: Modificare una richiesta API
-
Nella scheda Progettazione selezionare + Aggiungi operazione.
-
Nella sezione Aggiungi operazione eseguire le azioni seguenti e quindi selezionare Salva:
Impostazione Azione Casella di testo Nome visualizzato Immettere Modify Status Code Casella di testo Nome Verificare che il valore sia impostato su modify-status-code Elenco URL Selezionare GET Casella di testo URL Immettere /status/404 -
Tornare alla scheda Progettazione e selezionare Modify Status Code nell’elenco delle operazioni.
-
Nella sezione Progettazione, nel riquadro Elaborazione in ingresso selezionare + Aggiungi criteri.
-
Nella sezione Add inbound policy (Aggiungi criteri in ingresso) selezionare il riquadro Riscrivi URL.
-
Nella sezione Riscrivi URL eseguire le azioni seguenti:
a. Nella casella di testo Back-end immettere /status/200.
b. Selezionare Salva.
-
Tornare alla scheda Progettazione, selezionare Modify Status Code nell’elenco delle operazioni e quindi selezionare la scheda Test.
-
Nella sezione Modify Status Code selezionare Invia.
-
Esaminare i risultati della richiesta API.
Nota: verificare che la richiesta abbia restituito la risposta HTTP/1.1 200 OK.
Verifica
In questo esercizio è stato creato un livello proxy tra la risorsa del servizio app e gli sviluppatori che vogliono eseguire query sull’API corrispondente.
Esercizio 3: Pulire la sottoscrizione
Attività 1: Aprire Azure Cloud Shell
-
Nel portale di Azure selezionare l’icona di Cloud Shell
per aprire una nuova sessione di Bash. Se in Cloud Shell viene aperta per impostazione predefinita una sessione di PowerShell, selezionare PowerShell e quindi nel menu a discesa selezionare Bash.
Nota: se è la prima volta che si avvia Cloud Shell, quando viene richiesto di selezionare Bash oppure PowerShell selezionare PowerShell. Quando viene visualizzato il messaggio Non sono state montate risorse di archiviazione, selezionare la sottoscrizione usata in questo lab e quindi selezionare Crea risorsa di archiviazione.
Attività 2: Eliminare i gruppi di risorse
-
Nel riquadro Cloud Shell eseguire il comando seguente per eliminare il gruppo di risorse ApiService:
az group delete --name ApiService --no-wait --yes
Nota: il comando viene eseguito in modo asincrono, in base a quanto determinato dal parametro –no-wait, quindi, sebbene sia possibile eseguire un altro comando dell’interfaccia della riga di comando di Azure immediatamente dopo nella stessa sessione Bash, il gruppo di risorse verrà effettivamente rimosso dopo alcuni minuti.
-
Chiudere il riquadro Cloud Shell nel portale.
Attività 3: Chiudere le applicazioni attive
- Chiudere l’applicazione Microsoft Edge in esecuzione.
Verifica
In questo esercizio è stata pulita la sottoscrizione mediante la rimozione dei gruppi di risorse usati in questo lab.