arrow_back

Configurazione di una rete Google Cloud: Challenge Lab

Partecipa Accedi
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Configurazione di una rete Google Cloud: Challenge Lab

Lab 1 ora 30 minuti universal_currency_alt 5 crediti show_chart Intermedio
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP314

Laboratori autogestiti Google Cloud

Panoramica

In un Challenge Lab ti vengono presentati uno scenario e un insieme di attività. Anziché seguire le istruzioni dettagliate, utilizzerai le competenze apprese dai lab nella Quest per capire come completare le attività autonomamente. Tramite un sistema di valutazione automatico (visibile in questa pagina), riceverai un feedback che ti consentirà di capire se hai completato le attività in modo corretto.

Quando partecipi a un Challenge Lab non ricevi alcuna formazione sui concetti di Google Cloud. Dovrai estendere le competenze che hai appreso, ad esempio modificare i valori predefiniti e leggere ed esaminare i messaggi di errore per correggere i tuoi errori.

Per ottenere un punteggio del 100% devi completare tutte le attività correttamente nel tempo stabilito.

Questo lab è consigliato per gli studenti che si sono iscritti al corso con badge delle competenze Set up a Google Cloud Network. Accetti la sfida?

Configurazione

Prima di fare clic sul pulsante Avvia lab

Leggi le seguenti istruzioni. I lab sono a tempo e non possono essere messi in pausa. Il timer si avvia quando fai clic su Avvia lab e ti mostra per quanto tempo avrai a disposizione le risorse Google Cloud.

Con questo lab pratico avrai la possibilità di completare le attività in prima persona, in un ambiente cloud reale e non di simulazione o demo. Riceverai delle nuove credenziali temporanee che potrai utilizzare per accedere a Google Cloud per la durata del lab.

Per completare il lab, avrai bisogno di:

  • Accesso a un browser internet standard (Chrome è il browser consigliato).
Nota: utilizza una finestra del browser in incognito o privata per eseguire questo lab. Ciò evita eventuali conflitti tra il tuo account personale e l'account Studente, che potrebbero causare addebiti aggiuntivi sul tuo account personale.
  • È ora di completare il lab: ricorda che, una volta iniziato, non puoi metterlo in pausa.
Nota: se hai già un account o un progetto Google Cloud personale, non utilizzarlo per questo lab per evitare addebiti aggiuntivi al tuo account.

Scenario della sfida

logo Cymbal Direct

Lavori come cloud engineer per Cymbal Direct, un rivenditore online "direct-to-consumer" di calzature e abbigliamento. Cymbal Direct sta crescendo rapidamente e, nell'ambito della sua strategia di ampliamento, ha acquisito di recente una nuova società, Antern. Antern è un negozio di e-commerce attivo con una grande quantità di dati che, se opportunamente integrati nell'ambiente cloud esistente, saranno incredibilmente utili per scalare ulteriormente l'attività e raggiungere più clienti. Nell'ambito di questa acquisizione, Cymbal Direct intende spostare l'infrastruttura e i carichi di lavoro esistenti di Antern da on-prem a Google Cloud.

Antern dispone delle seguenti risorse che devono essere migrate, copiate o ricreate nell'ambiente cloud esistente di Cymbal Direct:

  • Un database PostgreSQL (in esecuzione su una macchina virtuale) che deve essere migrato a Cloud SQL per PostgreSQL
  • Codice dell'applicazione per microservizi containerizzati di cui eseguire il deployment su GKE (con problemi di affidabilità segnalati durante i test e che devono essere risolti)
  • Una rete VPC con due subnet e firewall che devono essere creati per collegare nuove risorse
  • Utenti IAM in vari progetti a cui occorre concedere le autorizzazioni e i ruoli appropriati su risorse specifiche

Il tuo compito è aiutare Cymbal Direct a raggiungere questi obiettivi.

Attività 1: esegui la migrazione di un database PostgreSQL standalone in un'istanza Cloud SQL per PostgreSQL

