(DEPRECATO) Eseguire applicazioni in Kubernetes

Suggerimento

Per la versione aggiornata questa esercitazione che usa servizio Azure Kubernetes, vedere Esercitazione: Eseguire applicazioni in servizio Azure Kubernetes (servizio Azure Kubernetes).

Avviso

Il servizio Azure Container (ACS) è deprecato. Non saranno aggiunte nuove funzionalità al servizio Azure Container. Tutte le API, l'esperienza del portale, i comandi dell'interfaccia della riga di comando e la documentazione sono contrassegnate come deprecate.

Nel 2017 abbiamo presentato il servizio Azure Kubernetes per semplificare la gestione, la distribuzione e le operazioni di Kubernetes. Se si usa l'agente di orchestrazione di Kubernetes, eseguire la migrazione al servizio Azure Kubernetes entro il 31 gennaio 2020. Per iniziare, vedere eseguire la migrazione al servizio Azure Kubernetes.

Per altre informazioni, vedere l'annuncio di deprecazione del servizio Azure Container su Azure.com.

In questa esercitazione, parte quattro di sette, verrà distribuita un'applicazione di esempio in un cluster Kubernetes. I passaggi completati comprendono:

  • Scaricare i file manifesto Kubernetes
  • Eseguire un'applicazione in Kubernetes
  • Test dell'applicazione

Nelle esercitazioni successive l'applicazione viene ridimensionata e aggiornata e Log Analytics viene configurato per monitorare il cluster Kubernetes.

Questa esercitazione presuppone una conoscenza di base dei concetti relativi a Kubernetes. Per informazioni dettagliate su Kubernetes, vedere la documentazione di Kubernetes.

Prima di iniziare

Nelle esercitazioni precedenti è stato creato un pacchetto di un'applicazione in un'immagine del contenitore, caricata poi in Registro Azure Container, ed è stato creato un cluster Kubernetes.

Per completare questa esercitazione, è necessario il file manifesto Kubernetes azure-vote-all-in-one-redis.yml creato in precedenza. Questo file è stato scaricato con il codice sorgente dell'applicazione in un'esercitazione precedente. Verificare che sia stato clonato il repository e che si siano state cambiate le directory nel repository clonato.

Se questi passaggi non sono stati ancora eseguiti e si vuole procedere, tornare a Esercitazione 1: Creare immagini del contenitore.

Aggiornare il file manifesto

In questa esercitazione, Registro Azure Container è stato usato per archiviare un'immagine del contenitore. Prima di eseguire l'applicazione, è necessario aggiornare il nome del server di accesso di Registro Azure Container nel file manifesto Kubernetes.

Ottenere il nome del server di accesso di Registro Azure Container con il comando az acr list.

az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table

Il file manifesto è stato creato in precedenza con un nome di server di accesso microsoft. Aprire il file con qualsiasi editor di testo. In questo esempio il file viene aperto con vi.

vi azure-vote-all-in-one-redis.yml

Sostituire microsoft con il nome del server di accesso di Registro Azure Container. Questo valore viene trovato nella riga 47 del file manifesto.

containers:
- name: azure-vote-front
  image: microsoft/azure-vote-front:v1

Salvare e chiudere il file.

Distribuire un'applicazione

Usare il comando kubectl create per eseguire l'applicazione. Questo comando analizza il file manifesto e creare gli oggetti Kubernetes definiti.

kubectl create -f azure-vote-all-in-one-redis.yml

Output:

deployment "azure-vote-back" created
service "azure-vote-back" created
deployment "azure-vote-front" created
service "azure-vote-front" created

Testare l'applicazione

Viene creato un servizio di Kubernetes che espone l'applicazione a Internet. Questo processo può richiedere alcuni minuti.

Per monitorare lo stato, usare il comando kubectl get service con l'argomento --watch.

kubectl get service azure-vote-front --watch

EXTERNAL-IP per il servizio azure-vote-front viene visualizzato inizialmente come pending. Dopo che l'indirizzo EXTERNAL-IP passa da pending a IP address, usare CTRL-C per arrestare il processo kubectl watch.

NAME               CLUSTER-IP    EXTERNAL-IP   PORT(S)        AGE
azure-vote-front   10.0.42.158   <pending>     80:31873/TCP   1m
azure-vote-front   10.0.42.158   52.179.23.131 80:31873/TCP   2m

Per vedere l'applicazione, passare all'indirizzo IP esterno.

Immagine del cluster Kubernetes in Azure

Passaggi successivi

In questa esercitazione è stata distribuita un'applicazione Azure Vote in un cluster Kubernetes del servizio Azure Container. Le attività completate comprendono:

  • Scaricare i file manifesto Kubernetes
  • Eseguire l'applicazione in Kubernetes
  • Testare l'applicazione

Passare all'esercitazione successiva per informazioni sulla scalabilità sia di un'applicazione Kubernetes sia dell'infrastruttura Kubernetes sottostante.