Sonobuoy is a diagnostic tool that helps to validate the state of a Kubernetes cluster by running a set of tests in an accessible and non-destructive manner. By default, Sonobuoy runs the Kubernetes conformance tests. The conformance testing ensures that a cluster is properly configured and that its behavior conforms to official Kubernetes specifications. It also helps ensure that a Kubernetes cluster meets the minimal set of features. They are a subset of end-to-end (e2e) tests that should pass on any Kubernetes cluster.
A conformance-passing cluster provides the guarantee that your Kubernetes is properly configured as per best practices. There are around 275 tests that need to be passed for qualifying Kubernetes conformance.
Install Sonobuoy
wget https://github.com/vmware-tanzu/sonobuoy/releases/download/v0.51.0/sonobuoy_0.51.0_linux_amd64.tar.gz
tar -xvf sonobuoy_0.51.0_linux_amd64.tar.gz
Note: I am installing Sonobuoy on CentOS Linux release 7.9.2009 (Core).
Help
/root/sonobuoy --help
Run Sonobuoy
/root/sonobuoy run --wait
Note: e2e test takes around 60-90 minutes to complete.
/root/sonobuoy run --wait
Note: e2e test takes around 60-90 minutes to complete.
Sonobuoy Objects
kubectl get all -n sonobuoy
Sonobuoy Status
/root/sonobuoy status
/root/sonobuoy status --json
/root/sonobuoy status --json | jq
Note: If you are getting this while using jq "bash: jq: command not found..." , follow this blog to install jq.
/root/sonobuoy status --json | jq
Note: If you are getting this while using jq "bash: jq: command not found..." , follow this blog to install jq.
Inspect Logs
/root/sonobuoy logs
/root/sonobuoy logs
Sonobuoy Results
results=$(/root/sonobuoy retrieve)
/root/sonobuoy results $results
/root/sonobuoy results <tar ball file>
/root/sonobuoy results <tar ball file>
/root/sonobuoy results <tar ball file> --mode=detailed | jq 'select(.status=="passed")'
/root/sonobuoy results <tar ball file> --mode=detailed | jq 'select(.status=="failed")'
/root/sonobuoy results <tar ball file> --mode=detailed| jq 'select(.name | contains("[Conformance]"))'
Cleanup
/root/sonobuoy delete --wait
References
https://github.com/vmware-tanzu/sonobuoy
https://sonobuoy.io/docs/v0.51.0/
No comments:
Post a Comment