Questo tutorial mostra come iniziare a utilizzare Compute Engine. Segui questo tutorial eseguendo il deployment di un'app web Java di Hello World in Compute Engine. Per iniziare a utilizzare App Engine, consulta l'ambiente standard di App Engine.
Obiettivi
- Utilizza Cloud Shell per scaricare un'app Hello World di esempio ed eseguirne il deployment.
- Esegui il deployment di un'app Hello World di esempio in una singola istanza Compute Engine.
Costi
In questo documento utilizzi i seguenti componenti fatturabili di Google Cloud:
Per generare una stima dei costi basata sull'utilizzo previsto,
utilizza il Calcolatore prezzi.
Prima di iniziare
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
In Google Cloud Console, apri l'app in Cloud Shell.
Cloud Shell fornisce l'accesso tramite riga di comando alle tue risorse cloud direttamente dal browser. Apri Cloud Shell nel browser e fai clic su Procedi per scaricare il codice di esempio e modificarlo nella directory dell'applicazione.
-
In Cloud Shell, configura l'interfaccia a riga di comando gcloud in modo da utilizzare il tuo nuovo progetto Google Cloud:
# Configure gcloud for your project gcloud config set project YOUR_PROJECT_ID
Esecuzione dell'app in Cloud Shell
In Cloud Shell, avvia un server web locale:
mvn -Plocal clean jetty:run-exploded -DprojectID=YOUR-PROJECT-ID
In Cloud Shell, fai clic su Anteprima web , e seleziona Anteprima sulla porta 8080. Si apre una nuova finestra con l'app in esecuzione.
Nel browser web vedi alcuni testi Hello World, pubblicati dalla tua macchina locale.
Quando è tutto pronto per andare avanti, interrompi il server web locale premendo Ctrl+C in Cloud Shell.
Distribuzione su una singola istanza
Questa sezione ti spiega come eseguire una singola istanza della tua app su Compute Engine.
Da Cloud Shell, puoi eseguire il deployment in una singola macchina virtuale (VM) di istanza Compute Engine che esegue la tua app.
Usa uno script di avvio per inizializzare un'istanza
È necessario un modo per indicare all'istanza di scaricare ed eseguire il codice. Un'istanza può avere uno script di avvio in esecuzione ogni volta che viene avviata o riavviata.
Uno script di avvio viene eseguito all'avvio di un'istanza.
Lo script di avvio esegue queste attività:
Installa Java 11 e ne imposta la versione predefinita.
Installa e configura Jetty.
Copia il file Java WAR dal bucket Cloud Storage in Jetty's
webapps
e lo rinominaroot.war
. Questo la rende il servlet principale, quindi non ha bisogno di essere nominato nell'URL.Installa l'agente Cloud Logging e lo configura per monitorare i log dell'app. Ciò significa che il logging configurato nei passaggi precedenti di questo tutorial viene caricato come se utilizzassi l'ambiente flessibile di App Engine.
Creare e configurare un'istanza di Compute Engine
Crea un'istanza Compute Engine:
gcloud compute instances create my-app-instance
Sostituisci
--image-family=debian-10
--image-project=debian-cloud
--machine-type=g1-small
--scopes userinfo-email,cloud-platform
--metadata-from-file startup-script=gce/startup-script.sh
--zone YOUR_ZONE
--tags http-serverYOUR_ZONE
con una zona di sviluppo, ad esempious-central1-a
. Per maggiori informazioni su aree geografiche e zone, consulta Area geografica e aree geografiche.Viene creata una nuova istanza, consente l'accesso ai servizi Google Cloud ed esegue lo script di avvio. Il nome dell'istanza è
my-app-instance
.Verifica lo stato di avanzamento della creazione dell'istanza:
gcloud compute instances get-serial-port-output my-app-instance --zone YOUR_ZONE
Una volta completato lo script di avvio, viene visualizzato il seguente messaggio:
startup-script: INFO Finished running startup scripts.
Crea una regola firewall per consentire il traffico nell'istanza:
gcloud compute firewall-rules create default-allow-http-80 \ --allow tcp:80 \ --source-ranges 0.0.0.0/0 \ --target-tags http-server \ --description "Allow port 80 access to http-server"
Ottieni l'indirizzo IP esterno dell'istanza:
gcloud compute instances list
Per visualizzare la tua app, inserisci questo URL nel browser:
http://YOUR_INSTANCE_IP
Sostituisci
YOUR_INSTANCE_IP
con l'indirizzo IP esterno dell'istanza.
Gestisci e monitora un'istanza
Puoi utilizzare Cloud Console per monitorare e gestire l'istanza.
- In the Google Cloud console, go to the VM instances page.
- In the list of virtual machine instances, click SSH in the row of the instance that you want to connect to.
- Per visualizzare tutti i log generati dalle risorse Compute Engine, vai alla pagina Esplora log.
Vai a Esplora log
Cloud Logging è configurato automaticamente per raccogliere i log da vari servizi comuni, tra cui
syslog
.
Esegui la pulizia
Per evitare che al tuo Account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo tutorial, elimina il progetto che contiene le risorse oppure mantieni il progetto ed elimina le singole risorse.
Elimina il progetto
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Eliminare le singole risorse
gcloud compute instances delete my-app-instance --zone=YOUR_ZONE --delete-disks=all gcloud compute firewall-rules delete default-allow-http-80
Passaggi successivi
Esplora architetture di riferimento, diagrammi, tutorial e best practice su Google Cloud. Dai un'occhiata al nostro Cloud Architecture Center.
Per altre risorse Java per la creazione delle tue app, consulta quanto segue:
- Gestisci e monitora il tuo deployment del gruppo di istanze in Compute Engine > gruppi di istanze.
- Gestisci la tua configurazione di bilanciamento del carico, comprese le mappe degli URL e i servizi di backend, in Servizi di rete > Bilanciamento del carico.
Scopri altri servizi Google Cloud.