A Deep Dive Into Kubernetes Schema Validation

This page summarizes the projects mentioned and recommended in the original post on dev.to

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • enhancements

    Enhancements tracking repo for Kubernetes

  • Verifying the state of Kubernetes manifests may seem like a trivial task, because the Kubernetes CLI (kubectl) has the ability to verify resources before they’re applied to a cluster. You can verify the schema by using the dry-run flag (--dry-run=client/server) when specifying the kubectl create or kubectl apply commands, which will perform the validation without applying Kubernetes resources to the cluster.

  • kubeval

    Validate your Kubernetes configuration files, supports multiple Kubernetes versions

  • Kubeval and kubeconform are command-line tools that were developed with the intent to validate Kubernetes manifests without the requirement of having a running Kubernetes environment. Because kubeconform is based on kubeval, they operate similarly — verification is performed against pre-generated JSON schemas that are created from the OpenAPI specifications (swagger.json) for each particular Kubernetes version. All that remains to run the schema validation tests is to point the tool executable to a single manifest, directory or pattern.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • kubeconform

    A FAST Kubernetes manifests validator, with support for Custom Resources!

  • Kubeval and kubeconform are command-line tools that were developed with the intent to validate Kubernetes manifests without the requirement of having a running Kubernetes environment. Because kubeconform is based on kubeval, they operate similarly — verification is performed against pre-generated JSON schemas that are created from the OpenAPI specifications (swagger.json) for each particular Kubernetes version. All that remains to run the schema validation tests is to point the tool executable to a single manifest, directory or pattern.

  • kubernetes-schema-validation

    resources for the blog post about Kubernetes schema validation

  • Kubeval and kubeconform are command-line tools that were developed with the intent to validate Kubernetes manifests without the requirement of having a running Kubernetes environment. Because kubeconform is based on kubeval, they operate similarly — verification is performed against pre-generated JSON schemas that are created from the OpenAPI specifications (swagger.json) for each particular Kubernetes version. All that remains to run the schema validation tests is to point the tool executable to a single manifest, directory or pattern.

  • hyperfine

    A command-line benchmarking tool

  • I used hyperfine to benchmark the execution time of each tool4. First I ran it against (1) all the files with misconfigurations (seven files in total), and then I ran it against (2) 100 Kubernetes files (all the files contain the same config).

  • kubernetes-json-schema

    Schemas for every version of every object in every version of Kubernetes

  • Kubeval - instrumenta/kubernetes-json-schema (last commit: 133f848 on April 29, 2020)

  • kubernetes-json-schema

    JSON Schemas for every version of every object in every version of Kubernetes (by yannh)

  • Kubeconform - yannh/kubernetes-json-schema (last commit: a660f03 on May 15, 2021)

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Test manifest compatibility against version

    2 projects | /r/kubernetes | 13 Jun 2021
  • Packaging Go for Arch Linux Tutorial

    2 projects | dev.to | 17 Sep 2023
  • Ramen has reached v0.2.0, the first production-ready version (in my opinion)

    3 projects | /r/ethdev | 13 Feb 2023
  • WebAssembly: Docker Without Containers

    9 projects | news.ycombinator.com | 21 Dec 2022
  • Kubernetes' minikube uses my Go Lang Project!

    2 projects | dev.to | 6 Aug 2022