Présentation de Cloud Workstations

Cloud Workstations fournit des environnements de développement gérés sur Google Cloud, avec une sécurité intégrée et des environnements de développement préconfigurés, mais personnalisables. Au lieu de demander à vos développeurs d'installer des logiciels et d'exécuter des scripts de configuration, vous pouvez créer une configuration de station de travail qui spécifie votre environnement de manière reproductible. Toute mise à jour d'une configuration de station de travail s'applique automatiquement aux stations de travail lors de leur prochain démarrage. Les développeurs accèdent aux stations de travail via un IDE basé sur un navigateur, à partir de plusieurs éditeurs de code locaux (tels que VSCode ou des IDE JetBrains comme IntelliJ IDEA Ultimate et PyCharm Professional) ou via SSH.

Cloud Workstations utilise les ressources Google Cloud suivantes pour gérer vos environnements de développement :

  • Les clusters de stations de travail définissent un groupe de stations de travail dans une région spécifique et le réseau VPC auquel elles sont associées. Les clusters de stations de travail ne sont pas liés aux clusters Google Kubernetes Engine (GKE).
  • Les configurations de stations de travail servent de modèles pour les stations de travail. La configuration de la station de travail définit des détails tels que le type d'instance de machine virtuelle (VM) de la station de travail, le stockage persistant, l'environnement de définition de l'image de conteneur, l'IDE ou l'éditeur de code à utiliser, etc. Les administrateurs et les équipes de plate-forme peuvent également utiliser des règles Identity and Access Management (IAM) pour accorder l'accès à des équipes ou à des développeurs individuels.
  • Les stations de travail sont des environnements de développement préconfigurés qui fournissent un IDE cloud, des outils de langage, des bibliothèques, etc. Les stations de travail peuvent être démarrées ou arrêtées à la demande, et s'exécutent sur des VM Compute Engine de votre projet, avec un disque persistant associé pour stocker les données entre les sessions.

Les administrateurs et les équipes de plate-forme créent des configurations de station de travail qu'ils partagent avec leur équipe de développement. Chaque développeur crée une station de travail basée sur une configuration de station de travail.

Concepts

Figure 1. Concepts de Cloud Workstations

Cycle de vie des stations de travail

Les stations de travail s'exécutent sur des VM Compute Engine éphémères, et peuvent être démarrées ou arrêtées à la demande pour réduire les coûts. De plus, les administrateurs et les équipes de plate-forme peuvent configurer un délai d'inactivité ou un délai d'exécution dans la configuration de la station de travail pour s'assurer que les stations de travail s'arrêtent lorsqu'elles ne sont plus utilisées, ce qui réduit les coûts. Cela permet également de s'assurer que toutes les stations de travail se synchronisent avec les dernières modifications appliquées à leur configuration lors de chaque redémarrage.

Stockage persistant

Lorsqu'une station de travail s'arrête, sa VM éphémère est supprimée, ainsi que toutes les données d'exécution de la station de travail. Les administrateurs et les équipes de plate-forme peuvent éventuellement configurer un répertoire d'accueil persistant sur une configuration de station de travail, de sorte que toutes les données enregistrées dans le répertoire d'accueil soient conservées entre les sessions. Ce stockage persistant est implémenté en tant que disque persistant associé à la VM de la station de travail au début de la session et dissocié à la fin de la session.

Noms d'hôte DNS des stations de travail

Chaque station de travail reçoit son propre nom d'hôte unique. Toutes les stations de travail d'un cluster de stations de travail partagent un nom de domaine commun spécifique au cluster, et le cluster de stations de travail se charge d'acheminer les requêtes pour ce nom d'hôte vers la station de travail en cours d'exécution. Le nom d'hôte de la station de travail peut être utilisé pour s'y connecter via votre navigateur.

Mises à jour liées à la configuration

Les mises à jour d'une configuration de station de travail sont automatiquement appliquées aux stations de travail lorsque chacune d'elles redémarre après la mise à jour de la configuration. Par exemple, si vous modifiez le type de machine dans une configuration de station de travail, le type de machine des VM utilisées par les stations de travail associées sera modifié au prochain redémarrage de chaque station de travail. Les administrateurs et les équipes de plate-forme peuvent configurer un délai d'inactivité ou un délai d'exécution dans la configuration de la station de travail pour s'assurer que les stations de travail se synchronisent avec les mises à jour de configuration dans un délai limité.

Gemini Code Assist

Gemini Code Assist est un collaborateur optimisé par l'IA dans Google Cloud. Si vous sélectionnez l'éditeur de base (Code OSS pour Cloud Workstations) de Cloud Workstations lorsque vous créez votre configuration de station de travail, Gemini peut vous aider à effectuer les opérations suivantes dans l'éditeur de base :

  • Fournir des conseils pour résoudre les problèmes liés à votre code

  • Générer du code pour votre projet

  • Recevez des suggestions intégrées pendant que vous codez.

Gemini fournit également des citations de la source lorsque les suggestions citent directement et longuement une source pour vous aider à respecter les exigences de licence. Pour en savoir plus sur l'utilisation de Gemini avec Cloud Workstations, consultez Coder avec l'assistance de Gemini Code Assist.

Découvrez comment et quand Gemini pour Google Cloud utilise vos données.

Sécurité sur la chaîne d'approvisionnement logicielle

Cloud Workstations est l'un des composants Google Cloud que vous pouvez utiliser pour protéger votre chaîne d'approvisionnement logicielle. Vous pouvez utiliser Cloud Workstations avec d'autres produits et fonctionnalités Google Cloud pour améliorer la stratégie de sécurité des workflows et des outils des développeurs, des dépendances logicielles, des systèmes de CI/CD utilisés pour créer et déployer vos logiciels, et des environnements d'exécution tels que Google Kubernetes Engine et Cloud Run. Pour en savoir plus, consultez Sécurité de la chaîne d'approvisionnement logicielle.

Étapes suivantes