Tanzu Kubernetes
Overview
The Tanzu Kubernetes integration with Motadata AIOps enables complete observability into cluster operations by monitoring system information, nodes, pods, containers, services, deployments, replica sets, stateful sets, daemon sets, and jobs. These KPIs help ensure resource utilization, availability, and performance across workloads orchestrated by VMware Tanzu Kubernetes.
Prerequisites
Ensure the following prerequisites are met:
- Tanzu Kubernetes cluster must be reachable from Motadata AIOps.
- API access to the Kubernetes control plane must be enabled.
- A valid kubeconfig or token with required RBAC permissions should be configured.
- The cluster must be added and discovered via the Kubernetes integration module in Motadata AIOps.
List of Supported KPIs
System Information
| Metric | Description | Type |
|---|---|---|
| kubernetes.health.status | Overall health status of the Kubernetes cluster. | String |
| kubernetes.liveness.probe | Status of liveness probes for workloads. | String |
| kubernetes.readiness.probe | Status of readiness probes for workloads. | String |
Kubernetes Container
| Metric | Description | Type |
|---|---|---|
| kubernetes.containers | Total number of containers in the cluster. | Count |
| kubernetes.container | Container identifier. | String |
| kubernetes.container.name | Name of the container. | String |
| kubernetes.container.node.name | Node where the container is running. | String |
| kubernetes.container.image | Image used by the container. | String |
| kubernetes.container.status | Current status of the container. | String |
| kubernetes.container.creation.time | Container creation timestamp. | Timestamp |
| kubernetes.container.pod.name | Pod to which the container belongs. | String |
| kubernetes.container.restarts | Number of container restarts. | Count |
| kubernetes.container.ports | Ports exposed by the container. | Count |
| kubernetes.container.volume.mounts | Volume mounts used by the container. | String |
| kubernetes.container.cpu.limit.percent | CPU limit utilization in percent. | Percent |
| kubernetes.container.cpu.request.percent | CPU request utilization in percent. | Percent |
| kubernetes.container.memory.limit.percent | Memory limit utilization in percent. | Percent |
| kubernetes.container.memory.request.percent | Memory request utilization in percent. | Percent |
| kubernetes.container.cpu.percent | CPU utilization percentage. | Percent |
| kubernetes.container.memory.bytes | Memory usage in bytes. | Bytes |
Kubernetes Namespace
| Metric | Description | Type |
|---|---|---|
| kubernetes.namespaces | Total namespaces in the cluster. | Count |
| kubernetes.namespace | Namespace identifier. | String |
| kubernetes.namespace.status | Current namespace status. | String |
| kubernetes.namespace.pods | Total pods in the namespace. | Count |
| kubernetes.namespace.running.pods | Running pods in the namespace. | Count |
| kubernetes.namespace.succeeded.pods | Succeeded pods in the namespace. | Count |
| kubernetes.namespace.pending.pods | Pending pods in the namespace. | Count |
| kubernetes.namespace.failed.pods | Failed pods in the namespace. | Count |
| kubernetes.namespace.unknown.pods | Pods with unknown state. | Count |
| kubernetes.namespace.creation.time | Namespace creation timestamp. | Timestamp |
Kubernetes Components
| Metric | Description | Type |
|---|---|---|
| kubernetes.components | Total Kubernetes components tracked. | Count |
| kubernetes.component | Component identifier. | String |
| kubernetes.component.status | Current component status. | String |
| kubernetes.component.message | Component-related message output. | String |
Kubernetes Jobs
| Metric | Description | Type |
|---|---|---|
| kubernetes.jobs | Total jobs running 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 | Job start timestamp. | Timestamp |
| kubernetes.job.completion.time | Job completion timestamp. | Timestamp |
| kubernetes.job.duration | Job execution duration. | Seconds |
Kubernetes Nodes
| Metric | Description | Type |
|---|---|---|
| kubernetes.nodes | Total number of nodes. | Count |
| kubernetes.master.nodes | Number of master nodes. | Count |
| kubernetes.worker.nodes | Number of worker nodes. | Count |
| kubernetes.node | Node identifier. | String |
| kubernetes.node.ip | Node IP address. | String |
| kubernetes.node.status | Node status (Ready, NotReady). | String |
| kubernetes.node.type | Node type (Master/Worker). | String |
| kubernetes.node.creation.time | Node creation timestamp. | Timestamp |
| kubernetes.node.pods | Number of pods scheduled on the node. | Count |
| kubernetes.node.cpu.allocatable.cores | 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 | Maximum allocatable pods. | Count |
| kubernetes.node.containers | Number of containers on the node. | Count |
| kubernetes.node.container.runtime.version | Container runtime version. | String |
| kubernetes.node.memory.used.bytes | Memory used on node in bytes. | Bytes |
| kubernetes.node.memory.available.bytes | Available memory in bytes. | Bytes |
| kubernetes.node.cpu.used.cores | CPU cores used. | Count |
| kubernetes.node.cpu.limit.percent | CPU limit utilization in percent. | Percent |
| kubernetes.node.cpu.request.percent | CPU request utilization in percent. | Percent |
| kubernetes.node.memory.limit.percent | Memory limit utilization in percent. | Percent |
| kubernetes.node.memory.request.percent | Memory request utilization in percent. | Percent |
| kubernetes.node.cpu.percent | CPU utilization percent. | Percent |
| kubernetes.node.memory.percent | Memory utilization percent. | Percent |
| kubernetes.cpu.percent | Cluster-wide CPU utilization percent. | Percent |
| kubernetes.memory.percent | Cluster-wide memory utilization percent. | Percent |
| kubernetes.memory.capacity.bytes | Total memory capacity of cluster. | Bytes |
| kubernetes.memory.available.bytes | Available memory capacity of cluster. | Bytes |
Kubernetes Pods
| Metric | Description | Type |
|---|---|---|
| kubernetes.pods | Total pods in the cluster. | Count |
| kubernetes.pod | Pod identifier. | String |
| kubernetes.pod.name | Name of the pod. | String |
| kubernetes.pod.namespace | Namespace where the pod runs. | String |
| kubernetes.pod.containers | Number of containers in the pod. | Count |
| kubernetes.pod.status | Current pod status. | String |
| kubernetes.pod.ip.address | IP address of the pod. | String |
| kubernetes.pod.type | Pod type/application role. | String |
| kubernetes.pod.application | Application served by the pod. | String |
| kubernetes.pod.restarts | Number of pod restarts. | Count |
| kubernetes.pod.creation.time | Pod creation timestamp. | Timestamp |
| kubernetes.pod.persistent.volume | Persistent volume attached to the pod. | String |
| kubernetes.pod.node.name | Node where the pod is scheduled. | String |
| kubernetes.pod.cpu.limit.percent | CPU limit utilization in percent. | Percent |
| kubernetes.pod.cpu.request.percent | CPU request utilization in percent. | Percent |
| kubernetes.pod.memory.limit.percent | Memory limit utilization in percent. | Percent |
| kubernetes.pod.memory.request.percent | Memory request utilization in percent. | Percent |
Kubernetes Services
| Metric | Description | Type |
|---|---|---|
| kubernetes.services | Total services in the cluster. | Count |
| kubernetes.service | Service identifier. | String |
| kubernetes.service.name | Name of the service. | String |
| kubernetes.service.namespace | Namespace where the service is running. | String |
| kubernetes.service.application | Application exposed by the service. | String |
| kubernetes.service.type | Service type (ClusterIP, NodePort, LoadBalancer). | String |
| kubernetes.service.cluster.ip.address | Cluster IP address of the service. | String |
| kubernetes.service.ports | Number of ports exposed by the service. | Count |
| kubernetes.service.creation.time | Service creation timestamp. | Timestamp |
DaemonSets
| Metric | Description | Type |
|---|---|---|
| kubernetes.daemon.sets | Total daemon sets in the cluster. | Count |
| kubernetes.daemon.set | DaemonSet identifier. | String |
| kubernetes.daemon.set.name | Name of the DaemonSet. | String |
| kubernetes.daemon.set.namespace | Namespace of the DaemonSet. | String |
| kubernetes.daemon.set.node.selector | Node selector used by the DaemonSet. | String |
| kubernetes.daemon.set.creation.time | DaemonSet creation timestamp. | Timestamp |
| kubernetes.daemon.set.ready.replicas | Number of ready replicas. | Count |
| kubernetes.daemon.set.desired.replicas | Desired number of replicas. | Count |
| kubernetes.daemon.set.available.replicas | Available replicas. | Count |
| kubernetes.daemon.set.current.replicas | Current replicas. | Count |
| kubernetes.daemon.set.updated.replicas | Updated replicas. | Count |
StatefulSets
| Metric | Description | Type |
|---|---|---|
| kubernetes.stateful.sets | Total stateful sets in the cluster. | Count |
| kubernetes.stateful.set | StatefulSet identifier. | String |
| kubernetes.stateful.set.name | Name of the StatefulSet. | String |
| kubernetes.stateful.set.namespace | Namespace of the StatefulSet. | String |
| kubernetes.stateful.set.replicas | Desired replicas for the StatefulSet. | Count |
| kubernetes.stateful.set.ready.replicas | Ready replicas in the StatefulSet. | Count |
| kubernetes.stateful.set.current.replicas | Current replicas. | Count |
| kubernetes.stateful.set.updated.replicas | Updated replicas. | Count |
| kubernetes.stateful.set.service | Service associated with the StatefulSet. | String |
| kubernetes.stateful.set.creation.time | Creation timestamp of the StatefulSet. | Timestamp |
ReplicaSets
| Metric | Description | Type |
|---|---|---|
| kubernetes.replica.sets | Total replica sets in the cluster. | Count |
| kubernetes.replica.set | ReplicaSet identifier. | String |
| kubernetes.replica.set.name | Name of the ReplicaSet. | String |
| kubernetes.replica.set.namespace | Namespace of the ReplicaSet. | String |
| kubernetes.replica.set.ready.replicas | Number of ready replicas. | Count |
| kubernetes.replica.set.desired.replicas | Desired number of replicas. | Count |
| kubernetes.replica.set.current.replicas | Current number of replicas. | Count |
Deployments
| Metric | Description | Type |
|---|---|---|
| kubernetes.deployments | Total deployments in the cluster. | Count |
| kubernetes.deployment | Deployment identifier. | String |
| kubernetes.deployment.name | Name of the deployment. | String |
| kubernetes.deployment.namespace | Namespace of the deployment. | String |
| kubernetes.deployment.ready.replicas | Ready replicas of the deployment. | Count |
| kubernetes.deployment.replicas | Desired replicas of the deployment. | Count |
| kubernetes.deployment.available.replicas | Available replicas of the deployment. | Count |