Antern utilizzava un database PostgreSQL in esecuzione su una VM on-prem per archiviare gli ordini del negozio di e-commerce. Nell'ambito della strategia di acquisizione, Cymbal ha richiesto la migrazione di questo database in Cloud SQL per PostgreSQL utilizzando Database Migration Service. L'esecuzione del database su Cloud SQL consente a Cymbal di ottenere tutti i vantaggi operativi di PostgreSQL, con un livello maggiore di disponibilità, stabilità e sicurezza aziendale.

In questa attività, devi eseguire la migrazione del database PostgreSQL standalone orders in esecuzione sulla macchina virtuale antern-postgresql-vm in modo da trasferirlo su un'istanza Cloud SQL per PostgreSQL utilizzando un job di migrazione continua di Database Migration Service e la connettività mediante peering VPC.

Prepara il database PostgreSQL standalone per la migrazione

Nota: per la prima attività, devi accedere al progetto Antern con le credenziali di proprietario Antern.

In questa attività secondaria devi preparare il database PostgreSQL standalone in modo che soddisfi i requisiti per la migrazione mediante Database Migration Service.

Per portare a termine questa attività secondaria, devi completare questi passaggi:

  1. Abilita le API Google Cloud richieste per Database Migration Service.

Database Migration Service richiede l'abilitazione dell'API Database Migration e dell'API Service Networking per funzionare. Devi abilitare queste API per il progetto.

  1. Esegui l'upgrade dei database di destinazione sulla macchina virtuale antern-postgresql-vm con l'estensione di database pglogical.

Devi installare e configurare l'estensione di database pglogical nel database PostgreSQL standalone sulla VM dell'istanza di computing antern-postgresql-vm. Il pacchetto dell'estensione di database pglogical da installare si chiama postgresql-13-pglogical.

Per completare la configurazione dell'estensione di database pglogical, devi modificare il file di configurazione PostgreSQL /etc/postgresql/13/main/postgresql.conf in modo da abilitare l'estensione di database pglogical. Inoltre, devi modificare il file /etc/postgresql/13/main/pg_hba.conf in modo da concedere l'accesso da tutti gli host.

  1. Crea un utente dedicato per la migrazione nel database standalone.

Il nuovo utente che crei nell'installazione PostgreSQL standalone sulla macchina virtuale antern-postgresql-vm deve essere configurato utilizzando il nome utente e la password seguenti:

  • Nome utente per la migrazione:
  • Password dell'utente per la migrazione: DMS_1s_cool!
  1. Concedi all'utente le autorizzazioni e i privilegi richiesti per la migrazione dei database.

Database Migration Service richiede che l'utente per la migrazione disponga di privilegi per le relazioni e gli schemi specifici dei database di destinazione da migrare, in questo caso i database orders e postgres.

  1. Database Migration Service richiede che tutte le tabelle da migrare abbiano una chiave primaria. Dopo aver concesso i privilegi richiesti all'utente, esegui quanto riportato in basso per aggiungere una chiave primaria alla tabella inventory_items e chiudere psql.
ALTER TABLE public.inventory_items ADD PRIMARY KEY(id); \q exit Nota: i prerequisiti dettagliati per la migrazione di un database PostgreSQL standalone in Cloud SQL per PostgreSQL sono forniti nei link dei suggerimenti all'interno della GUI di Cloud Console per Database Migration Service. Se hai bisogno di aiuto sui passaggi dettagliati da completare, fai riferimento alla documentazione oppure consulta i passaggi dettagliati nel lab di migrazione che fa parte di questo badge delle competenze.

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Prepara un database PostgreSQL standalone per la migrazione in Cloud SQL per PostgreSQL.

Esegui la migrazione del database PostgreSQL standalone in un'istanza Cloud SQL per PostgreSQL

In questa attività secondaria devi eseguire la migrazione mediante Database Migration Service.

Per portare a termine questa attività secondaria, devi completare questi passaggi:

  1. Crea un nuovo profilo di connessione di Database Migration Service per il database PostgreSQL standalone utilizzando le credenziali dell'utente per la migrazione creato in precedenza.
  • Nome utente:
  • Password: DMS_1s_cool!
  • Regione:

