Questo tutorial mostra come eseguire il deployment di un'app di AI generativa in Cloud Run e proteggerla con Identity-Aware Proxy (IAP). IAP fornisce un livello di autorizzazione centrale per le applicazioni HTTPS di cui è stato eseguito il deployment su Cloud Run. Puoi utilizzare IAP per adottare criteri di controllo dell'accesso a livello di applicazione o di organizzazione anziché utilizzare firewall a livello di rete.
Tieni presente che, sebbene sia anche possibile utilizzare l'autenticazione manuale o di terze parti per proteggere un'app di cui è stato eseguito il deployment su Cloud Run, consigliamo di utilizzare IAP per volumi elevati o traffico multiregionale, per evitare interruzioni nella pubblicazione dell'app.
In questo tutorial, esegui il deployment di un'app che effettua chiamate all'API Gemini. L'app si basa sul framework Streamlit.
Prerequisiti
Questo tutorial presuppone che tu sia in grado di utilizzare i seguenti strumenti e framework:
Streamlit: Streamlit è un framework di app open source che ti consente di creare e implementare applicazioni di dati. Trasforma gli script di dati in app web utilizzando Python.
Git: per questo tutorial, utilizzi un repository Git per gestire il codice sorgente della tua app. Per saperne di più sull'utilizzo di Git, consulta la documentazione di Git.
Google Cloud servizi
Devi avere una conoscenza di base dei seguenti servizi Google Cloud :
AI generativa su Vertex AI: fornisce l'accesso agli LLM di Google in modo da poterli testare, ottimizzare ed eseguire il deployment per utilizzarli nelle tue applicazioni. Scopri di più sull'AI generativa su Vertex AI.
Cloud Run: una piattaforma di computing gestita che consente di eseguire il deployment e l'esecuzione di immagini container. Crea un servizio Cloud Run per eseguire il deployment della tua app. Scopri di più su Cloud Run.
Cloud Build: esegue le build su Google Cloud. Per questo tutorial, hai configurato un trigger Cloud Build automatico per creare ed eseguire il deployment della tua app su Cloud Run ogni volta che esegui il push dei commit nel repository Git. Scopri di più su Cloud Build.
Cloud Load Balancing: consente di distribuire il traffico su più istanze dell'app per ottenere la scalabilità. Crea un bilanciatore del carico delle applicazioni per distribuire il traffico alle istanze di backend dell'app ospitate su Cloud Run. Cloud Load Balancing è anche un prerequisito per IAP. Scopri di più su Cloud Load Balancing.
Identity-Aware Proxy (IAP): utilizzi IAP per creare un livello di autorizzazione centrale per proteggere l'app. IAP esegue controlli di autenticazione e autorizzazione che si estendono ai servizi Google Cloud collegati. IAP supporta e si integra perfettamente con Cloud Load Balancing, il che lo rende l'opzione di gestione della sicurezza più efficiente per questo tutorial.
Per saperne di più su IAP, consulta la panoramica di Identity-Aware Proxy.
Per capire come funziona IAP con Cloud Run, consulta la sezione Cloud Run di Come funziona IAP.
Nome di dominio valido
Inoltre, devi disporre di un nome di dominio valido per il provisioning di un certificato, necessario per configurare il bilanciatore del carico.
Pagine dei tutorial
Questo tutorial è composto dalle seguenti pagine:
Ogni pagina presuppone che tu abbia già completato le istruzioni delle pagine precedenti del tutorial.