Sonobuoy is a diagnostic tool that makes it easier to understand the state of a Kubernetes cluster by running a set of plugins (including Kubernetes conformance tests) in an accessible and non-destructive manner. It is a customizable, extendable, and cluster-agnostic way to generate clear, informative reports about your cluster.
运行 Sonobuoy 后会在集群创建一个 sonobuoy/sonobuoy 的 pod 用于收集测试信息,并且会根据测试插件逻辑不停的启动测试 pod 进行测试,待全部测试 pod 运行完成后会生成测试报告。
Sonobuoy supports 3 Kubernetes minor versions: the current release and 2 minor versions before. Sonobuoy is currently versioned to track the Kubernetes minor version to clarify the support matrix. For example, Sonobuoy v0.14.x would support Kubernetes 1.14.x, 1.13.x, and 1.12.x.
tar Pxvfz $sonobuoytar_path -C ${output_path}/ cd${output_path} for image in $(ls | grep tar.gz) { ctr -n k8s.io image import $image }
# ctr -n k8s.io i tag docker.io/sonobuoy/sonobuoy:v0.19.0 sonobuoy/sonobuoy:v0.19.0 # ctr -n k8s.io i tag docker.io/sonobuoy/systemd-logs:v0.3 sonobuoy/systemd-logs:v0.3
[sig-network] DNS should provide /etc/hosts entries for the cluster [LinuxOnly] [Conformance] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should not be able to mutate or prevent deletion of webhook configuration objects [Conformance] [sig-network] Services should have session affinity timeout work for service with type clusterIP [LinuxOnly] [Conformance] [sig-network] Proxy version v1 should proxy through a service and a pod [Conformance] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] patching/updating a mutating webhook should work [Conformance] [sig-network] Networking Granular Checks: Pods should functionfor intra-pod communication: http [NodeConformance] [Conformance] [sig-cli] Kubectl client Update Demo should create and stop a replication controller [Conformance] [sig-api-machinery] CustomResourceConversionWebhook [Privileged:ClusterAdmin] should be able to convert a non homogeneous list of CRs [Conformance] [sig-network] Networking Granular Checks: Pods should functionfor node-pod communication: http [LinuxOnly] [NodeConformance] [Conformance] [sig-network] Services should have session affinity timeout work for NodePort service [LinuxOnly] [Conformance] [k8s.io] KubeletManagedEtcHosts should test kubelet managed /etc/hosts file [LinuxOnly] [NodeConformance] [Conformance] [sig-cli] Kubectl client Update Demo should scale a replication controller [Conformance] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should honor timeout [Conformance] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should mutate custom resource with pruning [Conformance] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should be able to deny attaching pod [Conformance] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should mutate custom resource with different stored version [Conformance] [sig-api-machinery] Aggregator Should be able to support the 1.17 Sample API Server using the current Aggregator [Conformance] [sig-api-machinery] CustomResourceConversionWebhook [Privileged:ClusterAdmin] should be able to convert from CR v1 to CR v2 [Conformance] [sig-network] Networking Granular Checks: Pods should functionfor node-pod communication: udp [LinuxOnly] [NodeConformance] [Conformance] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should unconditionally reject operations on fail closed webhook [Conformance]