Devi configurare il profilo di connessione utilizzando l'indirizzo IP interno dell'istanza di computing di origine.

  1. Crea un nuovo job continuo di Database Migration Service.
  • In Nome job di migrazione, inserisci
  • Per Motore del database di origine seleziona PostgreSQL.
  • Per Motore del database di destinazione, seleziona Cloud SQL per PostgreSQL.
  • Regione di destinazione :

Nell'ambito della configurazione del job di migrazione, assicurati di specificare le seguenti proprietà per l'istanza Cloud SQL di destinazione:

  • L'ID istanza di destinazione deve essere impostato su
  • La Password per l'istanza migrata deve essere impostata su supersecret!
  • La Versione database deve essere impostata su Cloud SQL per PostgreSQL 13
  • Scegli solo la versione Enterprise di Cloud SQL.
  • La Regione deve essere impostata su
  • Per Connessioni, devono essere impostati sia IP pubblico che IP privato.
  • Per l'IP privato utilizza un intervallo IP allocato automaticamente e fai clic su Alloca e connetti.
  • Seleziona una forma di macchina standard con 4 vCPU, 16 GB.
  • Per Tipo di archiviazione, usa SSD.
  • Imposta la capacità di archiviazione su 10 GB

Per Metodo di connettività, devi usare Peering VPC con la rete VPC predefinita.

  1. Testa e poi avvia il job continuo di migrazione.
Nota: se non prepari correttamente l'ambiente PostgreSQL di origine, la migrazione potrebbe non riuscire del tutto oppure alcune tabelle individuali potrebbero non essere migrate. Se mancano alcune tabelle, ma la migrazione sembra funzionare lo stesso, verifica di aver configurato correttamente tutte le tabelle del database di origine.

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Esegui la migrazione di un database PostgreSQL standalone in un'istanza Cloud SQL per PostgreSQL.

Promuovi un'istanza Cloud SQL in modo che sia standalone per la lettura e la scrittura dei dati

  • In questa attività, devi completare la migrazione mediante la promozione dell'istanza Cloud SQL per PostgreSQL in modo che sia standalone.
  • Una volta completata la promozione, lo stato del job viene aggiornato in Completato.

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Promuovi una replica di migrazione Cloud SQL a istanza standalone.

Nota: ai fini del lab, non è necessario attendere il completamento della migrazione per promuoverla a istanza standalone. Se l'azione è disponibile nella console, puoi eseguirla.

Attività 2: aggiorna le autorizzazioni e aggiungi ruoli IAM agli utenti

Ora che il database è stato migrato nell'istanza Cloud SQL per PostgreSQL, devi aggiornare i ruoli utente tramite IAM per i diversi membri dei team Antern e Cymbal. In particolare, concedi l'accesso utente come editor Antern al database Cloud SQL, l'accesso amministrativo come proprietario Cymbal per avere il controllo completo delle risorse Cloud SQL e l'accesso come editor Cymbal per disporre delle autorizzazioni come editor nel progetto.

Nota: per questa attività, devi accedere al progetto Antern con le credenziali di proprietario Antern. Suggerimento: concedi i ruoli desiderati agli utenti richiesti utilizzando Cloud IAM.
  1. Concedi all'utente con accesso come editor Antern il ruolo Cloud SQL Instance User per il database Cloud SQL. Il nome utente è .

    • Vai al database Cloud SQL che hai creato. Nella sezione Utenti, aggiungi l'account utente con accesso come editor Antern al database che hai creato. Usa l'autenticazione Cloud IAM e, per l'entità, usa il nome utente in alto.
  2. Concedi all'utente con accesso come proprietario Cymbal il ruolo Cloud SQL Admin per il database Cloud SQL. Il nome utente è .

    • Vai al database Cloud SQL che hai creato. Nella sezione Utenti, aggiungi l'account utente con accesso come proprietario Cymbal al database che hai creato. Usa l'autenticazione Cloud IAM e, per l'entità, usa il nome utente in alto.
  3. Cambia il ruolo utente dell'editor Cymbal da Viewer a Editor. Il nome utente è .

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Aggiorna le autorizzazioni e aggiungi i ruoli IAM agli utenti

Attività 3: crea le reti e i firewall

