kube-score
kubeconform
Our great sponsors
kube-score | kubeconform | |
---|---|---|
8 | 4 | |
2,568 | 1,912 | |
- | - | |
8.0 | 6.0 | |
13 days ago | 17 days ago | |
Go | Go | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
kube-score
- GitHub - zegl/kube-score: Kubernetes object analysis with recommendations for improved reliability and security
-
What should readiness & liveness probe actually check for?
This is taken from: https://github.com/zegl/kube-score/blob/master/README_PROBES.md and I have read the same opinions elsewhere.
-
How do you take care of your manifests?
A developer's workflow should anyway deploy to a real, or close-to-production Kubernetes cluster before opening a merge request with the finished change. That means the developer definitely sees upfront if the manifest is super wrong. Tools like kube-score (which is quite opinionated), kubeval or OPA rules can help in addition to keep things consistent and secure. For such a developer workflow, I recommend Skaffold since it mostly just wraps Docker, kubectl and the templating tool you're using (e.g. kustomize/helm).
- Kube-Score v1.14
- kube-score v1.14 – Kubernetes object analysis with recommendations for improved reliability and security
-
Securing Kubernetes Deployments
apps/v1/Deployment semaphore-demo-ruby-kubernetes 💥 [CRITICAL] Container Resources · semaphore-demo-ruby-kubernetes -> CPU limit is not set Resource limits are recommended to avoid resource DDOS. Set resources.limits.cpu · semaphore-demo-ruby-kubernetes -> Memory limit is not set Resource limits are recommended to avoid resource DDOS. Set resources.limits.memory · semaphore-demo-ruby-kubernetes -> CPU request is not set Resource requests are recommended to make sure that the application can start and run without crashing. Set resources.requests.cpu · semaphore-demo-ruby-kubernetes -> Memory request is not set Resource requests are recommended to make sure that the application can start and run without crashing. Set resources.requests.memory [CRITICAL] Container Image Pull Policy · semaphore-demo-ruby-kubernetes -> ImagePullPolicy is not set to Always It's recommended to always set the ImagePullPolicy to Always, to make sure that the imagePullSecrets are always correct, and to always get the image you want. [CRITICAL] Pod NetworkPolicy · The pod does not have a matching NetworkPolicy Create a NetworkPolicy that targets this pod to control who/what can communicate with this pod. Note, this feature needs to be supported by the CNI implementation used in the Kubernetes cluster to have an effect. [CRITICAL] Pod Probes · Container is missing a readinessProbe A readinessProbe should be used to indicate when the service is ready to receive traffic. Without it, the Pod is risking to receive traffic before it has booted. It's also used during rollouts, and can prevent downtime if a new version of the application is failing. More information: https://github.com/zegl/kube-score/blob/master/README_PROBES.md [CRITICAL] Container Security Context · semaphore-demo-ruby-kubernetes -> Container has no configured security context Set securityContext to run the container in a more secure context. v1/Service semaphore-demo-ruby-kubernetes-lb ✅
-
Top 20 useful k8s tools
Link : https://github.com/zegl/kube-score
kubeconform
-
Dealing with Yaml files
If you want to validate your resources against the schema of the resources (mind you also crds) you can use kubeconform.
-
[Show] Detecting YAML Issues Early
How is it different from https://github.com/yannh/kubeconform?
-
Securing Kubernetes Deployments
wget https://github.com/yannh/kubeconform/releases/download/v0.4.12/kubeconform-linux-amd64.tar.gz tar xf kubeconform-linux-amd64.tar.gz sudo cp kubeconform /usr/local/bin checkout kubeconform --summary deployment.yml
-
A Deep Dive Into 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.
What are some alternatives?
polaris - Validation of best practices in your Kubernetes clusters
kubeval - Validate your Kubernetes configuration files, supports multiple Kubernetes versions
popeye - 👀 A Kubernetes cluster resource sanitizer
kubernetes-schema-validation - resources for the blog post about Kubernetes schema validation
datree - Prevent Kubernetes misconfigurations from reaching production (again 😤 )! From code to cloud, Datree provides an E2E policy enforcement solution to run automatic checks for rule violations. See our docs: https://hub.datree.io
enhancements - Enhancements tracking repo for Kubernetes
kubernetes-json-schema - Schemas for every version of every object in every version of Kubernetes
polaris - Shopify’s design system to help us work together to build a great experience for all of our merchants.
kpt - Automate Kubernetes Configuration Editing
reviewdog - 🐶 Automated code review tool integrated with any code analysis tools regardless of programming language
hyperfine - A command-line benchmarking tool