Prendi un microservizio creato in precedenza e distribuiscilo in Azure, usando DockerHub e servizio Azure Kubernetes (AKS).
Eseguire il push in Docker Hub
Docker Hub è una posizione centrale per caricare le immagini Docker. Molti prodotti, incluso Microsoft Azure, possono creare contenitori basati su immagini in Docker Hub.
Accedi a Docker Hub
Nel prompt dei comandi, eseguire il comando seguente:
Nel terminale eseguire questo comando:
Command prompt
docker login
Usare il nome utente e la password creati quando è stato scaricato Docker nell'esercitazione precedente. È possibile visitare il sito Web di Docker Hub per reimpostare la password, se necessario.
Carica l'immagine in Docker Hub
Contrassegnare di nuovo (rinominare) l'immagine Docker sotto il nome utente ed eseguire il push in Docker Hub usando i comandi seguenti:
Command prompt
docker tag mymicroservice [YOUR DOCKER USERNAME]/mymicroservicedocker push [YOUR DOCKER USERNAME]/mymicroservice
Il comando Push carica l'immagine in Docker Hub. Questa operazione potrebbe richiedere del tempo.
Configura gli strumenti di Azure
Creare un account Azure
Se non si ha esperienza con Azure, è possibile creare un account gratuito. Se si ha un account esistente, è possibile ignorare questo passaggio.
Dopo l'installazione, aprire un nuovo prompt dei comandi e accedere all'account Azure eseguendo questo comando:
Dopo l'installazione, aprire un nuovo terminale e accedere all'account Azure eseguendo il comando seguente:
Command prompt
az login
Installa l'interfaccia della riga di comando per il servizio Azure Kubernetes
Kubernetes è una piattaforma di orchestrazione di contenitori. Un agente di orchestrazione è responsabile per l'esecuzione, la distribuzione, il ridimensionamento e la riparazione delle app costituite da una raccolta di contenitori. Il servizio Azure Kubernetes fornisce Kubernetes come servizio gestito.
Eseguire questo comando per installare gli strumenti della riga di comando per il servizio Azure Kubernetes:
Command prompt
az aks install-cli
Potresti ricevere avvisi con consigli per impostare le variabili PATH di sistema. Non sono necessari per questa esercitazione.
Crea risorse di Azure
Crea un gruppo di risorse
Viene usato un gruppo di risorse per organizzare un set di risorse correlate a una singola app.
Eseguire questo comando per creare un gruppo di risorse nell'area Stati Uniti occidentali:
Command prompt
az group create --name MyMicroserviceResources --location westus
Se si vuole usare un percorso diverso nel comando precedente, è possibile eseguire questo comando per visualizzare le aree disponibili nell'account e selezionarne una più vicina:
Command prompt
az account list-locations -o table
Se si vuole usare una sottoscrizione diversa per la sessione, è possibile ottenere un elenco di tutte le sottoscrizioni eseguendo questo comando:
Command prompt
az account list --all
È quindi possibile eseguire il comando seguente per impostare una sottoscrizione specifica per la sessione:
Command prompt
az account set -s NAME_OR_ID
Crea un cluster del servizio Azure Kubernetes
Eseguire questo comando per creare un cluster del servizio Azure Kubernetes nel gruppo di risorse:
È normale che il completamento di questo comando richieda alcuni minuti.
Command prompt
az aks create --resource-group MyMicroserviceResources --name MyMicroserviceCluster --node-count 1 --enable-addons http_application_routing --generate-ssh-keys
Eseguire il comando seguente per scaricare le credenziali da distribuire nel cluster del servizio Azure Kubernetes:
Command prompt
az aks get-credentials --resource-group MyMicroserviceResources --name MyMicroserviceCluster
Distribuisci in Azure
Torna alla directory dell'app
Dopo aver aperto un nuovo prompt dei comandi nel passaggio precedente, è necessario tornare alla directory in cui è stato creato il servizio.
Dopo aver aperto un nuovo terminale nel passaggio precedente, è necessario tornare alla directory in cui è stato creato il servizio.
Command prompt
cd MyMicroservice
Creare un file di distribuzione
Gli strumenti del servizio Azure Kubernetes usano un file .yaml per definire la modalità di distribuzione del contenitore.
Crea un file denominato deploy.yaml con questo comando:
Command prompt
touch deploy.yaml
Command prompt
fsutil file createnew deploy.yaml 0
Puoi quindi aprirlo nel tuo editor di testo preferito.
È quindi possibile aprirlo manualmente nell'editor di testo preferito o con questo comando:
Command prompt
open deploy.yaml
Command prompt
start deploy.yaml
Sostituire il contenuto di deploy.yaml nel codice seguente nell'editor di testo, assicurandosi di sostituire [ID DOCKER] con l'ID Docker effettivo.
Eseguire questo comando per distribuire il microservizio in base alle impostazioni in deploy.yaml:
Command prompt
kubectl apply -f deploy.yaml
Testa il servizio distribuito
Eseguire questo comando per visualizzare i dettagli del servizio distribuito:
Command prompt
kubectl get service mymicroservice --watch
Tra le altre cose, il comando precedente mostrerà l'indirizzo IP esterno in cui è disponibile il servizio (EXTERNAL-IP).
Utilizzando l'indirizzo IP esterno, apri una nuova finestra del browser e passa a http://[IL TUO INDIRIZZO IP ESTERNO]/weatherforecast.
Se EXTERNAL-IP è contrassegnato come <pending>, una nuova riga verrà visualizzata automaticamente dopo l'allocazione dell’indirizzo IP esterno.
Premi CTRL+C sul prompt dei comandi per terminare il comando kubectl get service.
Premere CTRL+C sul terminale per terminare il comando kubectl get service
Congratulazioni! È stata completata la distribuzione di un microservizio in Azure.
Dimensiona il servizio
Un vantaggio dell'uso di Kubernetes è la possibilità di aumentare facilmente la scalabilità di una distribuzione a più istanze per gestire il carico aggiuntivo. Attualmente è presente una sola istanza, quindi è possibile ridimensionare a due istanze.
Eseguire il comando seguente per ridimensionare il servizio fino a due istanze: