Esercitazione: Distribuire un'applicazione nel servizio Azure Kubernetes (AKS)

Kubernetes fornisce una piattaforma distribuita per applicazioni in contenitori. Si compilano e si distribuiscono le applicazioni e i servizi in un cluster Kubernetes e si consente al cluster di gestire la disponibilità e la connettività.

È possibile distribuire l'applicazione di esempio in due modi:

In questa esercitazione si distribuisce un'applicazione di esempio in un cluster Kubernetes direttamente dalla workstation e si gestisce l'applicazione usando il desktop del servizio Azure Kubernetes. Scopri come:

  • Aggiorna un file manifest di Kubernetes.
  • Distribuire un'applicazione in Kubernetes.
  • Testare l'applicazione.
  • Visualizza lo stato di integrità dell'applicazione, i log, le metriche e la composizione nel desktop AKS.

Operazioni preliminari

Nelle esercitazioni precedenti è stata inserita un'applicazione in un'immagine del contenitore, è stata caricata l'immagine in Registro Azure Container e è stato creato un cluster Kubernetes. Per completare questa esercitazione, è necessario il file manifesto Kubernetes aks-store-quickstart.yaml creato in precedenza. Questo file è stato scaricato nel codice sorgente dell'applicazione da Tutorial 1 - Preparare l'applicazione per AKS.

Questa esercitazione crea e aggiorna le risorse fatturabili, ad esempio i servizi LoadBalancer. Usa un'identità con autorizzazioni per distribuire carichi di lavoro in AKS e leggere le risorse del cluster.

Questo tutorial richiede l'installazione di AKS desktop.

Aggiornare il file manifesto

In queste esercitazioni, l'istanza di Registro Azure Container (ACR) archivia le immagini del contenitore per l'applicazione di esempio. Per distribuire l'applicazione, è necessario aggiornare i nomi delle immagini nel file manifest di Kubernetes in modo che includano il nome del server di accesso ACR.

  1. Assicurarsi di essere nella directory aks-store-demo clonata e quindi aprire il file manifesto aks-store-quickstart.yaml con un editor di testo.

  2. Aggiorna la proprietà image dei contenitori sostituendo ghcr.io/azure-samples con il nome del server di accesso di ACR.

    containers:
    ...
    - name: order-service
      image: <acrName>.azurecr.io/aks-store-demo/order-service:1.0
    ...
    - name: product-service
      image: <acrName>.azurecr.io/aks-store-demo/product-service:1.0
    ...
    - name: store-front
      image: <acrName>.azurecr.io/aks-store-demo/store-front:1.0
    ...
    

Eseguire l'applicazione

Distribuisci e gestisci l'applicazione usando desktop di AKS

Il desktop del servizio Azure Kubernetes è un portale per sviluppatori incentrato sulle applicazioni per Servizio Azure Kubernetes (AKS) che semplifica la distribuzione e la gestione delle applicazioni senza richiedere competenze approfondite di Kubernetes.

Registrare il cluster con desktop di Azure Kubernetes Service

  1. Assicurarsi di aver effettuato l'accesso al desktop di AKS con lo stesso account con accesso al cluster di AKS. Dopo l'accesso, selezionare Aggiungi dalla sottoscrizione di Azure.
  2. Immettere il nome del proprio abbonamento Azure se ne esistono più di uno. In alternativa, selezionare la freccia per aprire l'elenco a discesa e quindi selezionare la sottoscrizione di Azure.
  3. Selezionare il cluster e quindi selezionare Registra cluster.

Continua quando lo stato del cluster risulta come connesso nel desktop AKS.

Un video che mostra come aggiungere un cluster all'app desktop AKS.

Creare un progetto gestito su AKS desktop

  1. In AKS desktop, vai alla scheda Progetti e seleziona Crea un nuovo progetto gestito.

  2. Configurare le impostazioni di Project seguenti:

    • Nozioni di base:
      • Nome progetto: ad esempio my-dev-frontend
      • Sottoscrizione: <your-subscription-name>
      • Cluster: <your-cluster-name>

    Note

    Quando si imposta la sottoscrizione Azure e il cluster del servizio Azure Kubernetes, il desktop del servizio Azure Kubernetes verifica la presenza del supporto necessario per le funzionalità di cluster e sottoscrizioni.

    • Criteri di rete: è possibile lasciare le impostazioni predefinite per questa guida introduttiva o aggiornarle in base alle esigenze.

      • Per esporre pubblicamente l'applicazione, impostare Ingresso su Allow all traffic.
    • Quota di calcolo: impostare i valori per l'applicazione di test. Screenshot che mostra l'impostazione dei valori per la quota di calcolo.

    • Accesso: aggiungere qualcuno o cancellare la voce eliminando l'elemento della riga.

  3. In Rivedi verificare le impostazioni per il progetto e quindi selezionare Crea progetto.

    Screenshot della creazione di un nuovo progetto in AKS desktop.

