Cloud Workstations gestisce risorse Google Cloud, ad esempio Compute Engine VM e dischi permanenti allo scopo di offrirti maggiore visibilità e controllo sui Google Cloud. Ad esempio, puoi configurare uno snapshot del disco pianificato che applicano criteri di backup per tutti i DP delle workstation. Analogamente, avere delle VM all'interno consente di accedere alle risorse e gestirle in modo rete VPC.
Il seguente diagramma illustra l'architettura di Cloud Workstations.
Cluster di workstation
Un cluster di workstation contiene e gestisce una raccolta di workstation in un regione cloud singola e VPC rete all'interno progetto. Ogni cluster di workstation include due componenti gestiti Google Cloud: un controller e un gateway.
Controller: gestisce il ciclo di vita della VM di Compute Engine e altre delle tue workstation all'interno del tuo progetto.
I controller usano l'API Compute Engine per gestire il ciclo di vita le risorse e utilizzare Private Service Connect per instradare il traffico alle workstation delle VM in esecuzione.
Gateway: riceve traffico dai client associati a un determinato account e inoltra il traffico all'istanza VM appropriata. Ciascuna di un cluster di workstation ha un nome di dominio univoco e ogni workstation può essere raggiunto in un sottodominio del dominio del cluster di workstation, ad esempio
$WORKSTATION_ID.$CLUSTER_ID.cloudworkstations.dev
.
Di seguito sono riportate altre funzionalità dei cluster di workstation:
Gli amministratori e i team della piattaforma creano cluster di workstation, che definiscono un gruppo di workstation in una determinata regione e la rete VPC a cui sono collegate.
I cluster di workstation non sono correlati a Google Kubernetes Engine (GKE) cluster.
Ogni cluster di workstation ha un controller dedicato connesso a un VPC all'interno del quale si trovano le workstation con Private Service Connect (e ciò non influisce sui limiti di peering VPC). Questo un controller gestisce le risorse delle workstation durante il loro ciclo di vita fornisce il traffico di rete in entrata e in uscita verso le workstation attraverso una rete gateway del cluster a livello di regione.
Ogni regione cloud richiede almeno un cluster di workstation.
Se necessario, è anche possibile attivare un'impostazione privata gateway, in modo che solo gli endpoint all'interno della tua rete privata hanno accesso Cloud Workstations.
Rete VPC
Quando crei un cluster di workstation, specifichi un progetto rete VPC per ospitare le risorse. Cloud Workstations quindi esegue il provisioning delle seguenti risorse nel progetto:
Private Service Connect: stabilisce una connessione tra il controller Cloud Workstations e il tuo VPC, per la creazione di risorse all'interno del tuo progetto.
Istanzia VM: una VM Compute Engine viene creata dinamicamente all'interno del progetto e della VPC dopo l'avvio di una workstation. Questa VM viene eliminata automaticamente al termine di una sessione utente o dopo un timeout della sessione configurabile.
VM Gateway: estrae il traffico client dal gateway del cluster di workstation, lo autentica e lo autorizza e lo inoltra al container.
Container: definisce gli strumenti preinstallati in una workstation, come l'IDE o l'editor di codice ed eventuali altri programmi o impostazioni come specificato la configurazione della workstation.
Cloud Workstations fornisce una serie di immagini di base preconfigurati con gli IDE e gli strumenti per il linguaggio più diffusi. Inoltre, gli amministratori e i team delle piattaforme possono personalizzare i propri ambienti creando e specificando immagini container personalizzate che contengono gli strumenti necessari per soddisfare le esigenze dei loro sviluppatori e alle esigenze aziendali. Questi le immagini container possono estendere l'immagine di base di Cloud Workstations possono essere nuove immagini container Linux personalizzate create dal team della piattaforma.
Disco permanente: un disco permanente collegato alla VM della workstation mounted alla cartella
/home
, che consente di archiviare dati e file al termine della sessione.
Ciclo di vita delle risorse
Cloud Workstations gestisce VM, immagini container e dischi permanenti da utilizzare come ambiente di runtime per ogni workstation. Configura le specifiche per queste risorse nella tua workstation configurazione.
All'avvio di una workstation, Cloud Workstations esegue le seguenti operazioni:
- Crea una VM.
- Estrae l'immagine del contenitore della workstation nella VM.
- La prima volta che la workstation viene avviata, crea un disco permanente
in modo che funga da directory
/home
della workstation. - Collega il disco permanente alla VM.
- Avvia il container sulla VM e monta il disco permanente nella
Directory
/home
nel container.
Al termine della sessione, Cloud Workstations elimina la VM, ma si scollega e conserva il disco permanente in modo che possa essere utilizzato in workstation future sessioni. Il servizio delle workstation conserva il disco finché la workstation non viene Viene eliminato anche il disco permanente, a meno che non facoltativamente configurati per essere conservati.
Pooling di risorse
Facoltativamente, gli amministratori e i team della piattaforma possono raggruppare VM e dischi permanenti per un avvio più rapido della workstation Workstation di dimensioni pool l'opzione di configurazione. Se specificato, il servizio raggruppa il numero specificato di VM e dischi permanenti e preleva l'immagine del contenitore sulla VM prima dell'assegnazione della workstation. Le VM e i dischi non assegnati nel pool vengono eliminati e ricreati automaticamente ogni 12 ore. Ciò consente un avvio più rapido della workstation volte rimuovendo il tempo di attesa per la creazione delle VM e il pull dell'immagine container sulla VM.
Se il pooling è abilitato, Cloud Workstations esegue le seguenti operazioni all'avvio di un workstation:
- Seleziona dal pool una VM in cui è già stato eseguito il pull dell'immagine container.
- La prima volta che viene avviata la workstation, seleziona un disco permanente dal pool.
- Collega il disco permanente alla VM.
- Avvia l'immagine container sulla VM e monta il disco permanente nella directory
/home
dell'immagine container. - Ricarica il pool creando una nuova VM e un disco permanente per sostituirli assegnati.
Al termine della sessione, Cloud Workstations elimina la VM, ma scollega e conserva il disco permanente in modo che possa essere utilizzato nelle sessioni future della workstation. Il servizio delle workstation conserva il disco fino all'eliminazione della workstation, momento in cui viene eliminato anche il disco permanente, a meno che non sia stato configurato per essere conservato.
Aggiornamenti delle immagini container
Poiché l'immagine container della workstation è pre-instradata alle VM in pool, all'immagine container effettuati nel repository di immagini remoto con lo stesso vengono selezionati solo dopo che tutte le VM in pool non sono state assegnate eliminati dopo 12 ore. A quel punto, vengono create nuove VM per reintegrare il pool ed eseguire il pull dell'immagine container aggiornata.
Per forzare l'aggiornamento del pool in modo da recuperare immediatamente gli aggiornamenti dell'immagine container,
amministratori possono impostare pool_size
su 0
e quindi reimpostarlo
pool_size
preferito. Nella console Google Cloud, disattiva
Avvio rapido delle workstation nella configurazione della workstation, salva il
predefinita, reimposta il numero che preferisci e salva di nuovo.
In alternativa, gli amministratori e i team della piattaforma possono aggiornare il tag immagine nella
container.image
nella configurazione della workstation, che forza l'aggiornamento del pool
il nuovo tag dell'immagine container.
Riduci i tempi di avvio della workstation con lo streaming di immagini
Cloud Workstations supporta lo streaming di immagini, che consente di ridurre il tempo di avvio della workstation riducendo il tempo di estrazione dell'immagine del contenitore della workstation.
Il flusso di immagini in Cloud Workstations in genere riduce il pull delle immagini container da minuti a secondi e i container delle workstation di solito viene avviata senza attendere il download dell'intera immagine.
Requisiti
Per utilizzare il flusso di immagini in streaming devi soddisfare i seguenti requisiti Cloud Workstations:
Devi abilitare l'API Container File System nel progetto host delle workstation.
Abilita l'API Container File System
In alternativa, puoi eseguire questo comando dell'interfaccia a riga di comando
gcloud
per abilita l'API Container File System nel progetto host delle workstation:gcloud services enable containerfilesystem.googleapis.com
Le immagini container devono essere archiviate in Artifact Registry.
Il repository Artifact Registry deve trovarsi nella stessa regione della regione delle stazioni di lavoro Cloud o in una regione con più aree geografiche che corrisponde alla regione in cui sono in esecuzione le stazioni di lavoro.
Devi specificare un account di servizio da utilizzare nella workstation configurazione.
Se il cluster si trova all'interno di un perimetro dei Controlli di servizio VPC, devi aggiungere regola di traffico in uscita consentendo al tuo account di servizio di accedere all'API Container File System su il progetto che ospita l'immagine container. Se utilizzi un preconfigurato IDE, devi aggiungere il progetto
cloud-workstations-images
(numero progetto662288601415
) alla lista consentita.
Limitazioni
Potresti non notare i vantaggi dello streaming di immagini durante la prima di un'immagine idonea. Tuttavia, dopo che il flusso di immagini ha memorizzato nella cache i futuri pull di immagini su una workstation traggono vantaggio dal flusso di immagini.
Si applicano altre limitazioni dello streaming di immagini GKE.