Nesta página, descrevemos os parâmetros de configuração da estação de trabalho que permitem
personalizar o ambiente do Cloud Workstations, incluindo o
tipo de VM, o tamanho do disco inicial, a imagem do contêiner base e muito mais. Na API, esses parâmetros de configuração da estação de trabalho são chamados coletivamente de WorkstationConfig
.
Antes de usar esses parâmetros de configuração da estação de trabalho, familiarize-se com o seguinte:
Crie uma configuração inicial da estação de trabalho no console do Google Cloud.
Revise a lista de imagens de base pré-configuradas.
Leia sobre como personalizar sua imagem base e automatizar recriações de imagens de contêiner.
- Recurso: WorkstationConfig
- Host
- GceInstance
- GceShieldedInstanceConfig
- GceConfidentialInstanceConfig
- Acelerador
- PersistentDirectory
- GceRegionalPersistentDisk
- ReclaimPolicy
- EphemeralDirectory
- GcePersistentDisk
- (link em inglês)
- Representação JSON
- Contêiner
- CustomerEncryptionKey
- ReadinessCheck
- Métodos
Recurso: WorkstationConfig
Um recurso de configuração da estação de trabalho na API Cloud Workstations.
As configurações da estação de trabalho atuam como modelos para ela. A configuração da estação de trabalho define detalhes como o tipo de instância da máquina virtual (VM) da estação de trabalho, o armazenamento permanente, o ambiente que define a imagem do contêiner, o ambiente de desenvolvimento integrado ou o editor de código a ser usado e muito mais. Os administradores e as equipes de plataforma também podem usar as regras do Identity and Access Management (IAM) para conceder acesso a equipes ou desenvolvedores individuais.
Representação JSON |
---|
{ "name": string, "displayName": string, "uid": string, "reconciling": boolean, "annotations": { string: string, ... }, "labels": { string: string, ... }, "createTime": string, "updateTime": string, "deleteTime": string, "etag": string, "idleTimeout": string, "runningTimeout": string, "host": { object ( |
Campos | |
---|---|
name |
Identificador. Nome completo da configuração da estação de trabalho. |
displayName |
Opcional. Nome legível por humanos para a configuração desta estação de trabalho. |
uid |
Apenas saída. Um identificador exclusivo atribuído pelo sistema para a configuração da estação de trabalho. |
reconciling |
Apenas saída. Indica se a configuração da estação de trabalho está sendo atualizada para corresponder ao estado pretendido. |
annotations |
Opcional. Anotações especificadas pelo cliente. Um objeto com uma lista de pares |
labels |
Opcional. Rótulos que são aplicados à configuração da estação de trabalho e que também são propagados para os recursos subjacentes do Compute Engine. Um objeto com uma lista de pares |
createTime |
Apenas saída. Hora em que a configuração da estação de trabalho foi criada. Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
updateTime |
Apenas saída. Hora em que a configuração da estação de trabalho foi atualizada pela última vez. Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
deleteTime |
Apenas saída. Hora em que a configuração da estação de trabalho foi excluída de forma reversível. Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
etag |
Opcional. Soma de verificação calculada pelo servidor. Pode ser enviado em solicitações de atualização e exclusão para garantir que o cliente tenha um valor atualizado antes de continuar. |
idleTimeout |
Opcional. Número de segundos de espera antes de interromper automaticamente uma estação de trabalho depois que ela recebeu o último tráfego do usuário. Um valor de Uma duração em segundos com até nove dígitos fracionários, terminando em " |
runningTimeout |
Opcional. Número de segundos que uma estação de trabalho pode ficar em execução até ser desligada automaticamente. Recomendamos que as estações de trabalho sejam desligadas diariamente para reduzir os custos e para que as atualizações de segurança possam ser aplicadas após a reinicialização. Os campos Forneça uma duração encerrada por Aviso: um valor Uma duração em segundos com até nove dígitos fracionários, terminando em " |
host |
Opcional. Host do ambiente de execução para a estação de trabalho. |
persistentDirectories[] |
Opcional. Diretórios para persistir entre sessões de estação de trabalho. |
ephemeralDirectories[] |
Opcional. Diretórios temporários que não persistem entre sessões de estação de trabalho. |
container |
Opcional. Contêiner executado na inicialização para cada estação de trabalho usando essa configuração de estação de trabalho. |
encryptionKey |
Imutável. Criptografa recursos desta configuração de estação de trabalho usando uma chave de criptografia gerenciada pelo cliente (CMEK). Se especificado, o disco de inicialização da instância do Compute Engine e o disco permanente são criptografados com essa chave de criptografia. Se este campo não for definido, os discos serão criptografados usando uma chave gerada. As chaves de criptografia gerenciadas pelo cliente não protegem os metadados do disco. Se a chave de criptografia gerenciada pelo cliente for rotacionada, quando a instância da estação de trabalho for interrompida, o sistema tentará recriar o disco permanente com a nova versão da chave. Mantenha versões mais antigas da chave até que o disco permanente seja recriado. Caso contrário, os dados no disco permanente podem ser perdidos. Se a chave de criptografia for revogada, a sessão da estação de trabalho será interrompida automaticamente em até sete horas. Imutável após a criação da configuração da estação de trabalho. |
readinessChecks[] |
Opcional. Verificações de prontidão a serem executadas ao iniciar uma estação de trabalho usando esta configuração de estação de trabalho. Marque uma estação de trabalho como em execução somente depois que todas as verificações de prontidão especificadas retornarem códigos de status 200. |
replicaZones[] |
Opcional. Imutável. Especifica as zonas usadas para replicar os recursos da VM e do disco na região. Se definido, é necessário especificar exatamente duas zonas na região do cluster de estações de trabalho, por exemplo, Imutável após a criação da configuração da estação de trabalho. |
degraded |
Apenas saída. Indica se esse recurso está degradado. Nesse caso, pode ser necessária uma ação do usuário para restaurar a funcionalidade completa. Consulte também o campo |
conditions[] |
Apenas saída. Condições de status que descrevem o estado atual do recurso. |
enableAuditAgent |
Opcional. Define se a geração de registros |
disableTcpConnections |
Opcional. Desativa o suporte a conexões TCP simples na estação de trabalho. Por padrão, o serviço oferece suporte a conexões TCP por meio de um redirecionamento de websocket. A configuração dessa opção como verdadeira desativa esse redirecionamento, o que impede o uso de serviços que exigem conexões TCP simples, como SSH. Quando ativada, toda a comunicação precisa ocorrer por HTTPS ou WSS. |
Host
Host do ambiente de execução para uma estação de trabalho.
Representação JSON |
---|
{ // Union field |
Campos | |
---|---|
Campo de união config . Tipo de host a ser usado no ambiente de execução da estação de trabalho. config pode ser apenas de um dos tipos a seguir: |
|
gceInstance |
Especifica uma instância do Compute Engine como host. |
GceInstance
Um ambiente de execução que usa uma instância do Compute Engine.
Representação JSON |
---|
{ "machineType": string, "serviceAccount": string, "serviceAccountScopes": [ string ], "tags": [ string ], "poolSize": integer, "pooledInstances": integer, "disablePublicIpAddresses": boolean, "enableNestedVirtualization": boolean, "shieldedInstanceConfig": { object ( |
Campos | |
---|---|
machineType |
Opcional. O tipo de máquina a ser usado para instâncias de VM, por exemplo, |
serviceAccount |
Opcional. O endereço de e-mail da conta de serviço das VMs do Cloud Workstations criadas com essa configuração. Quando especificado, verifique se a conta de serviço tem a permissão Se você, como administrador, quiser usar Se ela não for definida, as VMs serão executadas com uma conta de serviço fornecida pelo serviço Cloud Workstations e a imagem precisará estar acessível publicamente. |
serviceAccountScopes[] |
Opcional. Escopos a serem concedidos ao |
tags[] |
Opcional. Tags de rede a serem adicionadas às VMs do Compute Engine que dão suporte às estações de trabalho. Essa opção aplica tags de rede às VMs criadas com essa configuração. Essas tags de rede permitem a criação de regras de firewall. |
poolSize |
Opcional. O número de VMs que o sistema deve manter inativas para que novas estações de trabalho possam ser iniciadas rapidamente para novos usuários. O padrão na API é |
pooledInstances |
Apenas saída. Número de instâncias disponíveis atualmente no pool para uma inicialização mais rápida da estação de trabalho. |
disablePublicIpAddresses |
Opcional. Quando definida como verdadeira, desativa os endereços IP públicos das VMs. Se você desativar endereços IP públicos, precisará configurar o Acesso privado do Google ou o Cloud NAT na sua rede. Se você usa o Acesso privado do Google e |
enableNestedVirtualization |
Opcional. Define se a virtualização aninhada será ativada nas VMs do Cloud Workstations criadas usando essa configuração de estação de trabalho. A virtualização aninhada permite executar instâncias de máquina virtual (VM) na sua estação de trabalho. Antes de ativar a virtualização aninhada, considere as seguintes considerações importantes. As instâncias do Cloud Workstations estão sujeitas às mesmas restrições que as instâncias do Compute Engine:
|
shieldedInstanceConfig |
Opcional. Um conjunto de opções de instância protegida do Compute Engine. |
confidentialInstanceConfig |
Opcional. Um conjunto de opções de instâncias de VMs confidenciais do Compute Engine. |
bootDiskSizeGb |
Opcional. O tamanho do disco de inicialização da VM em gigabytes (GB). O tamanho mínimo do disco de inicialização é de |
accelerators[] |
Opcional. Uma lista do tipo e do número de cartões aceleradores anexados à instância. |
disableSsh |
Opcional. Define se o acesso SSH à VM será desativado. |
GceShieldedInstanceConfig
Um conjunto de opções de instância protegida do Compute Engine.
Representação JSON |
---|
{ "enableSecureBoot": boolean, "enableVtpm": boolean, "enableIntegrityMonitoring": boolean } |
Campos | |
---|---|
enableSecureBoot |
Opcional. Indica se a Inicialização segura está ativada na instância. |
enableVtpm |
Opcional. Se a instância tem o vTPM ativado. |
enableIntegrityMonitoring |
Opcional. Indica se a instância tem monitoramento de integridade ativado. |
GceConfidentialInstanceConfig
Um conjunto de opções de instâncias de VMs confidenciais do Compute Engine.
Representação JSON |
---|
{ "enableConfidentialCompute": boolean } |
Campos | |
---|---|
enableConfidentialCompute |
Opcional. Indica se a instância tem a computação confidencial ativada. |
Accelerator
Uma placa aceleradora conectada à instância.
Representação JSON |
---|
{ "type": string, "count": integer } |
Campos | |
---|---|
type |
Opcional. Tipo de recurso do acelerador a ser anexado à instância, por exemplo, |
count |
Opcional. Número de cartões aceleradores expostos à instância. |
PersistentDirectory
Um diretório para persistir entre sessões de estação de trabalho.
Representação JSON |
---|
{ "mountPath": string, // Union field |
Campos | |
---|---|
mountPath |
Opcional. Local deste diretório na estação de trabalho em execução. |
Campo de união directory_type . Como um diretório permanente deve ser implementado. directory_type pode ser apenas de um dos tipos a seguir: |
|
gcePd |
Um PersistentDirectory com o suporte de um disco permanente do Compute Engine. |
GceRegionalPersistentDisk
Um diretório permanente respaldado por um disco permanente regional do Compute Engine. O campo persistentDirectories
é repetido, mas pode conter apenas uma entrada. Ele cria um disco permanente que é ativado na VM da estação de trabalho em /home
quando a sessão é iniciada e é desconectado quando a sessão termina. Se este campo estiver vazio, as estações de trabalho criadas com essa configuração não terão um diretório principal persistente.
Representação JSON |
---|
{
"sizeGb": integer,
"fsType": string,
"diskType": string,
"sourceSnapshot": string,
"reclaimPolicy": enum ( |
Campos | |
---|---|
sizeGb |
Opcional. A capacidade de GB de um diretório principal persistente para cada estação de trabalho criada com essa configuração. Precisa ficar vazio se Os valores válidos são |
fsType |
Opcional. Tipo de sistema de arquivos com o qual o disco precisa ser formatado. A imagem da estação de trabalho precisa ser compatível com esse tipo de sistema de arquivos. Precisa ficar vazio se |
diskType |
Opcional. O tipo de disco permanente para o diretório inicial. O padrão é |
sourceSnapshot |
Opcional. Nome do snapshot a ser usado como a origem do disco. Se definido, |
reclaimPolicy |
Opcional. Define se o disco permanente precisa ser excluído quando a estação de trabalho for excluída. Os valores válidos são: |
ReclaimPolicy
Valor que representa o que deve acontecer com o disco depois que a estação de trabalho for excluída.
Enums | |
---|---|
RECLAIM_POLICY_UNSPECIFIED |
Não use. |
DELETE |
Exclua o disco permanente ao excluir a estação de trabalho. |
RETAIN |
Mantenha o disco permanente ao excluir a estação de trabalho. Um administrador precisa excluir o disco manualmente. |
EphemeralDirectory
Um diretório temporário que não persiste entre sessões de estação de trabalho. Ele é criado recentemente em cada operação de inicialização da estação de trabalho.
Representação JSON |
---|
{ "mountPath": string, // Union field |
Campos | |
---|---|
mountPath |
Obrigatório. Local deste diretório na estação de trabalho em execução. |
Campo de união directory_type . Como um diretório temporário deve ser implementado. directory_type pode ser apenas de um dos tipos a seguir: |
|
gcePd |
Um EphemeralDirectory com suporte de um disco permanente do Compute Engine. |
GcePersistentDisk
O EphemeralDirectory é apoiado por um disco permanente do Compute Engine.
Representação JSON |
---|
{ "diskType": string, "sourceSnapshot": string, "sourceImage": string, "readOnly": boolean } |
Campos | |
---|---|
diskType |
Opcional. Tipo de disco a ser usado. O valor padrão é |
sourceSnapshot |
Opcional. Nome do snapshot a ser usado como a origem do disco. Precisa ficar vazio se |
sourceImage |
Opcional. Nome da imagem do disco a ser usada como a origem do disco. Precisa ficar vazio se |
readOnly |
Opcional. Indica se o disco é somente leitura. Se verdadeiro, o disco poderá ser compartilhado por várias VMs e será necessário definir |
Contêiner
Um contêiner do Docker.
Representação JSON |
---|
{ "image": string, "command": [ string ], "args": [ string ], "env": { string: string, ... }, "workingDir": string, "runAsUser": integer } |
Campos | |
---|---|
image |
Opcional. Uma imagem de contêiner do Docker que define um ambiente personalizado. O Cloud Workstations oferece várias imagens pré-configuradas, mas é possível criar suas próprias imagens de contêiner personalizadas. Se você estiver usando uma imagem particular, o campo |
command[] |
Opcional. Se definido, substitui o ENTRYPOINT padrão especificado pela imagem. |
args[] |
Opcional. Argumentos transmitidos ao ponto de entrada. |
env |
Opcional. Variáveis de ambiente transmitidas para o ponto de entrada do contêiner. Um objeto com uma lista de pares |
workingDir |
Opcional. Se definido, substitui o DIR padrão especificado pela imagem. |
runAsUser |
Opcional. Se definido, substitui o USER especificado na imagem pelo UID fornecido. |
CustomerEncryptionKey
Uma chave de criptografia gerenciada pelo cliente (CMEK) para os recursos do Compute Engine da configuração da estação de trabalho associada. Especifique o nome da chave de criptografia do Cloud KMS e a conta de serviço padrão. Recomendamos que você use uma conta de serviço separada e siga as práticas recomendadas do Cloud KMS.
Representação JSON |
---|
{ "kmsKey": string, "kmsKeyServiceAccount": string } |
Campos | |
---|---|
kmsKey |
Imutável. O nome da chave de criptografia do Google Cloud KMS. Por exemplo, |
kmsKeyServiceAccount |
Imutável. A conta de serviço a ser usada com a chave KMS especificada. Recomendamos que você use uma conta de serviço separada e siga as práticas recomendadas do KMS. Para mais informações, consulte Separação de tarefas e |
ReadinessCheck
Uma verificação de prontidão a ser realizada em uma estação de trabalho.
Representação JSON |
---|
{ "path": string, "port": integer } |
Campos | |
---|---|
path |
Opcional. O caminho para o qual a solicitação deve ser enviada. |
port |
Opcional. Porta para onde a solicitação deve ser enviada. |
Métodos |
|
---|---|
|
Cria uma nova configuração de estação de trabalho. |
|
Exclui a configuração de estação de trabalho especificada. |
|
Retorna a configuração da estação de trabalho solicitada. |
|
Busca a política de controle de acesso de um recurso. |
|
Retorna todas as configurações de estações de trabalho no cluster especificado. |
|
Retorna todas as configurações de estações de trabalho no cluster especificado em que o autor da chamada tem a permissão "workstations.workstation.create". |
|
Atualiza uma configuração de estação de trabalho atual. |
|
Define a política de controle de acesso no recurso especificado. |
|
Retorna permissões do autor da chamada no recurso especificado. |