Validar YAML Kubernetes — Controles estructurales

Valida manifiestos Kubernetes con controles estructurales en el navegador: apiVersion, kind, metadata y reglas por kind para recursos habituales. No es kubeconform, ni kubectl dry-run, ni un esquema OpenAPI completo frente a un clúster.

Cargando…
Validador YAML Kubernetes, comprobaciones estructurales
Detecta campos ausentes y errores de forma habituales en los manifiestos antes de la CI. Cubre solo un subconjunto: no es un esquema completo ni una validación en un cluster real.

Notas para desarrolladores

Parsea con js-yaml loadAll; valida la estructura en el navegador. Comprueba campos compartidos (apiVersion, kind, metadata.name) más reglas por kind para un subconjunto curado. No es kubeconform, kubectl --dry-run ni esquema OpenAPI de un apiserver. Validación en vivo con debounce (~300 ms) en el editor Monaco YAML. Entrada máx. 512 KB. Panel de resultados: banner de veredicto, estadísticas documento/kind, tarjetas de incidencias con índice de doc e indicaciones de línea.

Cuándo elegir esta opción

Detectar un selector o lista de contenedores faltante en un Deployment pegado. Comprobar YAML multi-doc de kubectl get antes de compartir. Enseñar la forma de manifiestos con feedback inmediato. Combinar con format Kubernetes tras corregir incidencias.

Ejemplos prácticos

Stack multi-documento válido (ConfigMap + Service + Deployment)

Entrada

apiVersion: v1 kind: ConfigMap metadata: name: app-config namespace: web data: LOG_LEVEL: info --- apiVersion: v1 kind: Service metadata: name: web namespace: web spec: selector: app: web ports: - port: 80 targetPort: 80 --- apiVersion: apps/v1 kind: Deployment metadata: name: web namespace: web labels: app: web spec: replicas: 2 selector: matchLabels: app: web template: metadata: labels: app: web spec: containers: - name: web image: nginx:1.27 ports: - containerPort: 80

Resultado de validación

Estructuralmente válido: 3 documentos, 3 kinds (ConfigMap, Service, Deployment), namespace web compartido.

metadata.name faltante

Entrada

apiVersion: v1 kind: ConfigMap metadata: labels: app: web data: key: value

Resultado de validación

Inválido: metadata.name es obligatorio (incidencia con indicación del documento y la línea).

Explorar herramientas Kubernetes relacionadas

Embellece con format Kubernetes, genera recursos con generate Deployment o explora el hub Kubernetes.

FAQ del validador Kubernetes

Solo alcance estructural

¿Es esto kubeconform o kubectl dry-run?

No. Las comprobaciones son estructurales y tienen en cuenta el kind para un subconjunto de campos, en el navegador. No cargan los esquemas OpenAPI de Kubernetes ni contactan con un cluster.

¿Un resultado válido significa que el manifiesto se aplicará?

No. Un resultado estructural correcto no garantiza la admisión, el RBAC, la descarga de la imagen ni la disponibilidad de la versión de la API en tu cluster.

¿Se validan CRD completamente?

Los recursos personalizados solo reciben las comprobaciones de campos comunes, salvo que exista una regla específica para su kind. Trata las CRD con cuidado.

¿Archivos multi-documento?

Sí. Se comprueba cada documento que no sea nulo, y las incidencias pueden indicar el índice del documento y la línea cuando están disponibles.

Manifiestos multi-doc, validación estructural, starters Ingress/Deployment y formato de values de Helm.