Crea ed esegui il deployment di un'app web containerizzata

Scopri come creare un'app web containerizzata utilizzando l'editor di Cloud Shell, testarla localmente e quindi eseguirne il deployment in un cluster Google Kubernetes Engine (GKE).


Per seguire le indicazioni dettagliate per questa attività direttamente nell'editor di Cloud Shell, fai clic su Procedura guidata:

Aiuto


Prima di iniziare

  1. Nella console Google Cloud, vai alla pagina del selettore progetto.

    Vai al selettore progetti

  2. Seleziona o crea un progetto Google Cloud.

Crea la tua app web

Utilizza l'editor di Cloud Shell come ambiente per creare la tua app. L'editor viene caricato preventivamente con gli strumenti necessari per lo sviluppo in Cloud.

Per creare la tua app:

  1. Avvia l'editor di Cloud Shell.

  2. Se viene richiesto di autorizzare Cloud Code a utilizzare le tue credenziali per effettuare una chiamata API Google Cloud, fai clic su Autorizza.

  3. Avvia il menu Cloud Code dalla barra di stato.

  4. Seleziona New Application (Nuova applicazione).

  5. Seleziona Applicazione Kubernetes come tipo di app di esempio.

  6. Dall'elenco delle app Kubernetes di esempio, seleziona Go:Hello World.

  7. Seleziona una cartella per il percorso della tua applicazione e fai clic su Crea nuova applicazione.

L'editor di Cloud Shell carica la tua app in una nuova area di lavoro. Dopo averla ricaricata, l'app è accessibile tramite la vista Explorer.

Testa la tua app in un cluster locale

Ora che hai creato la tua app, puoi eseguirla in un cluster Kubernetes locale in Cloud Shell:

  1. Per aprire un terminale Cloud Shell, fai clic su Terminale > Nuovo terminale.
  2. Per avviare il cluster minikube locale, dal prompt dei comandi del terminale esegui questo comando:

    minikube start
    

    La configurazione del cluster minikube potrebbe richiedere qualche minuto.

  3. Se viene richiesto di autorizzare Cloud Shell a effettuare chiamate API Cloud, fai clic su Autorizza.

    Una volta configurato il cluster, viene visualizzato un messaggio simile al seguente:

    Done! kubectl is now configured to
    use "minikube" cluster...
    

Dopo aver configurato il cluster locale, crea ed esegui questa app:

  1. Avvia il menu Cloud Code dalla barra di stato.
  2. Seleziona Esegui su Kubernetes.
  3. Se richiesto, conferma di voler utilizzare il contesto attuale di minikube.

    Questo processo richiede alcuni minuti e puoi visualizzare lo stato del deployment nella visualizzazione Sessioni di sviluppo.

    Se fai clic su nodi diversi nella visualizzazione Sessioni di sviluppo, vengono visualizzati i log relativi alla fase di deployment selezionata.

  4. Dopo aver completato la creazione e il deployment dell'app, trova il nodo di port forwarding per il servizio: nella visualizzazione Sessioni di sviluppo, espandi URL di port forwarding > servizio > go-hello-world-external.

  5. Per avviare l'app, tieni premuto il puntatore del mouse su go-hello-world-external e fai clic su Apri URL.

Modifica l'app

Per comprendere i componenti dell'app Hello World, consulta il diagramma nel file readme.md dell'app. In linea generale, l'app è costituita da:

  • Un'app web go-hello-world di base, main.go, che restituisce una risposta modello "È in esecuzione" a tutte le richieste ricevute.
  • Un servizio go-hello-world-external del bilanciatore del carico, hello.service.yaml, che espone l'app descrivendo un servizio Kubernetes.

Per modificare l'app:

  1. Modifica il tuo file main.go per stampare "Deployment eseguito nuovamente". Il file viene salvato automaticamente.
  2. Dedica un minuto a completare la creazione e il deployment della tua app e monitorane l'avanzamento mentre viene ricreato mediante la visualizzazione Sessioni di sviluppo.

  3. Al termine della creazione e del deployment dell'app, trova il nodo di port forwarding per il servizio: Sessioni di sviluppo > URL di port forwarding > servizio > go-hello-world-external.

  4. Per avviare l'app, tieni premuto il puntatore del mouse su go-hello-world-external e fai clic su Apri URL.