Nell'ambito della strategia di acquisizione, nel progetto Cymbal devi ricreare la rete VPC per collegare le risorse internamente. In particolare, devi creare una rete VPC con due subnet e firewall per aprire le connessioni tra le risorse. Inoltre, su questa rete il team dovrà essere in grado di connettersi a macchine Linux e Windows utilizzando SSH e RDP, nonché diagnosticare i problemi di comunicazione di rete tramite ICMP.

In questa attività devi creare una rete VPC e regole firewall che soddisfino questi requisiti.

Nota: per questa attività, devi accedere al progetto Cymbal con le credenziali di proprietario Cymbal.

Crea una rete VPC con due subnet

  1. Crea una rete VPC denominata con due subnet: e . Usa una modalità di routing dinamico Regionale.

  2. Per imposta la regione su .

    • Imposta il Tipo di stack IP su IPv4 (stack singolo)
    • Imposta l'intervallo IPv4 su 10.10.10.0/24
  3. Per imposta la regione su .

    • Imposta il Tipo di stack IP su IPv4 (stack singolo)
    • Imposta l'intervallo IPv4 su 10.10.20.0/24

Crea regole firewall per la rete VPC

  1. Crea una regola firewall denominata .

    • Per la rete, usa .
    • Imposta la priorità su 65535, il traffico su In entrata e l'azione su Consenti.
    • Le destinazioni devono essere impostate su Tutte le istanze nella rete e gli intervalli IPv4 su 0.0.0.0/24.
    • Imposta il protocollo su TCP e la porta su 22.
  2. Crea una regola firewall denominata .

    • Per la rete, usa .
    • Imposta la priorità su 65535, il traffico su In entrata e l'azione su Consenti.
    • Le destinazioni devono essere impostate su Tutte le istanze nella rete e gli intervalli IPv4 su 0.0.0.0/24.
    • Imposta il protocollo su TCP e la porta su 3389.
  3. Crea una regola firewall denominata .

    • Per la rete, usa .
    • Imposta la priorità su 65535, il traffico su In entrata e l'azione su Consenti.
    • Le destinazioni devono essere impostate su Tutte le istanze nella rete e gli intervalli IPv4 su 0.0.0.0/24.
    • Imposta il protocollo su icmp.

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Crea reti e firewall

Attività 4: risolvi i problemi di un cluster GKE non funzionante e correggilo

Nota: per questa attività, devi accedere al progetto Cymbal con le credenziali di proprietario Cymbal.

Dopo aver eseguito il deployment del cluster GKE del sito di e-commerce, il team ti comunica che ci sono alcuni problemi noti che devono essere risolti per poter usare il cluster GKE. Hanno trovato tre bug che devono essere risolti:

  • Bug 1: latenza eccessiva del servizio frontend.
  • Bug 2: le valutazioni sono diventate obsolete.
  • Bug 3: bug di arresto anomalo nel servizio di suggerimenti.

Nell'ambito della strategia di acquisizione, il tuo compito prevede la correzione di . Gli altri tecnici del team hanno fornito per ciascuno dei problemi riscontrati alcune informazioni aggiuntive che puoi utilizzare per risolvere il problema.

Suggerimenti:

  • Bug 1: visita l'IP esterno dell'applicazione demo per vedere se ci sono cambiamenti visibili. Puoi anche usare le dashboard di monitoraggio per visualizzare le metriche associate a ciascun servizio.
  • Bug 2: le valutazioni dei prodotti sono gestite dal "servizio di valutazione", ospitato su Google AppEngine. I dati delle valutazioni vengono aggiornati richiamando periodicamente un endpoint API che raccoglie tutti i nuovi punteggi delle valutazioni inviati di recente per ciascun prodotto, quindi viene calcolata la nuova valutazione. Cerca di capire se il servizio di valutazione funziona normalmente analizzando i log del servizio AppEngine. Un altro membro del team ha indicato che il motivo potrebbe dipendere da un problema nel file main.py.
  • Bug 3: naviga nel sito web fino a quando non rilevi un problema, poi usa Cloud Logging per visualizzare i log esportati da ciascun servizio. Un altro membro del team ha indicato che questo bug di arresto anomalo potrebbe essere dovuto a una fase di conversione dei numeri interi nel servizio.

Crea un sink di log BigQuery

