diff --git a/CHANGELOG.next.asciidoc b/CHANGELOG.next.asciidoc index 1ffa6f3bcecb..5b7a9caf21d0 100644 --- a/CHANGELOG.next.asciidoc +++ b/CHANGELOG.next.asciidoc @@ -109,6 +109,7 @@ https://github.com/elastic/beats/compare/v8.2.0\...main[Check the HEAD diff] - Add missing cluster metadata to k8s module metricsets {pull}32979[32979] {pull}33032[33032] - Add GCP CloudSQL region filter {pull}32943[32943] - Fix metrics split through different events and metadata not matching for aws cloudwatch. {pull}34483[34483] +- Fix metadata enricher with correct container ids for pods with multiple containers in container metricset. Align `kubernetes.container.id` and `container.id` fields for state_container metricset. {pull}34516[34516] *Osquerybeat* diff --git a/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v1.3.0.expected b/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v1.3.0.expected index 9bfecbe3c398..e4634c25d7bc 100644 --- a/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v1.3.0.expected +++ b/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v1.3.0.expected @@ -2,9 +2,9 @@ { "RootFields": { "container": { - "id": "e9560bbace13ca19de4b3771023198e8568f6b5ed6af3a949f10a5b8137b5be9", + "id": "1958e71d048065d38ce83dafda567c5fa9d0c1278cd7292d55b9f1d80b0a67f9", "image": { - "name": "gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.7" + "name": "gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.7" }, "runtime": "docker" } @@ -21,16 +21,19 @@ "MetricSetFields": { "cpu": { "request": { - "cores": 0.15 + "cores": 0.1 } }, - "id": "docker://e9560bbace13ca19de4b3771023198e8568f6b5ed6af3a949f10a5b8137b5be9", + "id": "1958e71d048065d38ce83dafda567c5fa9d0c1278cd7292d55b9f1d80b0a67f9", "memory": { + "limit": { + "bytes": 178257920 + }, "request": { - "bytes": 20971520 + "bytes": 73400320 } }, - "name": "dnsmasq", + "name": "kubedns", "status": { "phase": "running", "ready": true, @@ -51,9 +54,9 @@ { "RootFields": { "container": { - "id": "e9568dfef1dd249cabac4bf09e6bf4a239fe738ae20eba072b6516676fce4bf6", + "id": "88951e0178ea5131fa3e2d7cafacb3a7e63700795dd6fa0d40ed2e4ac1f52f9c", "image": { - "name": "gcr.io/google_containers/kube-apiserver-amd64:v1.9.7" + "name": "quay.io/coreos/kube-state-metrics:v1.3.0" }, "runtime": "docker" } @@ -64,17 +67,28 @@ "name": "minikube" }, "pod": { - "name": "kube-apiserver-minikube" + "name": "kube-state-metrics-6479d88c5c-5b6cl" } }, "MetricSetFields": { "cpu": { + "limit": { + "cores": 0.101 + }, "request": { - "cores": 0.25 + "cores": 0.101 } }, - "id": "docker://e9568dfef1dd249cabac4bf09e6bf4a239fe738ae20eba072b6516676fce4bf6", - "name": "kube-apiserver", + "id": "88951e0178ea5131fa3e2d7cafacb3a7e63700795dd6fa0d40ed2e4ac1f52f9c", + "memory": { + "limit": { + "bytes": 106954752 + }, + "request": { + "bytes": 106954752 + } + }, + "name": "kube-state-metrics", "status": { "phase": "running", "ready": true, @@ -95,9 +109,9 @@ { "RootFields": { "container": { - "id": "76c260259ddfd0267b5acb4e514465215ef1ebfa93a4057d592828772e6b39f5", + "id": "aad0addd205dc72dc7abc8f9d02a1b429a2f2e1df3acc60431ca6b79746c093b", "image": { - "name": "gcr.io/google_containers/kube-proxy-amd64:v1.9.7" + "name": "gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.7" }, "runtime": "docker" } @@ -108,15 +122,26 @@ "name": "minikube" }, "pod": { - "name": "kube-proxy-znhg6" + "name": "kube-dns-6f4fd4bdf-wlmht" } }, "MetricSetFields": { - "id": "docker://76c260259ddfd0267b5acb4e514465215ef1ebfa93a4057d592828772e6b39f5", - "name": "kube-proxy", + "cpu": { + "request": { + "cores": 0.01 + } + }, + "id": "aad0addd205dc72dc7abc8f9d02a1b429a2f2e1df3acc60431ca6b79746c093b", + "memory": { + "request": { + "bytes": 20971520 + } + }, + "name": "sidecar", "status": { "phase": "running", "ready": true, + "reason": "OOMKilled", "restarts": 0 } }, @@ -134,9 +159,9 @@ { "RootFields": { "container": { - "id": "4beb9aab887ca162c9cb3534c4826156636241052cd548153eaa2a170b6d102f", + "id": "c46bc2164edcb5972be6fc9174155e61179cb04314c4f6da5d25d3a76acadee6", "image": { - "name": "gcr.io/google_containers/kube-controller-manager-amd64:v1.9.7" + "name": "k8s.gcr.io/kubernetes-dashboard-amd64:v1.8.1" }, "runtime": "docker" } @@ -147,17 +172,12 @@ "name": "minikube" }, "pod": { - "name": "kube-controller-manager-minikube" + "name": "kubernetes-dashboard-77d8b98585-vqtzm" } }, "MetricSetFields": { - "cpu": { - "request": { - "cores": 0.2 - } - }, - "id": "docker://4beb9aab887ca162c9cb3534c4826156636241052cd548153eaa2a170b6d102f", - "name": "kube-controller-manager", + "id": "c46bc2164edcb5972be6fc9174155e61179cb04314c4f6da5d25d3a76acadee6", + "name": "kubernetes-dashboard", "status": { "phase": "running", "ready": true, @@ -178,9 +198,9 @@ { "RootFields": { "container": { - "id": "948c4ebd8ca4fdf352e7fbf7f5c5d381af7e615ced435dc42fde0c1d25851320", + "id": "eadcbd54ba914dff6475ae64805887967cfb973aeb9b07364c94372658a71d11", "image": { - "name": "k8s.gcr.io/addon-resizer:1.7" + "name": "gcr.io/google_containers/kube-scheduler-amd64:v1.9.7" }, "runtime": "docker" } @@ -191,28 +211,17 @@ "name": "minikube" }, "pod": { - "name": "kube-state-metrics-6479d88c5c-5b6cl" + "name": "kube-scheduler-minikube" } }, "MetricSetFields": { "cpu": { - "limit": { - "cores": 0.1 - }, "request": { "cores": 0.1 } }, - "id": "docker://948c4ebd8ca4fdf352e7fbf7f5c5d381af7e615ced435dc42fde0c1d25851320", - "memory": { - "limit": { - "bytes": 31457280 - }, - "request": { - "bytes": 31457280 - } - }, - "name": "addon-resizer", + "id": "eadcbd54ba914dff6475ae64805887967cfb973aeb9b07364c94372658a71d11", + "name": "kube-scheduler", "status": { "phase": "running", "ready": true, @@ -233,9 +242,9 @@ { "RootFields": { "container": { - "id": "eadcbd54ba914dff6475ae64805887967cfb973aeb9b07364c94372658a71d11", + "id": "e9560bbace13ca19de4b3771023198e8568f6b5ed6af3a949f10a5b8137b5be9", "image": { - "name": "gcr.io/google_containers/kube-scheduler-amd64:v1.9.7" + "name": "gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.7" }, "runtime": "docker" } @@ -246,17 +255,22 @@ "name": "minikube" }, "pod": { - "name": "kube-scheduler-minikube" + "name": "kube-dns-6f4fd4bdf-wlmht" } }, "MetricSetFields": { "cpu": { "request": { - "cores": 0.1 + "cores": 0.15 } }, - "id": "docker://eadcbd54ba914dff6475ae64805887967cfb973aeb9b07364c94372658a71d11", - "name": "kube-scheduler", + "id": "e9560bbace13ca19de4b3771023198e8568f6b5ed6af3a949f10a5b8137b5be9", + "memory": { + "request": { + "bytes": 20971520 + } + }, + "name": "dnsmasq", "status": { "phase": "running", "ready": true, @@ -277,9 +291,9 @@ { "RootFields": { "container": { - "id": "1958e71d048065d38ce83dafda567c5fa9d0c1278cd7292d55b9f1d80b0a67f9", + "id": "76c260259ddfd0267b5acb4e514465215ef1ebfa93a4057d592828772e6b39f5", "image": { - "name": "gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.7" + "name": "gcr.io/google_containers/kube-proxy-amd64:v1.9.7" }, "runtime": "docker" } @@ -290,25 +304,12 @@ "name": "minikube" }, "pod": { - "name": "kube-dns-6f4fd4bdf-wlmht" + "name": "kube-proxy-znhg6" } }, "MetricSetFields": { - "cpu": { - "request": { - "cores": 0.1 - } - }, - "id": "docker://1958e71d048065d38ce83dafda567c5fa9d0c1278cd7292d55b9f1d80b0a67f9", - "memory": { - "limit": { - "bytes": 178257920 - }, - "request": { - "bytes": 73400320 - } - }, - "name": "kubedns", + "id": "76c260259ddfd0267b5acb4e514465215ef1ebfa93a4057d592828772e6b39f5", + "name": "kube-proxy", "status": { "phase": "running", "ready": true, @@ -329,9 +330,9 @@ { "RootFields": { "container": { - "id": "6e96fd8a687409b2314dcc01f209bb0c813c2fb08b8f75ad1695e120d41e1a2a", + "id": "f4cc07b8e7ee5952738c69a0bff0c7b331c10af66faa541197684127d393b760", "image": { - "name": "gcr.io/google_containers/etcd-amd64:3.1.11" + "name": "gcr.io/k8s-minikube/storage-provisioner:v1.8.1" }, "runtime": "docker" } @@ -342,15 +343,16 @@ "name": "minikube" }, "pod": { - "name": "etcd-minikube" + "name": "storage-provisioner" } }, "MetricSetFields": { - "id": "docker://6e96fd8a687409b2314dcc01f209bb0c813c2fb08b8f75ad1695e120d41e1a2a", - "name": "etcd", + "id": "f4cc07b8e7ee5952738c69a0bff0c7b331c10af66faa541197684127d393b760", + "name": "storage-provisioner", "status": { "phase": "running", "ready": true, + "reason": "ImagePullBackOff", "restarts": 0 } }, @@ -368,9 +370,9 @@ { "RootFields": { "container": { - "id": "ab382dbe8f8265f88ee9fec7de142f778da4a5fd9fe0334e3bdb6fe851124c08", + "id": "6e96fd8a687409b2314dcc01f209bb0c813c2fb08b8f75ad1695e120d41e1a2a", "image": { - "name": "k8s.gcr.io/kube-addon-manager:v8.6" + "name": "gcr.io/google_containers/etcd-amd64:3.1.11" }, "runtime": "docker" } @@ -381,22 +383,12 @@ "name": "minikube" }, "pod": { - "name": "kube-addon-manager-minikube" + "name": "etcd-minikube" } }, "MetricSetFields": { - "cpu": { - "request": { - "cores": 0.005 - } - }, - "id": "docker://ab382dbe8f8265f88ee9fec7de142f778da4a5fd9fe0334e3bdb6fe851124c08", - "memory": { - "request": { - "bytes": 52428800 - } - }, - "name": "kube-addon-manager", + "id": "6e96fd8a687409b2314dcc01f209bb0c813c2fb08b8f75ad1695e120d41e1a2a", + "name": "etcd", "status": { "phase": "running", "ready": true, @@ -417,9 +409,9 @@ { "RootFields": { "container": { - "id": "88951e0178ea5131fa3e2d7cafacb3a7e63700795dd6fa0d40ed2e4ac1f52f9c", + "id": "ab382dbe8f8265f88ee9fec7de142f778da4a5fd9fe0334e3bdb6fe851124c08", "image": { - "name": "quay.io/coreos/kube-state-metrics:v1.3.0" + "name": "k8s.gcr.io/kube-addon-manager:v8.6" }, "runtime": "docker" } @@ -430,28 +422,22 @@ "name": "minikube" }, "pod": { - "name": "kube-state-metrics-6479d88c5c-5b6cl" + "name": "kube-addon-manager-minikube" } }, "MetricSetFields": { "cpu": { - "limit": { - "cores": 0.101 - }, "request": { - "cores": 0.101 + "cores": 0.005 } }, - "id": "docker://88951e0178ea5131fa3e2d7cafacb3a7e63700795dd6fa0d40ed2e4ac1f52f9c", + "id": "ab382dbe8f8265f88ee9fec7de142f778da4a5fd9fe0334e3bdb6fe851124c08", "memory": { - "limit": { - "bytes": 106954752 - }, "request": { - "bytes": 106954752 + "bytes": 52428800 } }, - "name": "kube-state-metrics", + "name": "kube-addon-manager", "status": { "phase": "running", "ready": true, @@ -472,9 +458,9 @@ { "RootFields": { "container": { - "id": "c46bc2164edcb5972be6fc9174155e61179cb04314c4f6da5d25d3a76acadee6", + "id": "e9568dfef1dd249cabac4bf09e6bf4a239fe738ae20eba072b6516676fce4bf6", "image": { - "name": "k8s.gcr.io/kubernetes-dashboard-amd64:v1.8.1" + "name": "gcr.io/google_containers/kube-apiserver-amd64:v1.9.7" }, "runtime": "docker" } @@ -485,12 +471,17 @@ "name": "minikube" }, "pod": { - "name": "kubernetes-dashboard-77d8b98585-vqtzm" + "name": "kube-apiserver-minikube" } }, "MetricSetFields": { - "id": "docker://c46bc2164edcb5972be6fc9174155e61179cb04314c4f6da5d25d3a76acadee6", - "name": "kubernetes-dashboard", + "cpu": { + "request": { + "cores": 0.25 + } + }, + "id": "e9568dfef1dd249cabac4bf09e6bf4a239fe738ae20eba072b6516676fce4bf6", + "name": "kube-apiserver", "status": { "phase": "running", "ready": true, @@ -511,9 +502,9 @@ { "RootFields": { "container": { - "id": "aad0addd205dc72dc7abc8f9d02a1b429a2f2e1df3acc60431ca6b79746c093b", + "id": "4beb9aab887ca162c9cb3534c4826156636241052cd548153eaa2a170b6d102f", "image": { - "name": "gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.7" + "name": "gcr.io/google_containers/kube-controller-manager-amd64:v1.9.7" }, "runtime": "docker" } @@ -524,26 +515,20 @@ "name": "minikube" }, "pod": { - "name": "kube-dns-6f4fd4bdf-wlmht" + "name": "kube-controller-manager-minikube" } }, "MetricSetFields": { "cpu": { "request": { - "cores": 0.01 - } - }, - "id": "docker://aad0addd205dc72dc7abc8f9d02a1b429a2f2e1df3acc60431ca6b79746c093b", - "memory": { - "request": { - "bytes": 20971520 + "cores": 0.2 } }, - "name": "sidecar", + "id": "4beb9aab887ca162c9cb3534c4826156636241052cd548153eaa2a170b6d102f", + "name": "kube-controller-manager", "status": { "phase": "running", "ready": true, - "reason": "OOMKilled", "restarts": 0 } }, @@ -561,9 +546,9 @@ { "RootFields": { "container": { - "id": "f4cc07b8e7ee5952738c69a0bff0c7b331c10af66faa541197684127d393b760", + "id": "948c4ebd8ca4fdf352e7fbf7f5c5d381af7e615ced435dc42fde0c1d25851320", "image": { - "name": "gcr.io/k8s-minikube/storage-provisioner:v1.8.1" + "name": "k8s.gcr.io/addon-resizer:1.7" }, "runtime": "docker" } @@ -574,16 +559,31 @@ "name": "minikube" }, "pod": { - "name": "storage-provisioner" + "name": "kube-state-metrics-6479d88c5c-5b6cl" } }, "MetricSetFields": { - "id": "docker://f4cc07b8e7ee5952738c69a0bff0c7b331c10af66faa541197684127d393b760", - "name": "storage-provisioner", + "cpu": { + "limit": { + "cores": 0.1 + }, + "request": { + "cores": 0.1 + } + }, + "id": "948c4ebd8ca4fdf352e7fbf7f5c5d381af7e615ced435dc42fde0c1d25851320", + "memory": { + "limit": { + "bytes": 31457280 + }, + "request": { + "bytes": 31457280 + } + }, + "name": "addon-resizer", "status": { "phase": "running", "ready": true, - "reason": "ImagePullBackOff", "restarts": 0 } }, diff --git a/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v1.8.0.expected b/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v1.8.0.expected index 4277911c4b3f..ccc114d97516 100644 --- a/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v1.8.0.expected +++ b/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v1.8.0.expected @@ -1,4 +1,44 @@ [ + { + "RootFields": { + "container": { + "id": "30216f9823ca7d3454987075dd7256b665b14b2333c9a6762b127b6378516609", + "image": { + "name": "busybox:latest" + }, + "runtime": "docker" + } + }, + "ModuleFields": { + "namespace": "default", + "node": { + "name": "minikube" + }, + "pod": { + "name": "hello-1578512100-vr7wj" + } + }, + "MetricSetFields": { + "id": "30216f9823ca7d3454987075dd7256b665b14b2333c9a6762b127b6378516609", + "name": "hello", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, { "RootFields": { "container": { @@ -24,7 +64,7 @@ "cores": 0.005 } }, - "id": "docker://f13c53a3ed0f3626b33b3c588d6913257320f65714eff28f25ead8f7663dc93b", + "id": "f13c53a3ed0f3626b33b3c588d6913257320f65714eff28f25ead8f7663dc93b", "memory": { "request": { "bytes": 52428800 @@ -51,9 +91,9 @@ { "RootFields": { "container": { - "id": "0ea0cef8a79c7643474a736e5da14c254d9411d87167028fa07c96d09748c83a", + "id": "465ebffafd7fc238a2fa2e764255efcbff88d5513f4c68f57d70932985428d12", "image": { - "name": "k8s.gcr.io/kube-scheduler:v1.16.2" + "name": "k8s.gcr.io/kube-controller-manager:v1.16.2" }, "runtime": "docker" } @@ -64,17 +104,17 @@ "name": "minikube" }, "pod": { - "name": "kube-scheduler-minikube" + "name": "kube-controller-manager-minikube" } }, "MetricSetFields": { "cpu": { "request": { - "cores": 0.1 + "cores": 0.2 } }, - "id": "docker://0ea0cef8a79c7643474a736e5da14c254d9411d87167028fa07c96d09748c83a", - "name": "kube-scheduler", + "id": "465ebffafd7fc238a2fa2e764255efcbff88d5513f4c68f57d70932985428d12", + "name": "kube-controller-manager", "status": { "phase": "running", "ready": true, @@ -112,7 +152,7 @@ } }, "MetricSetFields": { - "id": "docker://c152296116c064db311061cf6c39cff2de8d66339c954505cb68816464cf4a03", + "id": "c152296116c064db311061cf6c39cff2de8d66339c954505cb68816464cf4a03", "name": "kube-proxy", "status": { "phase": "running", @@ -134,9 +174,9 @@ { "RootFields": { "container": { - "id": "465ebffafd7fc238a2fa2e764255efcbff88d5513f4c68f57d70932985428d12", + "id": "e0b05fcb32abf937c395942e0234b5dfc834206149bbb95afa585c51693650f3", "image": { - "name": "k8s.gcr.io/kube-controller-manager:v1.16.2" + "name": "gcr.io/k8s-minikube/storage-provisioner:v1.8.1" }, "runtime": "docker" } @@ -147,17 +187,12 @@ "name": "minikube" }, "pod": { - "name": "kube-controller-manager-minikube" + "name": "storage-provisioner" } }, "MetricSetFields": { - "cpu": { - "request": { - "cores": 0.2 - } - }, - "id": "docker://465ebffafd7fc238a2fa2e764255efcbff88d5513f4c68f57d70932985428d12", - "name": "kube-controller-manager", + "id": "e0b05fcb32abf937c395942e0234b5dfc834206149bbb95afa585c51693650f3", + "name": "storage-provisioner", "status": { "phase": "running", "ready": true, @@ -178,9 +213,9 @@ { "RootFields": { "container": { - "id": "30216f9823ca7d3454987075dd7256b665b14b2333c9a6762b127b6378516609", + "id": "669cc415d86b872450deaada60c73cca387ca23a7b0f21c5b146467b95cf1f76", "image": { - "name": "busybox:latest" + "name": "k8s.gcr.io/nginx-slim:0.8" }, "runtime": "docker" } @@ -191,16 +226,15 @@ "name": "minikube" }, "pod": { - "name": "hello-1578512100-vr7wj" + "name": "web-1" } }, "MetricSetFields": { - "id": "docker://30216f9823ca7d3454987075dd7256b665b14b2333c9a6762b127b6378516609", - "name": "hello", + "id": "669cc415d86b872450deaada60c73cca387ca23a7b0f21c5b146467b95cf1f76", + "name": "nginx", "status": { - "phase": "terminated", - "ready": false, - "reason": "Completed", + "phase": "running", + "ready": true, "restarts": 0 } }, @@ -218,9 +252,9 @@ { "RootFields": { "container": { - "id": "f8fe5be1dbb1931d702c89235c79965730cbcced7b0ced9895f6c54c1ae8e5c3", + "id": "0ea0cef8a79c7643474a736e5da14c254d9411d87167028fa07c96d09748c83a", "image": { - "name": "k8s.gcr.io/coredns:1.6.2" + "name": "k8s.gcr.io/kube-scheduler:v1.16.2" }, "runtime": "docker" } @@ -231,7 +265,7 @@ "name": "minikube" }, "pod": { - "name": "coredns-5644d7b6d9-fhwjd" + "name": "kube-scheduler-minikube" } }, "MetricSetFields": { @@ -240,16 +274,8 @@ "cores": 0.1 } }, - "id": "docker://f8fe5be1dbb1931d702c89235c79965730cbcced7b0ced9895f6c54c1ae8e5c3", - "memory": { - "limit": { - "bytes": 178257920 - }, - "request": { - "bytes": 73400320 - } - }, - "name": "coredns", + "id": "0ea0cef8a79c7643474a736e5da14c254d9411d87167028fa07c96d09748c83a", + "name": "kube-scheduler", "status": { "phase": "running", "ready": true, @@ -270,9 +296,9 @@ { "RootFields": { "container": { - "id": "e0b05fcb32abf937c395942e0234b5dfc834206149bbb95afa585c51693650f3", + "id": "842fbd62a0ab71b9ed9139edce3db502e9d81e545b9646daa3cde09f9986ab06", "image": { - "name": "gcr.io/k8s-minikube/storage-provisioner:v1.8.1" + "name": "k8s.gcr.io/etcd:3.3.15-0" }, "runtime": "docker" } @@ -283,12 +309,12 @@ "name": "minikube" }, "pod": { - "name": "storage-provisioner" + "name": "etcd-minikube" } }, "MetricSetFields": { - "id": "docker://e0b05fcb32abf937c395942e0234b5dfc834206149bbb95afa585c51693650f3", - "name": "storage-provisioner", + "id": "842fbd62a0ab71b9ed9139edce3db502e9d81e545b9646daa3cde09f9986ab06", + "name": "etcd", "status": { "phase": "running", "ready": true, @@ -309,25 +335,25 @@ { "RootFields": { "container": { - "id": "2e0519a3fcd62acea8f4253b994ce53356d89171c0eb0920a13fe58b637d8cdb", + "id": "a4cec783af3614b137f4b449eebf3ac61eaf0a8661cb2f4847741be5a24de0bf", "image": { - "name": "quay.io/coreos/kube-state-metrics:v1.8.0" + "name": "k8s.gcr.io/nginx-slim:0.8" }, "runtime": "docker" } }, "ModuleFields": { - "namespace": "kube-system", + "namespace": "default", "node": { "name": "minikube" }, "pod": { - "name": "kube-state-metrics-898d4db8d-dqmtg" + "name": "web-0" } }, "MetricSetFields": { - "id": "docker://2e0519a3fcd62acea8f4253b994ce53356d89171c0eb0920a13fe58b637d8cdb", - "name": "kube-state-metrics", + "id": "a4cec783af3614b137f4b449eebf3ac61eaf0a8661cb2f4847741be5a24de0bf", + "name": "nginx", "status": { "phase": "running", "ready": true, @@ -370,7 +396,7 @@ "cores": 0.1 } }, - "id": "docker://15ada7864628d1c8007c01420e5887a501590d3bc9c25628a4770172ad615112", + "id": "15ada7864628d1c8007c01420e5887a501590d3bc9c25628a4770172ad615112", "memory": { "limit": { "bytes": 178257920 @@ -400,25 +426,25 @@ { "RootFields": { "container": { - "id": "669cc415d86b872450deaada60c73cca387ca23a7b0f21c5b146467b95cf1f76", + "id": "2e0519a3fcd62acea8f4253b994ce53356d89171c0eb0920a13fe58b637d8cdb", "image": { - "name": "k8s.gcr.io/nginx-slim:0.8" + "name": "quay.io/coreos/kube-state-metrics:v1.8.0" }, "runtime": "docker" } }, "ModuleFields": { - "namespace": "default", + "namespace": "kube-system", "node": { "name": "minikube" }, "pod": { - "name": "web-1" + "name": "kube-state-metrics-898d4db8d-dqmtg" } }, "MetricSetFields": { - "id": "docker://669cc415d86b872450deaada60c73cca387ca23a7b0f21c5b146467b95cf1f76", - "name": "nginx", + "id": "2e0519a3fcd62acea8f4253b994ce53356d89171c0eb0920a13fe58b637d8cdb", + "name": "kube-state-metrics", "status": { "phase": "running", "ready": true, @@ -439,9 +465,9 @@ { "RootFields": { "container": { - "id": "cdaefb4df2f2add498f884fdc717a6ca8d2681c1636934747de600e6427e0c0d", + "id": "f8fe5be1dbb1931d702c89235c79965730cbcced7b0ced9895f6c54c1ae8e5c3", "image": { - "name": "k8s.gcr.io/kube-apiserver:v1.16.2" + "name": "k8s.gcr.io/coredns:1.6.2" }, "runtime": "docker" } @@ -452,56 +478,25 @@ "name": "minikube" }, "pod": { - "name": "kube-apiserver-minikube" + "name": "coredns-5644d7b6d9-fhwjd" } }, "MetricSetFields": { "cpu": { "request": { - "cores": 0.25 + "cores": 0.1 } }, - "id": "docker://cdaefb4df2f2add498f884fdc717a6ca8d2681c1636934747de600e6427e0c0d", - "name": "kube-apiserver", - "status": { - "phase": "running", - "ready": true, - "restarts": 0 - } - }, - "Index": "", - "ID": "", - "Namespace": "kubernetes.container", - "Timestamp": "0001-01-01T00:00:00Z", - "Error": null, - "Host": "", - "Service": "", - "Took": 0, - "Period": 0, - "DisableTimeSeries": false - }, - { - "RootFields": { - "container": { - "id": "842fbd62a0ab71b9ed9139edce3db502e9d81e545b9646daa3cde09f9986ab06", - "image": { - "name": "k8s.gcr.io/etcd:3.3.15-0" + "id": "f8fe5be1dbb1931d702c89235c79965730cbcced7b0ced9895f6c54c1ae8e5c3", + "memory": { + "limit": { + "bytes": 178257920 }, - "runtime": "docker" - } - }, - "ModuleFields": { - "namespace": "kube-system", - "node": { - "name": "minikube" + "request": { + "bytes": 73400320 + } }, - "pod": { - "name": "etcd-minikube" - } - }, - "MetricSetFields": { - "id": "docker://842fbd62a0ab71b9ed9139edce3db502e9d81e545b9646daa3cde09f9986ab06", - "name": "etcd", + "name": "coredns", "status": { "phase": "running", "ready": true, @@ -522,25 +517,30 @@ { "RootFields": { "container": { - "id": "a4cec783af3614b137f4b449eebf3ac61eaf0a8661cb2f4847741be5a24de0bf", + "id": "cdaefb4df2f2add498f884fdc717a6ca8d2681c1636934747de600e6427e0c0d", "image": { - "name": "k8s.gcr.io/nginx-slim:0.8" + "name": "k8s.gcr.io/kube-apiserver:v1.16.2" }, "runtime": "docker" } }, "ModuleFields": { - "namespace": "default", + "namespace": "kube-system", "node": { "name": "minikube" }, "pod": { - "name": "web-0" + "name": "kube-apiserver-minikube" } }, "MetricSetFields": { - "id": "docker://a4cec783af3614b137f4b449eebf3ac61eaf0a8661cb2f4847741be5a24de0bf", - "name": "nginx", + "cpu": { + "request": { + "cores": 0.25 + } + }, + "id": "cdaefb4df2f2add498f884fdc717a6ca8d2681c1636934747de600e6427e0c0d", + "name": "kube-apiserver", "status": { "phase": "running", "ready": true, diff --git a/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v2.0.0.expected b/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v2.0.0.expected index 85ccf20ecad6..b64790b69ee2 100644 --- a/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v2.0.0.expected +++ b/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v2.0.0.expected @@ -2,9 +2,9 @@ { "RootFields": { "container": { - "id": "ffdc200c097349d8ed96f5768387d276751497297730121e6335a31c2d3332a4", + "id": "a55ee307ef431d293c02a7eb96417963d7b81b298a8ebfac2f77fe4ca58e1461", "image": { - "name": "k8s.gcr.io/kube-apiserver:v1.16.15" + "name": "k8s.gcr.io/kube-proxy:v1.16.15" }, "runtime": "containerd" } @@ -15,21 +15,17 @@ "name": "kind-control-plane" }, "pod": { - "name": "kube-apiserver-kind-control-plane" + "name": "kube-proxy-cm525" } }, "MetricSetFields": { - "cpu": { - "request": { - "cores": 0.25 - } - }, - "id": "containerd://ffdc200c097349d8ed96f5768387d276751497297730121e6335a31c2d3332a4", - "name": "kube-apiserver", + "id": "a55ee307ef431d293c02a7eb96417963d7b81b298a8ebfac2f77fe4ca58e1461", + "name": "kube-proxy", "status": { + "last_terminated_reason": "Unknown", "phase": "running", "ready": true, - "restarts": 0 + "restarts": 4 } }, "Index": "", @@ -46,38 +42,33 @@ { "RootFields": { "container": { - "id": "d66f649ad0f6c1822039f1c4ea27b6f792f6a86029bf862e77afa2966042a1ce", + "id": "fae8ef6fa6ea716f5ce0a65a1b2407d1e4839b04452d6013cdb6d5be8db8ada0", "image": { - "name": "docker.elastic.co/beats/metricbeat:7.15.0-SNAPSHOT" + "name": "docker.io/library/redis:5.0.4" }, "runtime": "containerd" } }, "ModuleFields": { - "namespace": "kube-system", + "namespace": "default", "node": { "name": "kind-worker2" }, "pod": { - "name": "metricbeat-55fp7" + "name": "redis" } }, "MetricSetFields": { "cpu": { - "request": { - "cores": 0.1 - } - }, - "id": "containerd://d66f649ad0f6c1822039f1c4ea27b6f792f6a86029bf862e77afa2966042a1ce", - "memory": { "limit": { - "bytes": 209715200 + "cores": 0.1 }, "request": { - "bytes": 104857600 + "cores": 0.1 } }, - "name": "metricbeat", + "id": "fae8ef6fa6ea716f5ce0a65a1b2407d1e4839b04452d6013cdb6d5be8db8ada0", + "name": "redis", "status": { "last_terminated_reason": "Unknown", "phase": "running", @@ -99,9 +90,9 @@ { "RootFields": { "container": { - "id": "9afadbf7fd5374d1849b008e8ad4287cdbfbbf499bab9740bf0c7a5cd6730ad9", + "id": "ffdc200c097349d8ed96f5768387d276751497297730121e6335a31c2d3332a4", "image": { - "name": "docker.io/kindest/kindnetd:v20210326-1e038dc5" + "name": "k8s.gcr.io/kube-apiserver:v1.16.15" }, "runtime": "containerd" } @@ -109,36 +100,24 @@ "ModuleFields": { "namespace": "kube-system", "node": { - "name": "kind-worker" + "name": "kind-control-plane" }, "pod": { - "name": "kindnet-9fgst" + "name": "kube-apiserver-kind-control-plane" } }, "MetricSetFields": { "cpu": { - "limit": { - "cores": 0.1 - }, "request": { - "cores": 0.1 - } - }, - "id": "containerd://9afadbf7fd5374d1849b008e8ad4287cdbfbbf499bab9740bf0c7a5cd6730ad9", - "memory": { - "limit": { - "bytes": 52428800 - }, - "request": { - "bytes": 52428800 + "cores": 0.25 } }, - "name": "kindnet-cni", + "id": "ffdc200c097349d8ed96f5768387d276751497297730121e6335a31c2d3332a4", + "name": "kube-apiserver", "status": { - "last_terminated_reason": "Unknown", "phase": "running", "ready": true, - "restarts": 4 + "restarts": 0 } }, "Index": "", @@ -155,9 +134,9 @@ { "RootFields": { "container": { - "id": "fae8ef6fa6ea716f5ce0a65a1b2407d1e4839b04452d6013cdb6d5be8db8ada0", + "id": "02b0705f60dc6131a6b5d4e9a48e2510463f89a0f77e7e1bafa6b5f45cc595e8", "image": { - "name": "docker.io/library/redis:5.0.4" + "name": "docker.io/odise/busybox-python:latest" }, "runtime": "containerd" } @@ -165,28 +144,20 @@ "ModuleFields": { "namespace": "default", "node": { - "name": "kind-worker2" + "name": "kind-worker" }, "pod": { - "name": "redis" + "name": "hello-python-566b5479f5-ndwdl" } }, "MetricSetFields": { - "cpu": { - "limit": { - "cores": 0.1 - }, - "request": { - "cores": 0.1 - } - }, - "id": "containerd://fae8ef6fa6ea716f5ce0a65a1b2407d1e4839b04452d6013cdb6d5be8db8ada0", - "name": "redis", + "id": "02b0705f60dc6131a6b5d4e9a48e2510463f89a0f77e7e1bafa6b5f45cc595e8", + "name": "hello-python", "status": { "last_terminated_reason": "Unknown", "phase": "running", "ready": true, - "restarts": 1 + "restarts": 18 } }, "Index": "", @@ -203,9 +174,9 @@ { "RootFields": { "container": { - "id": "8af6de6644ef1e5bb36b9d1f87d65e9b893096ae2c0f3e57061fad70f094d1be", + "id": "ae513b826459c9382984bea986eb3546aa45fd0e650051cb9591ab7a8efed6ea", "image": { - "name": "k8s.gcr.io/kube-proxy:v1.16.15" + "name": "k8s.gcr.io/kube-state-metrics/kube-state-metrics:v2.1.0" }, "runtime": "containerd" } @@ -216,17 +187,17 @@ "name": "kind-worker" }, "pod": { - "name": "kube-proxy-22znl" + "name": "kube-state-metrics-f655d484d-hj69w" } }, "MetricSetFields": { - "id": "containerd://8af6de6644ef1e5bb36b9d1f87d65e9b893096ae2c0f3e57061fad70f094d1be", - "name": "kube-proxy", + "id": "ae513b826459c9382984bea986eb3546aa45fd0e650051cb9591ab7a8efed6ea", + "name": "kube-state-metrics", "status": { - "last_terminated_reason": "Unknown", + "last_terminated_reason": "Error", "phase": "running", "ready": true, - "restarts": 4 + "restarts": 2 } }, "Index": "", @@ -243,9 +214,9 @@ { "RootFields": { "container": { - "id": "f2926bdf120aa838838aa55640b5511291e7279eb07ee8c17e01bf23a8695c2c", + "id": "1c1919c3b07bf3369b5e1a4bf187762f2724b3bc7eb113239af3919f12202337", "image": { - "name": "k8s.gcr.io/kube-proxy:v1.16.15" + "name": "k8s.gcr.io/kube-controller-manager:v1.16.15" }, "runtime": "containerd" } @@ -253,15 +224,20 @@ "ModuleFields": { "namespace": "kube-system", "node": { - "name": "kind-worker2" + "name": "kind-control-plane" }, "pod": { - "name": "kube-proxy-lf6md" + "name": "kube-controller-manager-kind-control-plane" } }, "MetricSetFields": { - "id": "containerd://f2926bdf120aa838838aa55640b5511291e7279eb07ee8c17e01bf23a8695c2c", - "name": "kube-proxy", + "cpu": { + "request": { + "cores": 0.2 + } + }, + "id": "1c1919c3b07bf3369b5e1a4bf187762f2724b3bc7eb113239af3919f12202337", + "name": "kube-controller-manager", "status": { "last_terminated_reason": "Unknown", "phase": "running", @@ -283,9 +259,9 @@ { "RootFields": { "container": { - "id": "3101d1525d6133851881f4b7cd439033663daefeb4849e5322d1428f09620628", + "id": "cd368e1731c278b039642fab2fe90902e2cfa470fd70a7ccfd5c2549a552cea5", "image": { - "name": "k8s.gcr.io/coredns:1.6.2" + "name": "k8s.gcr.io/kube-scheduler:v1.16.15" }, "runtime": "containerd" } @@ -296,7 +272,7 @@ "name": "kind-control-plane" }, "pod": { - "name": "coredns-5644d7b6d9-zgdsx" + "name": "kube-scheduler-kind-control-plane" } }, "MetricSetFields": { @@ -305,16 +281,8 @@ "cores": 0.1 } }, - "id": "containerd://3101d1525d6133851881f4b7cd439033663daefeb4849e5322d1428f09620628", - "memory": { - "limit": { - "bytes": 178257920 - }, - "request": { - "bytes": 73400320 - } - }, - "name": "coredns", + "id": "cd368e1731c278b039642fab2fe90902e2cfa470fd70a7ccfd5c2549a552cea5", + "name": "kube-scheduler", "status": { "last_terminated_reason": "Unknown", "phase": "running", @@ -336,9 +304,9 @@ { "RootFields": { "container": { - "id": "90560da422742a41de53c281969942c25f24d7b6bf73af6e4f226ee62338f640", + "id": "9afadbf7fd5374d1849b008e8ad4287cdbfbbf499bab9740bf0c7a5cd6730ad9", "image": { - "name": "docker.elastic.co/beats/metricbeat:7.15.0-SNAPSHOT" + "name": "docker.io/kindest/kindnetd:v20210326-1e038dc5" }, "runtime": "containerd" } @@ -349,30 +317,33 @@ "name": "kind-worker" }, "pod": { - "name": "metricbeat-bvr2v" + "name": "kindnet-9fgst" } }, "MetricSetFields": { "cpu": { + "limit": { + "cores": 0.1 + }, "request": { "cores": 0.1 } }, - "id": "containerd://90560da422742a41de53c281969942c25f24d7b6bf73af6e4f226ee62338f640", + "id": "9afadbf7fd5374d1849b008e8ad4287cdbfbbf499bab9740bf0c7a5cd6730ad9", "memory": { "limit": { - "bytes": 209715200 + "bytes": 52428800 }, "request": { - "bytes": 104857600 + "bytes": 52428800 } }, - "name": "metricbeat", + "name": "kindnet-cni", "status": { "last_terminated_reason": "Unknown", "phase": "running", "ready": true, - "restarts": 1 + "restarts": 4 } }, "Index": "", @@ -389,9 +360,9 @@ { "RootFields": { "container": { - "id": "a55ee307ef431d293c02a7eb96417963d7b81b298a8ebfac2f77fe4ca58e1461", + "id": "d66f649ad0f6c1822039f1c4ea27b6f792f6a86029bf862e77afa2966042a1ce", "image": { - "name": "k8s.gcr.io/kube-proxy:v1.16.15" + "name": "docker.elastic.co/beats/metricbeat:7.15.0-SNAPSHOT" }, "runtime": "containerd" } @@ -399,20 +370,33 @@ "ModuleFields": { "namespace": "kube-system", "node": { - "name": "kind-control-plane" + "name": "kind-worker2" }, "pod": { - "name": "kube-proxy-cm525" + "name": "metricbeat-55fp7" } }, "MetricSetFields": { - "id": "containerd://a55ee307ef431d293c02a7eb96417963d7b81b298a8ebfac2f77fe4ca58e1461", - "name": "kube-proxy", + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "d66f649ad0f6c1822039f1c4ea27b6f792f6a86029bf862e77afa2966042a1ce", + "memory": { + "limit": { + "bytes": 209715200 + }, + "request": { + "bytes": 104857600 + } + }, + "name": "metricbeat", "status": { "last_terminated_reason": "Unknown", "phase": "running", "ready": true, - "restarts": 4 + "restarts": 1 } }, "Index": "", @@ -429,30 +413,46 @@ { "RootFields": { "container": { - "id": "1a223dbb8b51a7404836789fd049701a9e4df7bb69878fb893ab10419ff4eb29", + "id": "3037e577635e9cbcefe1f273e5b06784d36807af76158e4add887e840c42e1ef", "image": { - "name": "docker.io/rancher/local-path-provisioner:v0.0.14" + "name": "docker.io/kindest/kindnetd:v20210326-1e038dc5" }, "runtime": "containerd" } }, "ModuleFields": { - "namespace": "local-path-storage", + "namespace": "kube-system", "node": { - "name": "kind-control-plane" + "name": "kind-worker2" }, "pod": { - "name": "local-path-provisioner-5bf465b47d-h8hjn" + "name": "kindnet-tg7tl" } }, "MetricSetFields": { - "id": "containerd://1a223dbb8b51a7404836789fd049701a9e4df7bb69878fb893ab10419ff4eb29", - "name": "local-path-provisioner", + "cpu": { + "limit": { + "cores": 0.1 + }, + "request": { + "cores": 0.1 + } + }, + "id": "3037e577635e9cbcefe1f273e5b06784d36807af76158e4add887e840c42e1ef", + "memory": { + "limit": { + "bytes": 52428800 + }, + "request": { + "bytes": 52428800 + } + }, + "name": "kindnet-cni", "status": { - "last_terminated_reason": "Error", + "last_terminated_reason": "Unknown", "phase": "running", "ready": true, - "restarts": 8 + "restarts": 4 } }, "Index": "", @@ -469,7 +469,7 @@ { "RootFields": { "container": { - "id": "33315399455b7213d316f6f799155d890659ca407f80d58307075b3ee70e7e07", + "id": "3101d1525d6133851881f4b7cd439033663daefeb4849e5322d1428f09620628", "image": { "name": "k8s.gcr.io/coredns:1.6.2" }, @@ -482,7 +482,7 @@ "name": "kind-control-plane" }, "pod": { - "name": "coredns-5644d7b6d9-nnwmb" + "name": "coredns-5644d7b6d9-zgdsx" } }, "MetricSetFields": { @@ -491,7 +491,7 @@ "cores": 0.1 } }, - "id": "containerd://33315399455b7213d316f6f799155d890659ca407f80d58307075b3ee70e7e07", + "id": "3101d1525d6133851881f4b7cd439033663daefeb4849e5322d1428f09620628", "memory": { "limit": { "bytes": 178257920 @@ -522,30 +522,30 @@ { "RootFields": { "container": { - "id": "ae513b826459c9382984bea986eb3546aa45fd0e650051cb9591ab7a8efed6ea", + "id": "a84953a247df489898d85ecfd0f893c2655ed1915ac902b309ee6e3658c7e258", "image": { - "name": "k8s.gcr.io/kube-state-metrics/kube-state-metrics:v2.1.0" + "name": "docker.io/library/busybox:latest" }, "runtime": "containerd" } }, "ModuleFields": { - "namespace": "kube-system", + "namespace": "default", "node": { "name": "kind-worker" }, "pod": { - "name": "kube-state-metrics-f655d484d-hj69w" + "name": "hello-zf6gh" } }, "MetricSetFields": { - "id": "containerd://ae513b826459c9382984bea986eb3546aa45fd0e650051cb9591ab7a8efed6ea", - "name": "kube-state-metrics", + "id": "a84953a247df489898d85ecfd0f893c2655ed1915ac902b309ee6e3658c7e258", + "name": "hello", "status": { - "last_terminated_reason": "Error", - "phase": "running", - "ready": true, - "restarts": 2 + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 } }, "Index": "", @@ -562,9 +562,9 @@ { "RootFields": { "container": { - "id": "09603a8146bd6aacb32d55a1e52e929143f003ea30c84052f765efca129fd90a", + "id": "90560da422742a41de53c281969942c25f24d7b6bf73af6e4f226ee62338f640", "image": { - "name": "docker.io/kindest/kindnetd:v20210326-1e038dc5" + "name": "docker.elastic.co/beats/metricbeat:7.15.0-SNAPSHOT" }, "runtime": "containerd" } @@ -572,36 +572,33 @@ "ModuleFields": { "namespace": "kube-system", "node": { - "name": "kind-control-plane" + "name": "kind-worker" }, "pod": { - "name": "kindnet-kch2v" + "name": "metricbeat-bvr2v" } }, "MetricSetFields": { "cpu": { - "limit": { - "cores": 0.1 - }, "request": { "cores": 0.1 } }, - "id": "containerd://09603a8146bd6aacb32d55a1e52e929143f003ea30c84052f765efca129fd90a", + "id": "90560da422742a41de53c281969942c25f24d7b6bf73af6e4f226ee62338f640", "memory": { "limit": { - "bytes": 52428800 + "bytes": 209715200 }, "request": { - "bytes": 52428800 + "bytes": 104857600 } }, - "name": "kindnet-cni", + "name": "metricbeat", "status": { "last_terminated_reason": "Unknown", "phase": "running", "ready": true, - "restarts": 4 + "restarts": 1 } }, "Index": "", @@ -618,9 +615,9 @@ { "RootFields": { "container": { - "id": "3037e577635e9cbcefe1f273e5b06784d36807af76158e4add887e840c42e1ef", + "id": "8af6de6644ef1e5bb36b9d1f87d65e9b893096ae2c0f3e57061fad70f094d1be", "image": { - "name": "docker.io/kindest/kindnetd:v20210326-1e038dc5" + "name": "k8s.gcr.io/kube-proxy:v1.16.15" }, "runtime": "containerd" } @@ -628,31 +625,15 @@ "ModuleFields": { "namespace": "kube-system", "node": { - "name": "kind-worker2" + "name": "kind-worker" }, "pod": { - "name": "kindnet-tg7tl" + "name": "kube-proxy-22znl" } }, "MetricSetFields": { - "cpu": { - "limit": { - "cores": 0.1 - }, - "request": { - "cores": 0.1 - } - }, - "id": "containerd://3037e577635e9cbcefe1f273e5b06784d36807af76158e4add887e840c42e1ef", - "memory": { - "limit": { - "bytes": 52428800 - }, - "request": { - "bytes": 52428800 - } - }, - "name": "kindnet-cni", + "id": "8af6de6644ef1e5bb36b9d1f87d65e9b893096ae2c0f3e57061fad70f094d1be", + "name": "kube-proxy", "status": { "last_terminated_reason": "Unknown", "phase": "running", @@ -674,30 +655,30 @@ { "RootFields": { "container": { - "id": "a84953a247df489898d85ecfd0f893c2655ed1915ac902b309ee6e3658c7e258", + "id": "f2926bdf120aa838838aa55640b5511291e7279eb07ee8c17e01bf23a8695c2c", "image": { - "name": "docker.io/library/busybox:latest" + "name": "k8s.gcr.io/kube-proxy:v1.16.15" }, "runtime": "containerd" } }, "ModuleFields": { - "namespace": "default", + "namespace": "kube-system", "node": { - "name": "kind-worker" + "name": "kind-worker2" }, "pod": { - "name": "hello-zf6gh" + "name": "kube-proxy-lf6md" } }, "MetricSetFields": { - "id": "containerd://a84953a247df489898d85ecfd0f893c2655ed1915ac902b309ee6e3658c7e258", - "name": "hello", + "id": "f2926bdf120aa838838aa55640b5511291e7279eb07ee8c17e01bf23a8695c2c", + "name": "kube-proxy", "status": { - "phase": "terminated", - "ready": false, - "reason": "Completed", - "restarts": 0 + "last_terminated_reason": "Unknown", + "phase": "running", + "ready": true, + "restarts": 4 } }, "Index": "", @@ -714,9 +695,9 @@ { "RootFields": { "container": { - "id": "1c1919c3b07bf3369b5e1a4bf187762f2724b3bc7eb113239af3919f12202337", + "id": "33315399455b7213d316f6f799155d890659ca407f80d58307075b3ee70e7e07", "image": { - "name": "k8s.gcr.io/kube-controller-manager:v1.16.15" + "name": "k8s.gcr.io/coredns:1.6.2" }, "runtime": "containerd" } @@ -727,17 +708,25 @@ "name": "kind-control-plane" }, "pod": { - "name": "kube-controller-manager-kind-control-plane" + "name": "coredns-5644d7b6d9-nnwmb" } }, "MetricSetFields": { "cpu": { "request": { - "cores": 0.2 + "cores": 0.1 } }, - "id": "containerd://1c1919c3b07bf3369b5e1a4bf187762f2724b3bc7eb113239af3919f12202337", - "name": "kube-controller-manager", + "id": "33315399455b7213d316f6f799155d890659ca407f80d58307075b3ee70e7e07", + "memory": { + "limit": { + "bytes": 178257920 + }, + "request": { + "bytes": 73400320 + } + }, + "name": "coredns", "status": { "last_terminated_reason": "Unknown", "phase": "running", @@ -759,9 +748,9 @@ { "RootFields": { "container": { - "id": "3f9250f160ca15f681b8c7da78fdf34cd8be8a86fde3910b682ad413b940a8c5", + "id": "09603a8146bd6aacb32d55a1e52e929143f003ea30c84052f765efca129fd90a", "image": { - "name": "k8s.gcr.io/etcd:3.3.15-0" + "name": "docker.io/kindest/kindnetd:v20210326-1e038dc5" }, "runtime": "containerd" } @@ -772,16 +761,33 @@ "name": "kind-control-plane" }, "pod": { - "name": "etcd-kind-control-plane" + "name": "kindnet-kch2v" } }, "MetricSetFields": { - "id": "containerd://3f9250f160ca15f681b8c7da78fdf34cd8be8a86fde3910b682ad413b940a8c5", - "name": "etcd", + "cpu": { + "limit": { + "cores": 0.1 + }, + "request": { + "cores": 0.1 + } + }, + "id": "09603a8146bd6aacb32d55a1e52e929143f003ea30c84052f765efca129fd90a", + "memory": { + "limit": { + "bytes": 52428800 + }, + "request": { + "bytes": 52428800 + } + }, + "name": "kindnet-cni", "status": { + "last_terminated_reason": "Unknown", "phase": "running", "ready": true, - "restarts": 0 + "restarts": 4 } }, "Index": "", @@ -798,35 +804,30 @@ { "RootFields": { "container": { - "id": "cd368e1731c278b039642fab2fe90902e2cfa470fd70a7ccfd5c2549a552cea5", + "id": "1a223dbb8b51a7404836789fd049701a9e4df7bb69878fb893ab10419ff4eb29", "image": { - "name": "k8s.gcr.io/kube-scheduler:v1.16.15" + "name": "docker.io/rancher/local-path-provisioner:v0.0.14" }, "runtime": "containerd" } }, "ModuleFields": { - "namespace": "kube-system", + "namespace": "local-path-storage", "node": { "name": "kind-control-plane" }, "pod": { - "name": "kube-scheduler-kind-control-plane" + "name": "local-path-provisioner-5bf465b47d-h8hjn" } }, "MetricSetFields": { - "cpu": { - "request": { - "cores": 0.1 - } - }, - "id": "containerd://cd368e1731c278b039642fab2fe90902e2cfa470fd70a7ccfd5c2549a552cea5", - "name": "kube-scheduler", + "id": "1a223dbb8b51a7404836789fd049701a9e4df7bb69878fb893ab10419ff4eb29", + "name": "local-path-provisioner", "status": { - "last_terminated_reason": "Unknown", + "last_terminated_reason": "Error", "phase": "running", "ready": true, - "restarts": 4 + "restarts": 8 } }, "Index": "", @@ -843,30 +844,29 @@ { "RootFields": { "container": { - "id": "02b0705f60dc6131a6b5d4e9a48e2510463f89a0f77e7e1bafa6b5f45cc595e8", + "id": "3f9250f160ca15f681b8c7da78fdf34cd8be8a86fde3910b682ad413b940a8c5", "image": { - "name": "docker.io/odise/busybox-python:latest" + "name": "k8s.gcr.io/etcd:3.3.15-0" }, "runtime": "containerd" } }, "ModuleFields": { - "namespace": "default", + "namespace": "kube-system", "node": { - "name": "kind-worker" + "name": "kind-control-plane" }, "pod": { - "name": "hello-python-566b5479f5-ndwdl" + "name": "etcd-kind-control-plane" } }, "MetricSetFields": { - "id": "containerd://02b0705f60dc6131a6b5d4e9a48e2510463f89a0f77e7e1bafa6b5f45cc595e8", - "name": "hello-python", + "id": "3f9250f160ca15f681b8c7da78fdf34cd8be8a86fde3910b682ad413b940a8c5", + "name": "etcd", "status": { - "last_terminated_reason": "Unknown", "phase": "running", "ready": true, - "restarts": 18 + "restarts": 0 } }, "Index": "", diff --git a/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v2.7.0.expected b/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v2.7.0.expected new file mode 100644 index 000000000000..3d099c65dacb --- /dev/null +++ b/metricbeat/module/kubernetes/state_container/_meta/test/ksm.v2.7.0.expected @@ -0,0 +1,671 @@ +[ + { + "RootFields": { + "container": { + "id": "db273ae4a6486d1e52dda314a8d0ce84d9014ce5e0f9c94812119a73d579e2fc", + "image": { + "name": "docker.io/kindest/kindnetd:v20221004-44d545d1" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kindnet-4tnzw" + } + }, + "MetricSetFields": { + "cpu": { + "limit": { + "cores": 0.1 + }, + "request": { + "cores": 0.1 + } + }, + "id": "db273ae4a6486d1e52dda314a8d0ce84d9014ce5e0f9c94812119a73d579e2fc", + "memory": { + "limit": { + "bytes": 52428800 + }, + "request": { + "bytes": 52428800 + } + }, + "name": "kindnet-cni", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "b1ca049c0844dbb44840975d0fb8e0cfd90eeec664bfbc5e0e70d2e2ac47d839", + "image": { + "name": "docker.io/library/perl:5.34.0" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "pi-m88dn" + } + }, + "MetricSetFields": { + "id": "b1ca049c0844dbb44840975d0fb8e0cfd90eeec664bfbc5e0e70d2e2ac47d839", + "name": "pi", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "f2aa38ca30cec5c42fae07ed5cda3046f9392c2a93624815542881ace6aa3ad2", + "image": { + "name": "registry.k8s.io/kube-scheduler:v1.25.3" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-scheduler-kind-control-plane" + } + }, + "MetricSetFields": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "f2aa38ca30cec5c42fae07ed5cda3046f9392c2a93624815542881ace6aa3ad2", + "name": "kube-scheduler", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "bbecc08bbf0158bdc85f4ed006cddbf40f51d7348ce5cbd95e86d367d20e8fbb", + "image": { + "name": "docker.elastic.co/beats/metricbeat:8.6.0" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "metricbeat-6xfvl" + } + }, + "MetricSetFields": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "bbecc08bbf0158bdc85f4ed006cddbf40f51d7348ce5cbd95e86d367d20e8fbb", + "memory": { + "limit": { + "bytes": 209715200 + }, + "request": { + "bytes": 104857600 + } + }, + "name": "metricbeat", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "18bddca29930370d9cfa083969de095894f7b77b5c63fd0712128ea7de6c64fd", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27900587-r7g6w" + } + }, + "MetricSetFields": { + "id": "18bddca29930370d9cfa083969de095894f7b77b5c63fd0712128ea7de6c64fd", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "77d181df6b24476654d367bdcadc543c65371de07cc71044fc8a0bafc20a2105", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27900586-psw5h" + } + }, + "MetricSetFields": { + "id": "77d181df6b24476654d367bdcadc543c65371de07cc71044fc8a0bafc20a2105", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "d58ac7bcd7b24a58132d3021f13301d2a0995e74f98596956e8f20e19029f2be", + "image": { + "name": "registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.7.0" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-state-metrics-548546fc89-qrkzb" + } + }, + "MetricSetFields": { + "id": "d58ac7bcd7b24a58132d3021f13301d2a0995e74f98596956e8f20e19029f2be", + "name": "kube-state-metrics", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "f8e2e2fe9a308d4e81707c0a2daa53424a862e8889601ac7307a54e6aae03612", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27900585-6zngl" + } + }, + "MetricSetFields": { + "id": "f8e2e2fe9a308d4e81707c0a2daa53424a862e8889601ac7307a54e6aae03612", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "6f8e923de52f2af9aa23e91b97bf5f45dc6c631aa950c0a3782f847634bbe60b", + "image": { + "name": "registry.k8s.io/coredns/coredns:v1.9.3" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "coredns-565d847f94-dgwk8" + } + }, + "MetricSetFields": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "6f8e923de52f2af9aa23e91b97bf5f45dc6c631aa950c0a3782f847634bbe60b", + "memory": { + "limit": { + "bytes": 178257920 + }, + "request": { + "bytes": 73400320 + } + }, + "name": "coredns", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "003627b6d02209f47b06938519f61ca8d3baf740f2f04866bfeb9f7d4533e997", + "image": { + "name": "docker.io/kindest/local-path-provisioner:v0.0.22-kind.0" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "local-path-storage", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "local-path-provisioner-684f458cdd-wvdbd" + } + }, + "MetricSetFields": { + "id": "003627b6d02209f47b06938519f61ca8d3baf740f2f04866bfeb9f7d4533e997", + "name": "local-path-provisioner", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "9a7de41e53002ae76fe82103317edb4565ce383e3bf0395b796b4486ebc70d05", + "image": { + "name": "registry.k8s.io/kube-proxy:v1.25.3" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-proxy-flrd6" + } + }, + "MetricSetFields": { + "id": "9a7de41e53002ae76fe82103317edb4565ce383e3bf0395b796b4486ebc70d05", + "name": "kube-proxy", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "548badac9b0ece0c96e7222138e40aa7b9e47832cab06dc84f45a7591ec378cb", + "image": { + "name": "registry.k8s.io/kube-controller-manager:v1.25.3" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-controller-manager-kind-control-plane" + } + }, + "MetricSetFields": { + "cpu": { + "request": { + "cores": 0.2 + } + }, + "id": "548badac9b0ece0c96e7222138e40aa7b9e47832cab06dc84f45a7591ec378cb", + "name": "kube-controller-manager", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "01e704051af1b269270266aa05b6f330d16d88da286600c34744f7abb23618a8", + "image": { + "name": "registry.k8s.io/kube-apiserver:v1.25.3" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-apiserver-kind-control-plane" + } + }, + "MetricSetFields": { + "cpu": { + "request": { + "cores": 0.25 + } + }, + "id": "01e704051af1b269270266aa05b6f330d16d88da286600c34744f7abb23618a8", + "name": "kube-apiserver", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "e2738582ad159bb495172b9571bed309f16f3a5977ca6fd9184e89700369d22b", + "image": { + "name": "registry.k8s.io/etcd:3.5.4-0" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "etcd-kind-control-plane" + } + }, + "MetricSetFields": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "e2738582ad159bb495172b9571bed309f16f3a5977ca6fd9184e89700369d22b", + "memory": { + "request": { + "bytes": 104857600 + } + }, + "name": "etcd", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + }, + { + "RootFields": { + "container": { + "id": "849233d7c0fa232729cb223a66d8fb6287feadf4e4369201067397c92d413fe6", + "image": { + "name": "registry.k8s.io/coredns/coredns:v1.9.3" + }, + "runtime": "containerd" + } + }, + "ModuleFields": { + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "coredns-565d847f94-q2mmv" + } + }, + "MetricSetFields": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "849233d7c0fa232729cb223a66d8fb6287feadf4e4369201067397c92d413fe6", + "memory": { + "limit": { + "bytes": 178257920 + }, + "request": { + "bytes": 73400320 + } + }, + "name": "coredns", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "Index": "", + "ID": "", + "Namespace": "kubernetes.container", + "Timestamp": "0001-01-01T00:00:00Z", + "Error": null, + "Host": "", + "Service": "", + "Took": 0, + "Period": 0, + "DisableTimeSeries": false + } +] \ No newline at end of file diff --git a/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm-v1_3_0.plain-expected.json b/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm-v1_3_0.plain-expected.json index 91d3176317dc..e9b2f03e19fd 100644 --- a/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm-v1_3_0.plain-expected.json +++ b/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm-v1_3_0.plain-expected.json @@ -14,7 +14,7 @@ }, "kubernetes": { "container": { - "id": "docker://469f5d2b7854eb52e5d13dc0cd3e664c1b682b157aabaf596ffe4984f1516902", + "id": "469f5d2b7854eb52e5d13dc0cd3e664c1b682b157aabaf596ffe4984f1516902", "name": "tiller", "status": { "phase": "running", @@ -41,45 +41,12 @@ }, { "container": { - "id": "3aaee8bdd311c015240e99fa2a5a5f2f26b11b51236a683b39d8c1902e423978", + "id": "973cbe45982c5126a5caf8c58d964c0ab1d5bb2c165ccc59715fcc1ebd58ab3d", "image": { - "name": "gcr.io/google_containers/kubernetes-dashboard-amd64:v1.5.1" + "name": "gcr.io/google_containers/kube-state-metrics:v0.4.1" }, "runtime": "docker" }, - "event": { - "dataset": "kubernetes.container", - "duration": 115000, - "module": "kubernetes" - }, - "kubernetes": { - "container": { - "id": "docker://3aaee8bdd311c015240e99fa2a5a5f2f26b11b51236a683b39d8c1902e423978", - "name": "kubernetes-dashboard", - "status": { - "phase": "running", - "ready": true, - "restarts": 2 - } - }, - "namespace": "kube-system", - "node": { - "name": "minikube" - }, - "pod": { - "name": "kubernetes-dashboard-vw0l6" - } - }, - "metricset": { - "name": "state_container", - "period": 10000 - }, - "service": { - "address": "127.0.0.1:55555", - "type": "kubernetes" - } - }, - { "event": { "dataset": "kubernetes.container", "duration": 115000, @@ -95,6 +62,7 @@ "cores": 0.1 } }, + "id": "973cbe45982c5126a5caf8c58d964c0ab1d5bb2c165ccc59715fcc1ebd58ab3d", "memory": { "limit": { "bytes": 52428800 @@ -103,11 +71,19 @@ "bytes": 31457280 } }, - "name": "kube-state-metrics" + "name": "kube-state-metrics", + "status": { + "phase": "running", + "ready": true, + "restarts": 1 + } }, "namespace": "kube-system", + "node": { + "name": "minikube" + }, "pod": { - "name": "kube-state-metrics-1303537707-mnzbp" + "name": "kube-state-metrics-1303537707-7ncd1" } }, "metricset": { @@ -120,13 +96,6 @@ } }, { - "container": { - "id": "973cbe45982c5126a5caf8c58d964c0ab1d5bb2c165ccc59715fcc1ebd58ab3d", - "image": { - "name": "gcr.io/google_containers/kube-state-metrics:v0.4.1" - }, - "runtime": "docker" - }, "event": { "dataset": "kubernetes.container", "duration": 115000, @@ -142,7 +111,6 @@ "cores": 0.1 } }, - "id": "docker://973cbe45982c5126a5caf8c58d964c0ab1d5bb2c165ccc59715fcc1ebd58ab3d", "memory": { "limit": { "bytes": 52428800 @@ -151,19 +119,11 @@ "bytes": 31457280 } }, - "name": "kube-state-metrics", - "status": { - "phase": "running", - "ready": true, - "restarts": 1 - } + "name": "kube-state-metrics" }, "namespace": "kube-system", - "node": { - "name": "minikube" - }, "pod": { - "name": "kube-state-metrics-1303537707-7ncd1" + "name": "kube-state-metrics-1303537707-mnzbp" } }, "metricset": { @@ -177,9 +137,9 @@ }, { "container": { - "id": "e2ee1c2c7b8d4e5fd8c834b83cba8377d6b0e39da18157688ccc1a06b7c53117", + "id": "fa3d83f648de42492b38fa3e8501d109376f391c50f2bd210c895c8477ae4b62-test", "image": { - "name": "jenkinsci/jenkins:2.46.1" + "name": "gcr.io/google_containers/kubedns-amd64:1.9-test" }, "runtime": "docker" }, @@ -195,25 +155,28 @@ "cores": 0.2 } }, - "id": "docker://e2ee1c2c7b8d4e5fd8c834b83cba8377d6b0e39da18157688ccc1a06b7c53117", + "id": "fa3d83f648de42492b38fa3e8501d109376f391c50f2bd210c895c8477ae4b62-test", "memory": { + "limit": { + "bytes": 278257920 + }, "request": { - "bytes": 268435456 + "bytes": 83400320 } }, - "name": "wise-lynx-jenkins", + "name": "kubedns", "status": { - "phase": "running", - "ready": true, - "restarts": 1 + "phase": "terminated", + "ready": false, + "restarts": 3 } }, - "namespace": "jenkins", + "namespace": "test", "node": { - "name": "minikube" + "name": "minikube-test" }, "pod": { - "name": "wise-lynx-jenkins-1616735317-svn6k" + "name": "kube-dns-v20-5g5cb-test" } }, "metricset": { @@ -227,9 +190,9 @@ }, { "container": { - "id": "fa3d83f648de42492b38fa3e8501d109376f391c50f2bd210c895c8477ae4b62", + "id": "52fa55e051dc5b68e44c027588685b7edd85aaa03b07f7216d399249ff4fc821", "image": { - "name": "gcr.io/google_containers/kubedns-amd64:1.9" + "name": "gcr.io/google_containers/exechealthz-amd64:1.2" }, "runtime": "docker" }, @@ -242,19 +205,19 @@ "container": { "cpu": { "request": { - "cores": 0.1 + "cores": 0.01 } }, - "id": "docker://fa3d83f648de42492b38fa3e8501d109376f391c50f2bd210c895c8477ae4b62", + "id": "52fa55e051dc5b68e44c027588685b7edd85aaa03b07f7216d399249ff4fc821", "memory": { "limit": { - "bytes": 178257920 + "bytes": 52428800 }, "request": { - "bytes": 73400320 + "bytes": 52428800 } }, - "name": "kubedns", + "name": "healthz", "status": { "phase": "running", "ready": true, @@ -298,7 +261,7 @@ "cores": 0.1 } }, - "id": "docker://4fa227874ee68536bf902394fb662f07b99099798ca9cd5c1506b79075acc065", + "id": "4fa227874ee68536bf902394fb662f07b99099798ca9cd5c1506b79075acc065", "memory": { "request": { "bytes": 268435456 @@ -330,9 +293,9 @@ }, { "container": { - "id": "fa3d83f648de42492b38fa3e8501d109376f391c50f2bd210c895c8477ae4b62-test", + "id": "fa3d83f648de42492b38fa3e8501d109376f391c50f2bd210c895c8477ae4b62", "image": { - "name": "gcr.io/google_containers/kubedns-amd64:1.9-test" + "name": "gcr.io/google_containers/kubedns-amd64:1.9" }, "runtime": "docker" }, @@ -345,31 +308,31 @@ "container": { "cpu": { "request": { - "cores": 0.2 + "cores": 0.1 } }, - "id": "docker://fa3d83f648de42492b38fa3e8501d109376f391c50f2bd210c895c8477ae4b62-test", + "id": "fa3d83f648de42492b38fa3e8501d109376f391c50f2bd210c895c8477ae4b62", "memory": { "limit": { - "bytes": 278257920 + "bytes": 178257920 }, "request": { - "bytes": 83400320 + "bytes": 73400320 } }, "name": "kubedns", "status": { - "phase": "terminated", - "ready": false, - "restarts": 3 + "phase": "running", + "ready": true, + "restarts": 2 } }, - "namespace": "test", + "namespace": "kube-system", "node": { - "name": "minikube-test" + "name": "minikube" }, "pod": { - "name": "kube-dns-v20-5g5cb-test" + "name": "kube-dns-v20-5g5cb" } }, "metricset": { @@ -401,7 +364,7 @@ "cores": 0.005 } }, - "id": "docker://91fdd43f6b1b4c3dd133cfca53e0b1210bc557c2ae56006026b5ccdb5f52826f", + "id": "91fdd43f6b1b4c3dd133cfca53e0b1210bc557c2ae56006026b5ccdb5f52826f", "memory": { "request": { "bytes": 52428800 @@ -433,9 +396,9 @@ }, { "container": { - "id": "52fa55e051dc5b68e44c027588685b7edd85aaa03b07f7216d399249ff4fc821", + "id": "3aaee8bdd311c015240e99fa2a5a5f2f26b11b51236a683b39d8c1902e423978", "image": { - "name": "gcr.io/google_containers/exechealthz-amd64:1.2" + "name": "gcr.io/google_containers/kubernetes-dashboard-amd64:v1.5.1" }, "runtime": "docker" }, @@ -446,21 +409,8 @@ }, "kubernetes": { "container": { - "cpu": { - "request": { - "cores": 0.01 - } - }, - "id": "docker://52fa55e051dc5b68e44c027588685b7edd85aaa03b07f7216d399249ff4fc821", - "memory": { - "limit": { - "bytes": 52428800 - }, - "request": { - "bytes": 52428800 - } - }, - "name": "healthz", + "id": "3aaee8bdd311c015240e99fa2a5a5f2f26b11b51236a683b39d8c1902e423978", + "name": "kubernetes-dashboard", "status": { "phase": "running", "ready": true, @@ -472,7 +422,7 @@ "name": "minikube" }, "pod": { - "name": "kube-dns-v20-5g5cb" + "name": "kubernetes-dashboard-vw0l6" } }, "metricset": { @@ -499,7 +449,7 @@ }, "kubernetes": { "container": { - "id": "docker://9a4c9462cd078d7be4f0a9b94bcfeb69d5fdd76bff67142df3f58367ac7e8d61", + "id": "9a4c9462cd078d7be4f0a9b94bcfeb69d5fdd76bff67142df3f58367ac7e8d61", "name": "dnsmasq", "status": { "phase": "running", @@ -523,5 +473,55 @@ "address": "127.0.0.1:55555", "type": "kubernetes" } + }, + { + "container": { + "id": "e2ee1c2c7b8d4e5fd8c834b83cba8377d6b0e39da18157688ccc1a06b7c53117", + "image": { + "name": "jenkinsci/jenkins:2.46.1" + }, + "runtime": "docker" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.2 + } + }, + "id": "e2ee1c2c7b8d4e5fd8c834b83cba8377d6b0e39da18157688ccc1a06b7c53117", + "memory": { + "request": { + "bytes": 268435456 + } + }, + "name": "wise-lynx-jenkins", + "status": { + "phase": "running", + "ready": true, + "restarts": 1 + } + }, + "namespace": "jenkins", + "node": { + "name": "minikube" + }, + "pod": { + "name": "wise-lynx-jenkins-1616735317-svn6k" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } } ] \ No newline at end of file diff --git a/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm.v2.4.2.plain-expected.json b/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm.v2.4.2.plain-expected.json new file mode 100644 index 000000000000..b84bf9457002 --- /dev/null +++ b/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm.v2.4.2.plain-expected.json @@ -0,0 +1,683 @@ +[ + { + "container": { + "id": "db273ae4a6486d1e52dda314a8d0ce84d9014ce5e0f9c94812119a73d579e2fc", + "image": { + "name": "docker.io/kindest/kindnetd:v20221004-44d545d1" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "limit": { + "cores": 0.1 + }, + "request": { + "cores": 0.1 + } + }, + "id": "db273ae4a6486d1e52dda314a8d0ce84d9014ce5e0f9c94812119a73d579e2fc", + "memory": { + "limit": { + "bytes": 52428800 + }, + "request": { + "bytes": 52428800 + } + }, + "name": "kindnet-cni", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kindnet-4tnzw" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "e2738582ad159bb495172b9571bed309f16f3a5977ca6fd9184e89700369d22b", + "image": { + "name": "registry.k8s.io/etcd:3.5.4-0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "e2738582ad159bb495172b9571bed309f16f3a5977ca6fd9184e89700369d22b", + "memory": { + "request": { + "bytes": 104857600 + } + }, + "name": "etcd", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "etcd-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "6f8e923de52f2af9aa23e91b97bf5f45dc6c631aa950c0a3782f847634bbe60b", + "image": { + "name": "registry.k8s.io/coredns/coredns:v1.9.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "6f8e923de52f2af9aa23e91b97bf5f45dc6c631aa950c0a3782f847634bbe60b", + "memory": { + "limit": { + "bytes": 178257920 + }, + "request": { + "bytes": 73400320 + } + }, + "name": "coredns", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "coredns-565d847f94-dgwk8" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "003627b6d02209f47b06938519f61ca8d3baf740f2f04866bfeb9f7d4533e997", + "image": { + "name": "docker.io/kindest/local-path-provisioner:v0.0.22-kind.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "003627b6d02209f47b06938519f61ca8d3baf740f2f04866bfeb9f7d4533e997", + "name": "local-path-provisioner", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "local-path-storage", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "local-path-provisioner-684f458cdd-wvdbd" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "f2aa38ca30cec5c42fae07ed5cda3046f9392c2a93624815542881ace6aa3ad2", + "image": { + "name": "registry.k8s.io/kube-scheduler:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "f2aa38ca30cec5c42fae07ed5cda3046f9392c2a93624815542881ace6aa3ad2", + "name": "kube-scheduler", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-scheduler-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "69a6e1720df542c8a662873e8ad0694c3d120259fa625bf527269c4d4f1bff34", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "69a6e1720df542c8a662873e8ad0694c3d120259fa625bf527269c4d4f1bff34", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27899487-6vx8l" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "26d7459f5f6e7dfce46638648c6bfec8771152583c743ae6a65adf6a3a3419a9", + "image": { + "name": "k8s.gcr.io/kube-state-metrics/kube-state-metrics:v2.4.2" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "26d7459f5f6e7dfce46638648c6bfec8771152583c743ae6a65adf6a3a3419a9", + "name": "kube-state-metrics", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-state-metrics-77bcd445dd-tnbvx" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "cbc3ddaeb5fda1bbd6063297b75340fc69063f9247d6cc3de20a92438b961e1f", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "cbc3ddaeb5fda1bbd6063297b75340fc69063f9247d6cc3de20a92438b961e1f", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27899488-mctvl" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "01e704051af1b269270266aa05b6f330d16d88da286600c34744f7abb23618a8", + "image": { + "name": "registry.k8s.io/kube-apiserver:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.25 + } + }, + "id": "01e704051af1b269270266aa05b6f330d16d88da286600c34744f7abb23618a8", + "name": "kube-apiserver", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-apiserver-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "9a7de41e53002ae76fe82103317edb4565ce383e3bf0395b796b4486ebc70d05", + "image": { + "name": "registry.k8s.io/kube-proxy:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "9a7de41e53002ae76fe82103317edb4565ce383e3bf0395b796b4486ebc70d05", + "name": "kube-proxy", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-proxy-flrd6" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "94e7f7b11c08aa225de5477d74f9780548626cb49e60f29b9a7a3fd1d5c27df8", + "image": { + "name": "docker.elastic.co/beats/metricbeat:8.6.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "94e7f7b11c08aa225de5477d74f9780548626cb49e60f29b9a7a3fd1d5c27df8", + "memory": { + "limit": { + "bytes": 209715200 + }, + "request": { + "bytes": 104857600 + } + }, + "name": "metricbeat", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "metricbeat-h24sg" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "30514fd6f76760a37d429af91f1d84301b9d1bae00a4b6c2845f07ab8b86eb30", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "30514fd6f76760a37d429af91f1d84301b9d1bae00a4b6c2845f07ab8b86eb30", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27899489-sl9hn" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "image": { + "name": "perl:5.34.0" + } + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "name": "pi", + "status": { + "phase": "waiting", + "ready": false, + "reason": "ContainerCreating", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "pi-m88dn" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "849233d7c0fa232729cb223a66d8fb6287feadf4e4369201067397c92d413fe6", + "image": { + "name": "registry.k8s.io/coredns/coredns:v1.9.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "849233d7c0fa232729cb223a66d8fb6287feadf4e4369201067397c92d413fe6", + "memory": { + "limit": { + "bytes": 178257920 + }, + "request": { + "bytes": 73400320 + } + }, + "name": "coredns", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "coredns-565d847f94-q2mmv" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "548badac9b0ece0c96e7222138e40aa7b9e47832cab06dc84f45a7591ec378cb", + "image": { + "name": "registry.k8s.io/kube-controller-manager:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.2 + } + }, + "id": "548badac9b0ece0c96e7222138e40aa7b9e47832cab06dc84f45a7591ec378cb", + "name": "kube-controller-manager", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-controller-manager-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + } +] \ No newline at end of file diff --git a/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm.v2.5.0.plain-expected.json b/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm.v2.5.0.plain-expected.json new file mode 100644 index 000000000000..25a54f795dd0 --- /dev/null +++ b/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm.v2.5.0.plain-expected.json @@ -0,0 +1,686 @@ +[ + { + "container": { + "id": "db273ae4a6486d1e52dda314a8d0ce84d9014ce5e0f9c94812119a73d579e2fc", + "image": { + "name": "docker.io/kindest/kindnetd:v20221004-44d545d1" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "limit": { + "cores": 0.1 + }, + "request": { + "cores": 0.1 + } + }, + "id": "db273ae4a6486d1e52dda314a8d0ce84d9014ce5e0f9c94812119a73d579e2fc", + "memory": { + "limit": { + "bytes": 52428800 + }, + "request": { + "bytes": 52428800 + } + }, + "name": "kindnet-cni", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kindnet-4tnzw" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "e2738582ad159bb495172b9571bed309f16f3a5977ca6fd9184e89700369d22b", + "image": { + "name": "registry.k8s.io/etcd:3.5.4-0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "e2738582ad159bb495172b9571bed309f16f3a5977ca6fd9184e89700369d22b", + "memory": { + "request": { + "bytes": 104857600 + } + }, + "name": "etcd", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "etcd-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "6f8e923de52f2af9aa23e91b97bf5f45dc6c631aa950c0a3782f847634bbe60b", + "image": { + "name": "registry.k8s.io/coredns/coredns:v1.9.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "6f8e923de52f2af9aa23e91b97bf5f45dc6c631aa950c0a3782f847634bbe60b", + "memory": { + "limit": { + "bytes": 178257920 + }, + "request": { + "bytes": 73400320 + } + }, + "name": "coredns", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "coredns-565d847f94-dgwk8" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "003627b6d02209f47b06938519f61ca8d3baf740f2f04866bfeb9f7d4533e997", + "image": { + "name": "docker.io/kindest/local-path-provisioner:v0.0.22-kind.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "003627b6d02209f47b06938519f61ca8d3baf740f2f04866bfeb9f7d4533e997", + "name": "local-path-provisioner", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "local-path-storage", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "local-path-provisioner-684f458cdd-wvdbd" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "f2aa38ca30cec5c42fae07ed5cda3046f9392c2a93624815542881ace6aa3ad2", + "image": { + "name": "registry.k8s.io/kube-scheduler:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "f2aa38ca30cec5c42fae07ed5cda3046f9392c2a93624815542881ace6aa3ad2", + "name": "kube-scheduler", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-scheduler-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "01e704051af1b269270266aa05b6f330d16d88da286600c34744f7abb23618a8", + "image": { + "name": "registry.k8s.io/kube-apiserver:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.25 + } + }, + "id": "01e704051af1b269270266aa05b6f330d16d88da286600c34744f7abb23618a8", + "name": "kube-apiserver", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-apiserver-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "9a7de41e53002ae76fe82103317edb4565ce383e3bf0395b796b4486ebc70d05", + "image": { + "name": "registry.k8s.io/kube-proxy:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "9a7de41e53002ae76fe82103317edb4565ce383e3bf0395b796b4486ebc70d05", + "name": "kube-proxy", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-proxy-flrd6" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "94e7f7b11c08aa225de5477d74f9780548626cb49e60f29b9a7a3fd1d5c27df8", + "image": { + "name": "docker.elastic.co/beats/metricbeat:8.6.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "94e7f7b11c08aa225de5477d74f9780548626cb49e60f29b9a7a3fd1d5c27df8", + "memory": { + "limit": { + "bytes": 209715200 + }, + "request": { + "bytes": 104857600 + } + }, + "name": "metricbeat", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "metricbeat-h24sg" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "e937b71f248fd8327b1261ba9d7f8c52be4377ae374c24ddc6911cb8ab918687", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "e937b71f248fd8327b1261ba9d7f8c52be4377ae374c24ddc6911cb8ab918687", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27899499-k5d56" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "3ba2b0ddb34668d521831c06e4c0553e3f93458738356e97647837a13eda1063", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "3ba2b0ddb34668d521831c06e4c0553e3f93458738356e97647837a13eda1063", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27899497-ffm4g" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "4c58768671aab3b73013a030c4125c8f9d39d51772a3c75df19c84bc055094ed", + "image": { + "name": "k8s.gcr.io/kube-state-metrics/kube-state-metrics:v2.5.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "4c58768671aab3b73013a030c4125c8f9d39d51772a3c75df19c84bc055094ed", + "name": "kube-state-metrics", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-state-metrics-8595684f78-ppcnj" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "f315b3d7ed76c1a93eb20f2adfdbd0783a235c8714fb26462eb9a555427d0246", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "f315b3d7ed76c1a93eb20f2adfdbd0783a235c8714fb26462eb9a555427d0246", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27899498-q8cl7" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "849233d7c0fa232729cb223a66d8fb6287feadf4e4369201067397c92d413fe6", + "image": { + "name": "registry.k8s.io/coredns/coredns:v1.9.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "849233d7c0fa232729cb223a66d8fb6287feadf4e4369201067397c92d413fe6", + "memory": { + "limit": { + "bytes": 178257920 + }, + "request": { + "bytes": 73400320 + } + }, + "name": "coredns", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "coredns-565d847f94-q2mmv" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "b1ca049c0844dbb44840975d0fb8e0cfd90eeec664bfbc5e0e70d2e2ac47d839", + "image": { + "name": "docker.io/library/perl:5.34.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "b1ca049c0844dbb44840975d0fb8e0cfd90eeec664bfbc5e0e70d2e2ac47d839", + "name": "pi", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "pi-m88dn" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "548badac9b0ece0c96e7222138e40aa7b9e47832cab06dc84f45a7591ec378cb", + "image": { + "name": "registry.k8s.io/kube-controller-manager:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.2 + } + }, + "id": "548badac9b0ece0c96e7222138e40aa7b9e47832cab06dc84f45a7591ec378cb", + "name": "kube-controller-manager", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-controller-manager-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + } +] \ No newline at end of file diff --git a/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm.v2.6.0.plain-expected.json b/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm.v2.6.0.plain-expected.json new file mode 100644 index 000000000000..ec45e07bc984 --- /dev/null +++ b/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm.v2.6.0.plain-expected.json @@ -0,0 +1,726 @@ +[ + { + "container": { + "id": "db273ae4a6486d1e52dda314a8d0ce84d9014ce5e0f9c94812119a73d579e2fc", + "image": { + "name": "docker.io/kindest/kindnetd:v20221004-44d545d1" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "limit": { + "cores": 0.1 + }, + "request": { + "cores": 0.1 + } + }, + "id": "db273ae4a6486d1e52dda314a8d0ce84d9014ce5e0f9c94812119a73d579e2fc", + "memory": { + "limit": { + "bytes": 52428800 + }, + "request": { + "bytes": 52428800 + } + }, + "name": "kindnet-cni", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kindnet-4tnzw" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "e2738582ad159bb495172b9571bed309f16f3a5977ca6fd9184e89700369d22b", + "image": { + "name": "registry.k8s.io/etcd:3.5.4-0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "e2738582ad159bb495172b9571bed309f16f3a5977ca6fd9184e89700369d22b", + "memory": { + "request": { + "bytes": 104857600 + } + }, + "name": "etcd", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "etcd-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "6f8e923de52f2af9aa23e91b97bf5f45dc6c631aa950c0a3782f847634bbe60b", + "image": { + "name": "registry.k8s.io/coredns/coredns:v1.9.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "6f8e923de52f2af9aa23e91b97bf5f45dc6c631aa950c0a3782f847634bbe60b", + "memory": { + "limit": { + "bytes": 178257920 + }, + "request": { + "bytes": 73400320 + } + }, + "name": "coredns", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "coredns-565d847f94-dgwk8" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "003627b6d02209f47b06938519f61ca8d3baf740f2f04866bfeb9f7d4533e997", + "image": { + "name": "docker.io/kindest/local-path-provisioner:v0.0.22-kind.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "003627b6d02209f47b06938519f61ca8d3baf740f2f04866bfeb9f7d4533e997", + "name": "local-path-provisioner", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "local-path-storage", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "local-path-provisioner-684f458cdd-wvdbd" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "f2aa38ca30cec5c42fae07ed5cda3046f9392c2a93624815542881ace6aa3ad2", + "image": { + "name": "registry.k8s.io/kube-scheduler:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "f2aa38ca30cec5c42fae07ed5cda3046f9392c2a93624815542881ace6aa3ad2", + "name": "kube-scheduler", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-scheduler-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "cfcec5447b0a83749e71ac33db2b97db3271f576281f51daf50b3cd3220353af", + "image": { + "name": "registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.6.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "cfcec5447b0a83749e71ac33db2b97db3271f576281f51daf50b3cd3220353af", + "name": "kube-state-metrics", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-state-metrics-5897f6cf77-jq242" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "01e704051af1b269270266aa05b6f330d16d88da286600c34744f7abb23618a8", + "image": { + "name": "registry.k8s.io/kube-apiserver:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.25 + } + }, + "id": "01e704051af1b269270266aa05b6f330d16d88da286600c34744f7abb23618a8", + "name": "kube-apiserver", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-apiserver-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "9a7de41e53002ae76fe82103317edb4565ce383e3bf0395b796b4486ebc70d05", + "image": { + "name": "registry.k8s.io/kube-proxy:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "9a7de41e53002ae76fe82103317edb4565ce383e3bf0395b796b4486ebc70d05", + "name": "kube-proxy", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-proxy-flrd6" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "94e7f7b11c08aa225de5477d74f9780548626cb49e60f29b9a7a3fd1d5c27df8", + "image": { + "name": "docker.elastic.co/beats/metricbeat:8.6.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "94e7f7b11c08aa225de5477d74f9780548626cb49e60f29b9a7a3fd1d5c27df8", + "memory": { + "limit": { + "bytes": 209715200 + }, + "request": { + "bytes": 104857600 + } + }, + "name": "metricbeat", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "metricbeat-h24sg" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "e937b71f248fd8327b1261ba9d7f8c52be4377ae374c24ddc6911cb8ab918687", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "e937b71f248fd8327b1261ba9d7f8c52be4377ae374c24ddc6911cb8ab918687", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27899499-k5d56" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "89392d8ac34feb009401e4d3b1e8f19293b952355f8c8a6b54a0e19ad74c5892", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "89392d8ac34feb009401e4d3b1e8f19293b952355f8c8a6b54a0e19ad74c5892", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27899500-skmng" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "d1149ce4c5c9fed787e0858c53f2e78c6f739dd48db2845f315287efd1c7f54e", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "d1149ce4c5c9fed787e0858c53f2e78c6f739dd48db2845f315287efd1c7f54e", + "name": "hello-cronjob", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27899501-t2lnn" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "f315b3d7ed76c1a93eb20f2adfdbd0783a235c8714fb26462eb9a555427d0246", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "f315b3d7ed76c1a93eb20f2adfdbd0783a235c8714fb26462eb9a555427d0246", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27899498-q8cl7" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "849233d7c0fa232729cb223a66d8fb6287feadf4e4369201067397c92d413fe6", + "image": { + "name": "registry.k8s.io/coredns/coredns:v1.9.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "849233d7c0fa232729cb223a66d8fb6287feadf4e4369201067397c92d413fe6", + "memory": { + "limit": { + "bytes": 178257920 + }, + "request": { + "bytes": 73400320 + } + }, + "name": "coredns", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "coredns-565d847f94-q2mmv" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "b1ca049c0844dbb44840975d0fb8e0cfd90eeec664bfbc5e0e70d2e2ac47d839", + "image": { + "name": "docker.io/library/perl:5.34.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "b1ca049c0844dbb44840975d0fb8e0cfd90eeec664bfbc5e0e70d2e2ac47d839", + "name": "pi", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "pi-m88dn" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "548badac9b0ece0c96e7222138e40aa7b9e47832cab06dc84f45a7591ec378cb", + "image": { + "name": "registry.k8s.io/kube-controller-manager:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.2 + } + }, + "id": "548badac9b0ece0c96e7222138e40aa7b9e47832cab06dc84f45a7591ec378cb", + "name": "kube-controller-manager", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-controller-manager-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + } +] \ No newline at end of file diff --git a/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm.v2.7.0.plain-expected.json b/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm.v2.7.0.plain-expected.json new file mode 100644 index 000000000000..0bc2879952d5 --- /dev/null +++ b/metricbeat/module/kubernetes/state_container/_meta/testdata/ksm.v2.7.0.plain-expected.json @@ -0,0 +1,686 @@ +[ + { + "container": { + "id": "db273ae4a6486d1e52dda314a8d0ce84d9014ce5e0f9c94812119a73d579e2fc", + "image": { + "name": "docker.io/kindest/kindnetd:v20221004-44d545d1" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "limit": { + "cores": 0.1 + }, + "request": { + "cores": 0.1 + } + }, + "id": "db273ae4a6486d1e52dda314a8d0ce84d9014ce5e0f9c94812119a73d579e2fc", + "memory": { + "limit": { + "bytes": 52428800 + }, + "request": { + "bytes": 52428800 + } + }, + "name": "kindnet-cni", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kindnet-4tnzw" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "e2738582ad159bb495172b9571bed309f16f3a5977ca6fd9184e89700369d22b", + "image": { + "name": "registry.k8s.io/etcd:3.5.4-0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "e2738582ad159bb495172b9571bed309f16f3a5977ca6fd9184e89700369d22b", + "memory": { + "request": { + "bytes": 104857600 + } + }, + "name": "etcd", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "etcd-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "6f8e923de52f2af9aa23e91b97bf5f45dc6c631aa950c0a3782f847634bbe60b", + "image": { + "name": "registry.k8s.io/coredns/coredns:v1.9.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "6f8e923de52f2af9aa23e91b97bf5f45dc6c631aa950c0a3782f847634bbe60b", + "memory": { + "limit": { + "bytes": 178257920 + }, + "request": { + "bytes": 73400320 + } + }, + "name": "coredns", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "coredns-565d847f94-dgwk8" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "18bddca29930370d9cfa083969de095894f7b77b5c63fd0712128ea7de6c64fd", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "18bddca29930370d9cfa083969de095894f7b77b5c63fd0712128ea7de6c64fd", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27900587-r7g6w" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "003627b6d02209f47b06938519f61ca8d3baf740f2f04866bfeb9f7d4533e997", + "image": { + "name": "docker.io/kindest/local-path-provisioner:v0.0.22-kind.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "003627b6d02209f47b06938519f61ca8d3baf740f2f04866bfeb9f7d4533e997", + "name": "local-path-provisioner", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "local-path-storage", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "local-path-provisioner-684f458cdd-wvdbd" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "f2aa38ca30cec5c42fae07ed5cda3046f9392c2a93624815542881ace6aa3ad2", + "image": { + "name": "registry.k8s.io/kube-scheduler:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "f2aa38ca30cec5c42fae07ed5cda3046f9392c2a93624815542881ace6aa3ad2", + "name": "kube-scheduler", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-scheduler-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "01e704051af1b269270266aa05b6f330d16d88da286600c34744f7abb23618a8", + "image": { + "name": "registry.k8s.io/kube-apiserver:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.25 + } + }, + "id": "01e704051af1b269270266aa05b6f330d16d88da286600c34744f7abb23618a8", + "name": "kube-apiserver", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-apiserver-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "f8e2e2fe9a308d4e81707c0a2daa53424a862e8889601ac7307a54e6aae03612", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "f8e2e2fe9a308d4e81707c0a2daa53424a862e8889601ac7307a54e6aae03612", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27900585-6zngl" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "9a7de41e53002ae76fe82103317edb4565ce383e3bf0395b796b4486ebc70d05", + "image": { + "name": "registry.k8s.io/kube-proxy:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "9a7de41e53002ae76fe82103317edb4565ce383e3bf0395b796b4486ebc70d05", + "name": "kube-proxy", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-proxy-flrd6" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "bbecc08bbf0158bdc85f4ed006cddbf40f51d7348ce5cbd95e86d367d20e8fbb", + "image": { + "name": "docker.elastic.co/beats/metricbeat:8.6.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "bbecc08bbf0158bdc85f4ed006cddbf40f51d7348ce5cbd95e86d367d20e8fbb", + "memory": { + "limit": { + "bytes": 209715200 + }, + "request": { + "bytes": 104857600 + } + }, + "name": "metricbeat", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "metricbeat-6xfvl" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "d58ac7bcd7b24a58132d3021f13301d2a0995e74f98596956e8f20e19029f2be", + "image": { + "name": "registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.7.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "d58ac7bcd7b24a58132d3021f13301d2a0995e74f98596956e8f20e19029f2be", + "name": "kube-state-metrics", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-state-metrics-548546fc89-qrkzb" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "77d181df6b24476654d367bdcadc543c65371de07cc71044fc8a0bafc20a2105", + "image": { + "name": "docker.io/library/busybox:1.28" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "77d181df6b24476654d367bdcadc543c65371de07cc71044fc8a0bafc20a2105", + "name": "hello-cronjob", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "hello-cronjob-27900586-psw5h" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "849233d7c0fa232729cb223a66d8fb6287feadf4e4369201067397c92d413fe6", + "image": { + "name": "registry.k8s.io/coredns/coredns:v1.9.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.1 + } + }, + "id": "849233d7c0fa232729cb223a66d8fb6287feadf4e4369201067397c92d413fe6", + "memory": { + "limit": { + "bytes": 178257920 + }, + "request": { + "bytes": 73400320 + } + }, + "name": "coredns", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "coredns-565d847f94-q2mmv" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "b1ca049c0844dbb44840975d0fb8e0cfd90eeec664bfbc5e0e70d2e2ac47d839", + "image": { + "name": "docker.io/library/perl:5.34.0" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "id": "b1ca049c0844dbb44840975d0fb8e0cfd90eeec664bfbc5e0e70d2e2ac47d839", + "name": "pi", + "status": { + "phase": "terminated", + "ready": false, + "reason": "Completed", + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "pi-m88dn" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + }, + { + "container": { + "id": "548badac9b0ece0c96e7222138e40aa7b9e47832cab06dc84f45a7591ec378cb", + "image": { + "name": "registry.k8s.io/kube-controller-manager:v1.25.3" + }, + "runtime": "containerd" + }, + "event": { + "dataset": "kubernetes.container", + "duration": 115000, + "module": "kubernetes" + }, + "kubernetes": { + "container": { + "cpu": { + "request": { + "cores": 0.2 + } + }, + "id": "548badac9b0ece0c96e7222138e40aa7b9e47832cab06dc84f45a7591ec378cb", + "name": "kube-controller-manager", + "status": { + "phase": "running", + "ready": true, + "restarts": 0 + } + }, + "namespace": "kube-system", + "node": { + "name": "kind-control-plane" + }, + "pod": { + "name": "kube-controller-manager-kind-control-plane" + } + }, + "metricset": { + "name": "state_container", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "kubernetes" + } + } +] \ No newline at end of file diff --git a/metricbeat/module/kubernetes/state_container/state_container.go b/metricbeat/module/kubernetes/state_container/state_container.go index 3bef1fde4529..1364e2ff883e 100644 --- a/metricbeat/module/kubernetes/state_container/state_container.go +++ b/metricbeat/module/kubernetes/state_container/state_container.go @@ -156,7 +156,10 @@ func (m *MetricSet) Fetch(reporter mb.ReporterV2) error { if split != -1 { kubernetes.ShouldPut(containerFields, "runtime", cID[:split], m.Logger()) + // Add splitted container.id ECS field and update kubernetes.container.id with splitted value kubernetes.ShouldPut(containerFields, "id", cID[split+3:], m.Logger()) + kubernetes.ShouldPut(event, "id", cID[split+3:], m.Logger()) + } } if containerImage, ok := event["image"]; ok { diff --git a/metricbeat/module/kubernetes/util/kubernetes.go b/metricbeat/module/kubernetes/util/kubernetes.go index 824531f2ddd9..0abee1a1c718 100644 --- a/metricbeat/module/kubernetes/util/kubernetes.go +++ b/metricbeat/module/kubernetes/util/kubernetes.go @@ -277,7 +277,7 @@ func NewContainerMetadataEnricher( if !ok { base.Logger().Debugf("Error while casting event: %s", ok) } - meta := metaGen.Generate(pod) + pmeta := metaGen.Generate(pod) statuses := make(map[string]*kubernetes.PodContainerStatus) mapStatuses := func(s []kubernetes.PodContainerStatus) { @@ -293,6 +293,7 @@ func NewContainerMetadataEnricher( podStore, _ := nodeStore.AddPodStore(podId) for _, container := range append(pod.Spec.Containers, pod.Spec.InitContainers...) { + cmeta := mapstr.M{} metrics := NewContainerMetrics() if cpu, ok := container.Resources.Limits["cpu"]; ok { @@ -314,14 +315,15 @@ func NewContainerMetadataEnricher( // which is in the form of :// split := strings.Index(s.ContainerID, "://") if split != -1 { - kubernetes2.ShouldPut(meta, "container.id", s.ContainerID[split+3:], base.Logger()) + kubernetes2.ShouldPut(cmeta, "container.id", s.ContainerID[split+3:], base.Logger()) - kubernetes2.ShouldPut(meta, "container.runtime", s.ContainerID[:split], base.Logger()) + kubernetes2.ShouldPut(cmeta, "container.runtime", s.ContainerID[:split], base.Logger()) } } id := join(pod.GetObjectMeta().GetNamespace(), pod.GetObjectMeta().GetName(), container.Name) - m[id] = meta + cmeta.DeepUpdate(pmeta) + m[id] = cmeta } }, // delete