Trabalhar com o Google Cloud e o YAML do Kubernetes no Cloud Code para o Cloud Shell

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

O Cloud Code para Cloud Shell foi projetado para facilitar a configuração do Kubernetes e do Cloud Build ao inspecionar o esquema para valores válidos e de estrutura e fornecendo erros descritivos. O Cloud Code também inclui soluções prontas para uso relacionadas a esquemas comuns, conclusões inteligentes e documentação ao passar o cursor do mouse.

Arquivos de configuração YAML compatíveis

O Cloud Code também é compatível com conhecidas definições de recursos personalizados (CRDs, na sigla em inglês) do Kubernetes, como o Kubeflow, prontas para uso.

Como usar esquema personalizado

Com o Cloud Code, é possível fornecer seu próprio esquema de CRD com a configuração cloudcode.yaml.crdSchemaLocations no arquivo settings.json. É possível apontar para um arquivo local ou um URL. URLs que apontam para github.com são convertidos automaticamente em raw.githubusercontent.com.

Como extrair o esquema de um cluster

Quando você muda para um cluster que executa o Kubernetes v1.16 e posterior na visualização do Kubernetes, o Cloud Code extrai automaticamente o esquema de todos os CRDs instalados.

Como configurar com snippets

Os snippets prontos para uso no esquema YAML comum (usando Command/Ctrl+Space para visualizar opções) tornam mais fácil iniciar um novo arquivo YAML ou adicionar um arquivo existente sem erros, basta seguir as práticas recomendadas. Com o Cloud Code, é mais fácil trabalhar com campos repetitivos preenchendo as instâncias restantes depois de preencher o primeiro campo.

O Cloud Code oferece os seguintes snippets:

  • Anthos Config Management - Cluster
  • Anthos Config Management - Cluster Selector
  • Anthos Config Management - Config Management
  • Anthos Config Management - Namespace Selector
  • Cloud Build - Cloud Run deployment
  • Cloud Build - Docker container build
  • Cloud Build - GKE deployment
  • Cloud Build - GKE Skaffold deployment
  • Cloud Build - Go build
  • Cloud Build - Terraform plan + apply
  • Config Connector - BigQueryDataset
  • Config Connector - BigQueryTable
  • Config Connector - BigtableCluster
  • Config Connector - BigtableInstance
  • Config Connector - PubSubSubscription
  • Config Connector - PubSubTopic
  • Config Connector - RedisInstance
  • Config Connector - SpannerInstance
  • Kubernetes - ConfigMap
  • Kubernetes - Deployment
  • Kubernetes - Ingress
  • Kubernetes - Pod
  • Kubernetes - Secret
  • Kubernetes - Service
  • Migrate for Anthos - Export
  • Migrate for Anthos - PersistentVolumeClaim
  • Migrate for Anthos - StatefulSet
  • Skaffold - Bazel
  • Skaffold - Getting-started
  • Skaffold - Helm deployment
  • Skaffold - Kaniko

Como concluir com contexto

Com base no esquema atual, o Cloud Code fornece conclusões contextuais e documentações relevantes para você escolher a opção certa.

Conclusões contextuais do esquema do Kubernetes

Como validar o esquema YAML

O Cloud Code é compatível com a validação de esquema sinalizando tags e valores inválidos nos arquivos YAML e sugerindo correções, quando possível.

Valor do campo de nome sublinhado em vermelho para destacar um valor inválido de "1234". Estados de texto ao passar o cursor: "Tipo incorreto. String esperada."

Como descobrir documentações passando o cursor do mouse

O Cloud Code exibe a documentação relevante quando você mantém o ponteiro sobre um valor no esquema.

Informações de documentação ao manter o ponteiro sobre um valor no esquema

Como acessar definições de recurso

Para ver as definições de um recurso, clique com o botão direito nele e escolha Go to Definition ou Peek Definition.

Como aplicar um arquivo YAML

Para aplicar uma mudança de configuração usando o arquivo atual, abra a paleta de comando (pressione Ctrl/Cmd+Shift+P ou clique em Ver > Palette de comandos) e execute Cloud Code: aplicar o arquivo JSON/YAML atual aos recursos implantados pelo K8s.

Esse comando exibe uma visualização de diferença para você revisar as alterações. Clique em Aplicar quando solicitado a aplicar essa alteração. Isso executa kubectl apply -f.

Como visualizar diferenças entre arquivos YAML

Para ver as diferenças entre um arquivo YAML no controle de origem e um arquivo YAML implantado, abra a paleta de comandos (pressione Ctrl/Cmd+Shift+P ou clique em View > Command Palette) e execute Cloud Code: Diff Current JSON/YAML File with K8s Deployed Resource.

Como executar uma simulação de um arquivo YAML

Para executar uma simulação da configuração e verificar a validade dela, abra a paleta de comandos (pressione Ctrl/Cmd+Shift+P ou clique em Ver > Paleta de comandos) e execute Cloud Code: configuração atual de simulação para validação no lado do servidor e Cloud Code: configuração atual de teste da validação do cliente.

Isso executa kubectl apply -f dry-run=server (ou kubectl apply -f dry-run=client, para a opção "Cliente") e exibe uma validação bem-sucedida (ou uma mensagem de erro, se o arquivo de configuração não for válido) como uma notificação toast. de dados.

No exemplo a seguir, a validação de simulação no servidor do arquivo de configuração, hello.deployment.yaml, retorna um erro ao tentar criar uma implantação porque o namespace especificado, random-namespace não t.

A validação de simulação no servidor falha em "hello.deployment.yaml" com uma mensagem de erro exibida como um aviso. Os detalhes do erro são encontrados no canal de saída. O namespace "random-namespace" não existe

Como trabalhar com secrets

Usar mapas de configuração e secrets é uma parte essencial do trabalho com o Kubernetes. Para ver o contexto de um secret base64 com o Cloud Code, mantenha o ponteiro sobre o secret para decodificá-lo.

Decodificar o secret mantendo o ponteiro sobre ele