O Cloud Workstations oferece ambientes de desenvolvimento gerenciados no Google Cloud com segurança integrada e ambientes de desenvolvimento pré-configurados, mas personalizáveis. Em vez de exigir que os desenvolvedores instalem softwares e executem scripts de configuração, crie uma configuração de estação de trabalho que especifique seu ambiente de forma reproduzível. Todas as atualizações de uma configuração de estação de trabalho são aplicadas automaticamente às estações de trabalho na próxima vez que elas forem iniciadas. Os desenvolvedores acessam as estações de trabalho usando um ambiente de desenvolvimento integrado baseado em navegador, em vários editores de código locais (como o VSCode ou os ambientes de desenvolvimento do JetBrains, como o IntelliJ IDEA Ultimate e o PyCharm Professional) ou pelo SSH.
O Cloud Workstations usa os seguintes recursos do Google Cloud para gerenciar seus ambientes de desenvolvimento:
Os clusters de estações de trabalho definem um grupo de estações de trabalho em uma região específica e a rede VPC a que estão conectadas. Os clusters da estação de trabalho não estão relacionados aos clusters do Google Kubernetes Engine (GKE).
As configurações da estação de trabalho atuam como modelos para as estações de trabalho. A configuração da estação de trabalho define detalhes como o tipo de instância de máquina virtual (VM) da estação de trabalho, o armazenamento permanente, o ambiente de definição de imagem de contêiner, qual ambiente de desenvolvimento integrado ou editor de código usar e muito mais. Os administradores e as equipes da plataforma também podem usar as regras do Identity and Access Management (IAM) para conceder acesso a equipes ou a desenvolvedores individuais.
As estações de trabalho são ambientes de desenvolvimento pré-configurados que fornecem um ambiente de desenvolvimento integrado na nuvem, ferramentas de linguagem, bibliotecas e muito mais. As estações de trabalho podem ser iniciada ou interrompida sob demanda e executada em VMs do Compute Engine no seu projeto, com um disco permanente anexado para armazenar dados entre sessões.
Os administradores e as equipes da plataforma criam configurações de estação de trabalho que são compartilhadas com a equipe de desenvolvimento. Cada desenvolvedor cria uma estação de trabalho com base em uma configuração de estação de trabalho.
Ciclo de vida da estação de trabalho
As estações de trabalho são executadas em VMs efêmeras do Compute Engine e podem ser iniciadas ou interrompidas sob demanda para melhorar a economia de custos. Além disso, administradores e equipes de plataforma podem configurar um tempo limite de inatividade ou de execução na configuração da estação de trabalho para garantir que as estações de trabalho sejam desligadas quando não estiverem mais sendo usadas, o que reduz os custos. Ele também ajuda a garantir que todas as estações de trabalho sejam sincronizadas com as mudanças mais recentes aplicadas à configuração de cada estação de trabalho quando elas são reiniciadas.
Armazenamento permanente
Quando uma estação de trabalho é interrompida, a VM temporária é excluída com todos os dados de execução da estação de trabalho. Os administradores e as equipes da plataforma podem configurar um diretório principal permanente em uma configuração de estação de trabalho. Assim, todos os dados salvos no diretório principal são mantidos entre as sessões. Esse armazenamento persistente é implementado como um disco permanente que é anexado à VM da estação de trabalho quando a sessão começa e é desconectado quando a sessão termina.
Nomes de host DNS da estação de trabalho
Cada estação de trabalho recebe um nome de host exclusivo. Todas as estações de trabalho em um cluster de estações de trabalho compartilham um nome de domínio comum e específico do cluster. O cluster de estações de trabalho encaminha as solicitações para esse nome de host para a estação de trabalho em execução. O nome do host da estação de trabalho pode ser usado para se conectar à estação de trabalho pelo navegador.
Atualizações de configuração
As atualizações de uma configuração de estação de trabalho são aplicadas automaticamente às estações de trabalho quando cada estação de trabalho é reiniciada após a atualização da configuração. Por exemplo, a mudança do tipo de máquina em uma configuração de estação de trabalho muda o tipo de máquina das VMs usadas pelas estações de trabalho associadas na próxima reinicialização de cada estação. Os administradores e as equipes de plataforma podem configurar um tempo limite de inatividade ou tempo limite de execução na configuração da estação de trabalho para garantir que as estações de trabalho sejam sincronizadas com as atualizações de configuração em um período limitado.
Gemini Code Assist
O Gemini Code Assist é uma ferramenta de colaboração com tecnologia de IA do Google Cloud. Se você selecionar o Editor de base do Cloud Workstations (Code OSS for Cloud Workstations) ao criar a configuração da estação de trabalho, o Gemini poderá ajudar com o seguinte no editor de base:
Forneça orientações para ajudar a resolver problemas com seu código.
Gerar código para seu projeto.
Receba sugestões inline enquanto programa.
O Gemini fornece citações de fontes quando as sugestões citam diretamente uma fonte para ajudar você a obedecer a todos os requisitos de licença. Para mais informações sobre como usar o Gemini com o Cloud Workstations, consulte Programar com o Gemini Code Assist.
Saiba como e quando o Gemini do Google Cloud usa seus dados.
Segurança da cadeia de suprimentos de software
O Cloud Workstations é um dos componentes do Google Cloud que você pode usar para proteger sua cadeia de suprimentos de software. É possível usar as Cloud Workstations com outros produtos e recursos do Google Cloud para melhorar a postura de segurança de fluxos de trabalho e ferramentas de desenvolvedores, dependências de software, sistemas de CI/CD usados para criar e implantar software e ambientes de execução, como o Google Kubernetes Engine e o Cloud Run. Para saber mais, consulte Segurança da cadeia de suprimentos de software.