Prima di correggere il problema di base, ti è stato chiesto di creare un sink di log per inviare gli errori associati al servizio non funzionante. Devi quindi utilizzare IAM per concedere agli utenti Antern livelli di accesso diversi a BigQuery, in modo che possano visualizzare e interagire con il set di dati.

  1. Usa Esplora log per analizzare l'app GKE in esecuzione ed esaminare il servizio che presenta errori. Suggerimento: cerca i log con gravità ERROR.

  2. Una volta identificati i log degli errori del servizio, crea un sink per inviare i log a BigQuery.

    • Denomina il sink
    • Per la destinazione, crea un set di dati BigQuery denominato gke_app_errors_sink con località impostata su us (più regioni negli Stati Uniti).
    • Nel Filtro di inclusione, assicurati di includere resource.type, e severity.
Nota: se ricevi un messaggio di errore di autorizzazione, assicurati di accedere al progetto Cymbal con credenziali di proprietario Cymbal.
  1. Concedi all'utente con accesso come editor Antern il ruolo BigQuery Data Viewer per il progetto. Il nome utente è .

  2. Concedi all'utente con accesso come proprietario Antern il ruolo BigQuery Admin per il progetto. Il nome utente è .

Fai clic su Controlla i miei progressi per verificare l'obiettivo. Crea un sink di log BigQuery

Correggi il cluster GKE

Dopo aver creato un sink di log in BigQuery per gli errori del servizio, alcuni tecnici del team hanno potuto controllarli e hanno individuato i passaggi corretti per risolvere il problema. In questa attività devi scaricare il codice della soluzione ed eseguirlo per correggere il servizio nel cluster GKE.

  1. Connettiti al cluster GKE cloud-ops-sandbox ed esegui i comandi in basso per correggere l'errore. Rispondi alle domande di verifica quando viene chiesto.
git clone --depth 1 --branch csb_1220 https://github.com/GoogleCloudPlatform/cloud-ops-sandbox.git cd cloud-ops-sandbox/sre-recipes ./sandboxctl sre-recipes restore {{{ cymbal_project.startup_script.recipe_number | recipe number }}} ./sandboxctl sre-recipes verify {{{ cymbal_project.startup_script.recipe_number | recipe number }}}
  1. Verifica che il negozio di e-commerce funzioni correttamente.

Complimenti!

Hai completato una giornata di lavoro come Cloud Engineer! Hai migrato un database PostgreSQL a un'istanza Cloud SQL per PostgreSQL, hai creato una rete VPC con subnet e firewall, hai risolto i problemi relativi a un cluster GKE e hai concesso agli utenti IAM l'autorizzazione per più progetti.

Badge delle competenze per eseguire il deployment e la gestione degli ambienti cloud

Guadagna il tuo prossimo badge delle competenze

Questo self-paced lab fa parte della Quest per ottenere il badge delle competenze per eseguire il deployment e la gestione degli ambienti cloud con Google Cloud. Il completamento di questo corso con badge delle competenze ti permette di ottenere il badge indicato in precedenza come riconoscimento per l'obiettivo raggiunto. Condividi il badge sul tuo CV e sulle piattaforme social e annuncia il risultato che hai raggiunto utilizzando #GoogleCloudBadge.

Formazione e certificazione Google Cloud

… per utilizzare al meglio le tecnologie Google Cloud. I nostri corsi ti consentono di sviluppare competenze tecniche e best practice per aiutarti a metterti subito al passo e avanzare nel tuo percorso di apprendimento. Offriamo vari livelli di formazione, dal livello base a quello avanzato, con opzioni di corsi on demand, dal vivo e virtuali, in modo da poter scegliere il più adatto in base ai tuoi impegni. Le certificazioni ti permettono di confermare e dimostrare le tue abilità e competenze relative alle tecnologie Google Cloud.

Ultimo aggiornamento del manuale: 8 marzo 2024 Ultimo test del lab: 8 marzo 2024

Copyright 2024 Google LLC Tutti i diritti riservati. Google e il logo Google sono marchi di Google LLC. Tutti gli altri nomi di società e prodotti sono marchi delle rispettive società a cui sono associati.