Visualizza i log delle app

Per analizzare l'app in esecuzione, utilizza il visualizzatore log per monitorarne i log:

  1. Avvia il visualizzatore log aprendo la tavolozza dei comandi (accessibile con Ctrl/Cmd+Shift+P oppure Visualizza > Tavolozza comandi) e poi esegui Cloud Code: View Logs.

    Questa visualizzazione consente di filtrare e sfogliare i log per l'app.

  2. Specifica i filtri Deployment per visualizzare i log dell'app, go-hello-world.

  3. Passa alla scheda con l'app che mostra il messaggio "Deployment eseguito nuovamente". Ricarica la pagina nel browser, quindi torna alla scheda Cloud Shell.

  4. Per visualizzare i log appena generati all'interno del visualizzatore log, fai clic su Aggiorna.

Crea un cluster Google Kubernetes Engine

Per creare un nuovo cluster Google Kubernetes Engine (GKE) in cui eseguire il deployment della tua app:

  1. Fai clic su Icona Cloud Code Cloud Code, quindi espandi la sezione Kubernetes.

  2. Fai clic su Aggiungi un cluster a KubeConfig, quindi su Google Kubernetes Engine nel menu Scelta rapida.

  3. Quando ti viene chiesto di attivare container.googleapis.com, fai clic su .

  4. Fai clic su + Crea un nuovo cluster GKE.

  5. Scegli Standard come tipo di cluster.

  6. Fai clic su Apri per consentire a Cloud Shell di aprire la console Google Cloud.

  7. Nella console Google Cloud, utilizza il progetto che hai creato, imposta la zona su us-central1-a e il nome del cluster su my-first-cluster.

  8. Fai clic su Crea. La creazione del cluster richiede alcuni minuti.

  9. Dopo aver creato il cluster, nel menu Scelta rapida, fai clic su Aggiorna la visualizzazione del cluster Kubernetes Aggiorna.

  10. Quando il nome del nuovo cluster viene visualizzato nell'elenco, fai clic sul nome del cluster. Il nuovo cluster viene aggiunto alla configurazione e configurato per essere il contesto attivo.

Esegui il deployment dell'app in un cluster GKE

Per eseguire il deployment della tua app nel nuovo cluster:

  1. Dal menu Cloud Code, accessibile tramite la barra di stato, seleziona Esegui su Kubernetes.

  2. Conferma il cluster appena creato come contesto per la tua app.

  3. Conferma l'opzione predefinita per il registro di immagini.

  4. Dedica un minuto a completare la creazione e il deployment della tua app e monitorane l'avanzamento mentre viene ricreato mediante la visualizzazione Sessioni di sviluppo.

  5. Dopo aver completato la creazione e il deployment dell'app, trova il nodo di port forwarding per il servizio: nella visualizzazione Sessioni di sviluppo, espandi URL di port forwarding > servizio > go-hello-world-external.

  6. Per avviare l'app, tieni premuto il puntatore del mouse su go-hello-world-external e fai clic su Apri URL.

Eseguire la pulizia

Per eliminare solo il cluster che hai creato per questa guida rapida:

  1. Tieni il puntatore sul nome del cluster e fai clic su Icona Apri nella console Google Cloud Apri nella console Google Cloud.
  2. Fai clic su Elimina e quindi su Elimina.

Per eliminare il progetto (e le risorse associate, inclusi eventuali cluster):

  1. Vai alla pagina Progetti nella console Google Cloud:

    Vai alla pagina Progetti

  2. Seleziona il progetto che hai creato per questa guida rapida e fai clic su Elimina.

  3. Digita l'ID progetto per confermare e fai clic su Chiudi.

    Il progetto verrà chiuso e ne verrà pianificato l'eliminazione.

Passaggi successivi