Distribuire un'applicazione

  1. Specificare un nome dell'applicazione e quindi selezionare Crea applicazione.

    Screenshot della creazione di una nuova applicazione nel desktop di AKS.

  2. Selezionare un'origine per l'applicazione. Per questo esempio, selezionare Kubernetes YAML>Avanti. Schermata che mostra la selezione dell'origine dell'applicazione; selezionare il file YAML di Kubernetes.

  3. Aprire aks-store-quickstart.yaml, copiare e incollare il contenuto nell'editor e quindi selezionare Avanti. Screenshot che mostra l'editor YAML con il file YAML copiato e incollato.

  4. Esaminare le risorse create e quindi selezionare Distribuisci e Chiudi. Schermata che mostra il riepilogo

  5. La distribuzione delle risorse può richiedere alcuni minuti. Durante questo periodo, lo stato del progetto potrebbe mostrare Degraded mentre il cluster si ridimensiona.

  6. Controllare lo stato delle risorse dell'applicazione selezionando Risorse e quindi Carichi di lavoro.

    Screenshot che mostra la scheda Risorse per visualizzare le risorse e le relative modifiche. È possibile forzare un aggiornamento dello schermo selezionando l'opzione di menu della finestra superiore NavigateReload .You can force a screen refresh by select the top window menu option >.

  7. Selezionare le singole risorse del carico di lavoro per visualizzare i dettagli e gli eventi.

Testare l'applicazione

Quando l'applicazione viene eseguita, un servizio Kubernetes espone il front-end dell'applicazione a Internet. Questo processo può richiedere alcuni minuti.

AKS Desktop

  1. Recuperare l'indirizzo IP pubblico da Risorsa>Rete>Servizio: store-front>IP esterno. Screenshot che mostra come ottenere l'indirizzo IP pubblico per l'applicazione.

  2. Esplora l'applicazione in AKS Desktop, ad esempio visualizzando log e metriche. Per ulteriori informazioni, vedi Panoramica di AKS Desktop.

riga di comando

  1. Monitorare lo stato di avanzamento usando il comando kubectl get service con l'argomento --watch.

    kubectl get service store-front --watch
    

    Inizialmente, EXTERNAL-IP per il servizio store-front viene visualizzato come <pending>:

    store-front   LoadBalancer   10.0.34.242   <pending>     80:30676/TCP   5s
    
  2. Quando l'indirizzo EXTERNAL-IP passa da <pending> a un indirizzo IP pubblico, usare CTRL-C per arrestare il processo di controllo kubectl.

    L'output di esempio seguente mostra un indirizzo IP pubblico valido assegnato al servizio:

    store-front   LoadBalancer   10.0.34.242   52.179.23.131   80:30676/TCP   67s
    
  3. Visualizzare l'applicazione in azione aprendo un Web browser e passando all'indirizzo IP esterno del servizio: http://<external-ip>.

    Screenshot dell'applicazione di esempio AKS Store.

Se l'applicazione non viene caricata, potrebbe trattarsi di un problema di autorizzazione con il registro immagini. Per visualizzare lo stato dei contenitori, usare il comandokubectl get pods. Se non è possibile eseguire il pull delle immagini del contenitore, vedere Eseguire l'autenticazione con Registro Azure Container dal servizio Azure Kubernetes.

Portale di Azure

Passare alla portale di Azure per trovare le informazioni sulla distribuzione.

  1. Andare alla risorsa cluster del servizio Azure Kubernetes.

  2. Nel menu del servizio, in Risorse Kubernetes, seleziona Servizi e ingressi.

  3. Copiare l'indirizzo IP esterno visualizzato nella colonna per il store-front servizio.

  4. Incollare l'INDIRIZZO IP nel browser per visitare la pagina dello Store.

    Schermata dell'applicazione di esempio AKS Store.

Pulire le risorse

Poiché è stata convalidata la funzionalità dell'applicazione, è ora possibile rimuovere il cluster dall'applicazione. L'applicazione verrà distribuita di nuovo nell'esercitazione successiva.

AKS Desktop

Note

Se vuoi continuare al passaggio successivo dell'esercitazione, non eliminare il progetto desktop AKS.

Al termine, selezionare l'icona Elimina . Nel messaggio di conferma, selezionare Elimina anche lo spazio dei nomi. Per eliminare il progetto, selezionare l'icona del cestino

Riga di comando

  1. Arrestare e rimuovere le istanze e le risorse del contenitore usando il comando kubectl delete.

    kubectl delete -f aks-store-quickstart.yaml
    
  2. Verificare che tutti i pod dell'applicazione siano stati rimossi usando il kubectl get pods comando .

    kubectl get pods
    

Passaggi successivi

In questa esercitazione hai distribuito un'applicazione Azure di esempio in un cluster Kubernetes in AKS. Si è appreso come:

  • Aggiorna un file manifest di Kubernetes.
  • Eseguire un'applicazione in Kubernetes.
  • Testare l'applicazione.

Nell'esercitazione successiva si apprenderà come usare i servizi PaaS per carichi di lavoro con stato in Kubernetes.