Trabaja con Google Cloud y el archivo YAML de Kubernetes en Cloud Code para Cloud Shell

Cloud Code para Cloud Shell está diseñado para facilitar la configuración de Kubernetes y Cloud Build a través de un esquema para el análisis con lint en la estructura y los valores válidos, así como para proporcionar errores descriptivos. Cloud Code viene con instrucciones soluciones para esquemas comunes, finalizaciones inteligentes y documentación con solo colocar el cursor sobre los elementos.

Archivos de configuración YAML compatibles

Cloud Code también admite las definiciones de recursos personalizados (CRD) populares de Kubernetes, como Kubeflow, listas para usar.

Usa un esquema personalizado

Con Cloud Code, puedes proporcionar tu propio esquema CRD con la configuración cloudcode.yaml.crdSchemaLocations en el archivo settings.json. Puedes apuntar a un archivo local o a una URL. Las URLs que apuntan a github.com se convierten de forma automática en raw.githubusercontent.com.

Extrae el esquema de un clúster

Cuando cambias a un clúster que ejecuta Kubernetes v1.16 y versiones posteriores en la vista de Kubernetes, Cloud Code extrae de forma automática el esquema de todas las CRD instaladas.

Configura con fragmentos

Los fragmentos listos para usar del esquema YAML común (con Command/Ctrl+Space a fin de ver las opciones) facilitan el inicio de un archivo YAML nuevo o lo agregan a uno existente sin errores, sin dejar de seguir las prácticas recomendadas. Cloud Code facilita el trabajo con campos repetitivos, ya que completa las instancias restantes después de que completes el primer campo.

Cloud Code ofrece los siguientes fragmentos:

  • 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

Completa con contexto

Según el esquema actual, Cloud Code brinda información finalizaciones y documentos relevantes para ayudarte a elegir la opción correcta.

Parámetros contextuales para el esquema de Kubernetes

Validar el esquema YAML

Cloud Code ofrece asistencia para la validación de esquemas mediante la marcación con etiquetas no válidas y valores en tus archivos YAML, y sugiere correcciones cuando sea posible.

Valor del campo de nombre subrayado en rojo para destacar un valor no válido de 1234; coloca el cursor sobre los estados de texto: Tipo incorrecto. Cadena esperada.

Descubrir documentación con solo colocar el cursor sobre un elemento

Cloud Code muestra la documentación relevante cuando posees los y el puntero sobre un valor en el esquema.

Información de documentación cuando mantienes el puntero sobre un valor en el esquema

Accede a las definiciones de recursos

Para ver las definiciones de un recurso, haz clic con el botón derecho en el recurso y, luego, elige Ve a Definición o Vista previa de la definición.

Aplica un archivo YAML

Para aplicar un cambio de configuración con el archivo actual, abre el comando Paleta (presiona Ctrl/Cmd+Shift+P o haz clic en Ver > Paleta de comandos) Luego, ejecuta el comando Cloud Code: Apply Current JSON/YAML File to K8s Deployed Resource.

Este comando abre una vista de diferencias para que revises los cambios. Haz clic en Aplicar cuando se te pregunte si quieres aplicar este cambio. Esto se ejecuta kubectl apply -f

Ver las diferencias entre los archivos YAML

Para ver las diferencias entre un archivo YAML en el control de origen y un archivo archivo YAML, abre la paleta de comandos (presiona Ctrl/Cmd+Shift+P o haz clic en Ver > Paleta de comandos) y, luego, ejecuta Cloud Code: Archivo JSON/YAML actual diferente con un recurso implementado de K8s.

Realiza una ejecución de prueba de un archivo YAML

Cloud Code realiza pruebas de validación automáticamente a medida que escribes información en tu archivo YAML y subraya los errores con una línea amarilla ondulada.

Las líneas onduladas amarillas aparecen cuando el servidor considera una parte del código. un error basado en el resultado de una ejecución de prueba. Esto puede incluir incumplimientos de políticas, nombres duplicados o validaciones que Cloud Code no realiza del lado del cliente (como los números de puerto máximos).

Para ver la descripción del error en tu archivo YAML, coloca el puntero sobre el código con una línea amarilla debajo.

La validación de ejecución de prueba del lado del servidor falla en “hello.deployment.yaml” y muestra un mensaje de error como un aviso. Los detalles del error se encuentran en el canal de salida. El espacio de nombres "random-namespace" no existe.

Aparecen líneas onduladas rojas para los errores detectados antes de que Cloud Code realice la verificación con el servidor de Kubernetes. Por ejemplo, poner un número en el que una cadena se espera que active una línea ondulada roja.

Trabaja con Secrets

Usar mapas de configuración y secretos es una parte clave de trabajar con Kubernetes. Si deseas ver el contexto de un secreto base64 con Cloud Code, mantén el puntero sobre el secreto para decodificarlo.

Mantén el puntero sobre el secreto para decodificarlo

¿Qué sigue?