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

O Cloud Code para Cloud Shell foi projetado para tornar o Kubernetes e o Cloud Build configuração mais fácil, examinando o esquema para a estrutura e os valores válidos e fornecer 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 dá suporte a recursos populares do Kubernetes (CRDs), como Kubeflow, pronto para uso.

Usar esquema personalizado

Com o Cloud Code, é possível fornecer seu próprio esquema de CRD com os A configuração cloudcode.yaml.crdSchemaLocations na sua settings.json . É possível apontar para um arquivo local ou um URL. Os URLs que direcionam o usuário para github.com são convertido automaticamente para raw.githubusercontent.com.

Extrair esquema de um cluster

Quando você alterna para um cluster que executa o Kubernetes v1.16 e posteriores Kubernetes, o Cloud Code extrai automaticamente o esquema de todos os CRDs instalados.

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. Cloud Code facilita o trabalho com campos repetitivos, de instâncias após o preenchimento do 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 to Containers - Export
  • Migrate to Containers - PersistentVolumeClaim
  • Migrate to Containers - StatefulSet
  • Skaffold - Bazel
  • Skaffold - Getting-started
  • Skaffold - Helm deployment
  • Skaffold - Kaniko

Completar com contexto

Com base no esquema atual, o Cloud Code fornece e documentos relevantes para ajudar você a escolher a opção certa.

Conclusões contextuais do esquema do Kubernetes

Validar 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; o texto ao passar o cursor afirma: Tipo incorreto. String esperada.

Descubra a documentação ao passar o cursor

O Cloud Code mostra documentos relevantes quando você detém sobre um valor no esquema.

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

Acessar definições de recursos

Para ver as definições de um recurso, clique com o botão direito do mouse nele e escolha Acesse a definição ou Veja a definição.

Aplicar um arquivo YAML

Para aplicar uma mudança de configuração usando o arquivo atual, abra o comando Paleta (pressione Ctrl/Cmd+Shift+P ou clique em Ver > Paleta de comandos) e execute Cloud Code: Aplicar arquivo JSON/YAML atual ao recurso implantado do 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.

Conferir diferenças entre arquivos YAML

Para conferir as diferenças entre um arquivo YAML no controle de origem e um YAML, abra a paleta de comandos (pressione Ctrl/Cmd+Shift+P ou clique em Ver > Command Palette) e, em seguida, execute Cloud Code: comparação do arquivo JSON/YAML atual com o recurso implantado do K8s

Executar uma simulação de um arquivo YAML

O Cloud Code executa simulações automaticamente enquanto você digita informações do arquivo YAML e sublinha todos os erros com uma linha amarela ondulada.

Linhas amarelas onduladas aparecem quando o servidor considera uma parte do seu código. um erro com base no resultado de uma simulação. Isso inclui violações da política, nomes duplicados ou validações em que o Cloud Code não realiza no lado do cliente (como números máximos de portas).

Para ver a descrição do erro no arquivo YAML, mantenha o ponteiro sobre no código com um sublinhado amarelo.

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

Linhas vermelhas sinuosas aparecem para os erros detectados antes do Cloud Code para o servidor do Kubernetes. Por exemplo, colocar um número onde uma string é esperado aciona uma linha ondulada vermelha.

trabalhar com secrets

O uso de mapas de configuração e segredos é uma parte fundamental de trabalhar com o Kubernetes. Para ver o contexto de uma base64 com o Cloud Code, mantenha o ponteiro do mouse sobre o secret para decodificar reimplantá-lo.

Decodificar o secret segurando o ponteiro sobre ele

A seguir