Azure Kubernetes
Overview
The Kubernetes integration with Motadata AIOps offers comprehensive visibility into the performance and health of Kubernetes clusters. It provides key metrics across several categories, including container health, node resource utilization, pod performance, service health, and deployment statuses. These KPIs cover resource utilization (CPU, memory, storage), container and pod status, service performance, and overall system health, allowing for proactive monitoring and efficient management.
The section below outlines all supported Kubernetes KPIs grouped by their respective categories, with detailed descriptions and data types.
List of Supported KPIs
System Information
| Metric | Description | Type |
|---|---|---|
| kubernetes.client.git.version | Git version of the Kubernetes client | String |
| kubernetes.server.git.version | Git version of the Kubernetes server | String |
| kubernetes.active.master.node | Active master node of the Kubernetes cluster | String |
Kubernetes Container
| Metric | Description | Type |
|---|---|---|
| kubernetes.containers | Count of containers in the cluster | Count |
| kubernetes.container | Identifier for the container | String |
| kubernetes.container.name | Name of the container | String |
| kubernetes.container.node.name | Node where the container is running | String |
| kubernetes.container.image | Container image used | String |
| kubernetes.container.status | Current status of the container | String |
| kubernetes.container.creation.time | Creation time of the container | Timestamp |
| kubernetes.container.pod.name | Name of the pod to which the container belongs | String |
| kubernetes.container.restarts | Number of times the container has restarted | Count |
| kubernetes.container.ports | Ports exposed by the container | String |
| kubernetes.container.volume.mounts | Mounted volumes in the container | String |
| kubernetes.container.cpu.limit.percent | CPU limit for the container in percentage | Percent |
| kubernetes.container.cpu.request.percent | CPU request for the container in percentage | Percent |
| kubernetes.container.memory.limit.percent | Memory limit for the container in percentage | Percent |
| kubernetes.container.memory.request.percent | Memory request for the container in percentage | Percent |
| kubernetes.container.cpu.percent | CPU usage percentage of the container | Percent |
| kubernetes.container.memory.bytes | Memory usage of the container in bytes | Bytes |
Kubernetes Namespace
| Metric | Description | Type |
|---|---|---|
| kubernetes.namespaces | Total number of namespaces in the cluster | Count |
| kubernetes.namespace | Namespace identifier | String |
| kubernetes.namespace.status | Current status of the namespace | String |
| kubernetes.namespace.pods | Total number of pods in the namespace | Count |
| kubernetes.namespace.running.pods | Pods that are currently running in the namespace | Count |
| kubernetes.namespace.succeeded.pods | Pods that have succeeded in the namespace | Count |
| kubernetes.namespace.pending.pods | Pods that are pending in the namespace | Count |
| kubernetes.namespace.failed.pods | Pods that have failed in the namespace | Count |
| kubernetes.namespace.unknown.pods | Pods with unknown status in the namespace | Count |
| kubernetes.namespace.creation.time | Creation time of the namespace | Timestamp |
Kubernetes Components
| Metric | Description | Type |
|---|---|---|
| kubernetes.components | Count of components in the cluster | Count |
| kubernetes.component | Component identifier | String |
| kubernetes.component.status | Status of the component | String |
| kubernetes.component.message | Status message of the component | String |
Kubernetes Jobs
| Metric | Description | Type |
|---|---|---|
| kubernetes.jobs | Total number of jobs in the cluster | Count |
| kubernetes.job | Job identifier | String |
| kubernetes.job.name | Name of the job | String |
| kubernetes.job.namespace | Namespace of the job | String |
| kubernetes.job.status | Current status of the job | String |
| kubernetes.job.started.time | Start time of the job | Timestamp |
| kubernetes.job.completion.time | Completion time of the job | Timestamp |
| kubernetes.job.duration | Duration of the job execution | Seconds |
Kubernetes Nodes
| Metric | Description | Type |
|---|---|---|
| kubernetes.nodes | Total number of nodes in the cluster | Count |
| kubernetes.master.nodes | Count of master nodes in the cluster | Count |
| kubernetes.worker.nodes | Count of worker nodes in the cluster | Count |
| kubernetes.node | Node identifier | String |
| kubernetes.node.ip | IP address of the node | String |
| kubernetes.node.status | Status of the node | String |
| kubernetes.node.type | Type of the node (e.g., Master, Worker) | String |
| kubernetes.node.creation.time | Creation time of the node | Timestamp |
| kubernetes.node.pods | Total number of pods running on the node | Count |
| kubernetes.node.cpu.allocatable.cores | Number of allocatable CPU cores | Count |
| kubernetes.node.memory.allocatable.bytes | Allocatable memory in bytes | Bytes |
| kubernetes.node.ephemeral.storage.allocatable.bytes | Allocatable ephemeral storage in bytes | Bytes |
| kubernetes.node.allocatable.pods | Number of pods that can be allocated to the node | Count |
| kubernetes.node.containers | Number of containers running on the node | Count |
| kubernetes.node.container.runtime.version | Container runtime version on the node | String |
| kubernetes.node.memory.used.bytes | Used memory on the node in bytes | Bytes |
| kubernetes.node.memory.available.bytes | Available memory on the node in bytes | Bytes |
| kubernetes.node.cpu.used.cores | CPU usage in cores on the node | Count |
| kubernetes.node.cpu.limit.percent | CPU limit in percentage for the node | Percent |
| kubernetes.node.cpu.request.percent | CPU request in percentage for the node | Percent |
| kubernetes.node.memory.limit.percent | Memory limit in percentage for the node | Percent |
| kubernetes.node.memory.request.percent | Memory request in percentage for the node | Percent |
| kubernetes.node.cpu.percent | CPU usage percentage on the node | Percent |
| kubernetes.node.memory.percent | Memory usage percentage on the node | Percent |
| kubernetes.cpu.percent | Overall CPU usage percentage in the cluster | Percent |
| kubernetes.memory.percent | Overall memory usage percentage in the cluster | Percent |
| kubernetes.memory.capacity.bytes | Total memory capacity in the cluster in bytes | Bytes |
| kubernetes.memory.available.bytes | Total available memory in the cluster in bytes | Bytes |
Kubernetes Pods
| Metric | Description | Type |
|---|---|---|
| kubernetes.pods | Total number of pods in the cluster | Count |
| kubernetes.pod | Pod identifier | String |
| kubernetes.pod.name | Name of the pod | String |
| kubernetes.pod.namespace | Namespace of the pod | String |
| kubernetes.pod.containers | Number of containers in the pod | Count |
| kubernetes.pod.status | Current status of the pod | String |
| kubernetes.pod.ip.address | IP address of the pod | String |
| kubernetes.pod.type | Type of the pod (e.g., ReplicaSet, StatefulSet) | String |
| kubernetes.pod.application | Application name associated with the pod | String |
| kubernetes.pod.restarts | Number of restarts of the pod | Count |
| kubernetes.pod.creation.time | Creation time of the pod | Timestamp |
| kubernetes.pod.persistent.volume | Persistent volume attached to the pod | String |
| kubernetes.pod.node.name | Name of the node the pod is running on | String |
| kubernetes.pod.cpu.limit.percent | CPU limit percentage for the pod | Percent |
| kubernetes.pod.cpu.request.percent | CPU request percentage for the pod | Percent |
| kubernetes.pod.memory.limit.percent | Memory limit percentage for the pod | Percent |
| kubernetes.pod.memory.request.percent | Memory request percentage for the pod | Percent |
Kubernetes Services
| Metric | Description | Type |
|---|---|---|
| kubernetes.services | Total number of services in the cluster | Count |
| kubernetes.service | Service identifier | String |
| kubernetes.service.name | Name of the service | String |
| kubernetes.service.namespace | Namespace of the service | String |
| kubernetes.service.application | Application name associated with the service | String |
| kubernetes.service.type | Type of the service (e.g., ClusterIP, LoadBalancer) | String |
| kubernetes.service.cluster.ip.address | Cluster IP address of the service | String |
| kubernetes.service.ports | Ports exposed by the service | String |
| kubernetes.service.creation.time | Creation time of the service | Timestamp |
DaemonSets
| Metric | Description | Type |
|---|---|---|
| kubernetes.daemon.sets | Total number of daemon sets in the cluster | Count |
| kubernetes.daemon.set | Daemon set identifier | String |
| kubernetes.daemon.set.name | Name of the daemon set | String |
| kubernetes.daemon.set.namespace | Namespace of the daemon set | String |
| kubernetes.daemon.set.node.selector | Node selector for the daemon set | String |
| kubernetes.daemon.set.creation.time | Creation time of the daemon set | Timestamp |
| kubernetes.daemon.set.ready.replicas | Ready replicas in the daemon set | Count |
| kubernetes.daemon.set.desired.replicas | Desired replicas in the daemon set | Count |
| kubernetes.daemon.set.available.replicas | Available replicas in the daemon set | Count |
| kubernetes.daemon.set.current.replicas | Current replicas in the daemon set |