K8s Resource Visualizer

Visualize Kubernetes resource relationships as a graph from YAML manifests

Enter your Kubernetes YAML manifests to visualize resource relationships

What is the K8s Resource Visualizer?

The K8s Resource Visualizer is a client-side tool that parses your Kubernetes YAML manifests and builds a resource relationship graph. It shows how Deployments, Services, Pods, ConfigMaps, Secrets, and Ingress resources are connected — displaying the topology as an indented tree structure for quick understanding of your cluster architecture.

How to Use

  1. Paste your Kubernetes YAML manifests into the input field (multi-document YAML supported)
  2. Click "Visualize" or wait for automatic processing
  3. Review the resource relationship graph showing how resources are connected
  4. Copy the graph output for documentation or sharing

Example: Application Stack

This multi-document manifest shows a typical web application with connected resources:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: web-ingress
spec:
  rules:
    - host: app.example.com
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: web-service
                port:
                  number: 80
---
apiVersion: v1
kind: Service
metadata:
  name: web-service
spec:
  selector:
    app: web-app
  ports:
    - port: 80
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: web-app
  labels:
    app: web-app
spec:
  selector:
    matchLabels:
      app: web-app
  template:
    metadata:
      labels:
        app: web-app
    spec:
      containers:
        - name: web
          image: nginx:1.25

Detected Relationships

  • Ingress → Service — Ingress routes external traffic to Services via backend rules
  • Service → Pods/Deployments — Services route traffic to Pods matching their label selector
  • Deployment → ReplicaSet — Deployments manage ReplicaSets via matchLabels
  • ReplicaSet → Pod — ReplicaSets manage Pods via label selectors
  • Workload → ConfigMap — Workloads use ConfigMaps via volumes or envFrom
  • Workload → Secret — Workloads use Secrets via volumes, envFrom, or valueFrom

Reading the Graph Output

The graph is displayed as an indented tree. Root nodes (typically Ingress or Services with no incoming connections) appear at the top level. Child resources are indented below with tree connectors. Labels like [routes-to], [manages], and [uses] indicate the type of connection between resources.

Performance for Large Manifests

For manifests larger than 50KB, graph building is automatically offloaded to a Web Worker to keep the UI responsive. This means you can visualize complex multi-service architectures without the page freezing. Input is limited to 5MB maximum.

Use Cases

  • Understand relationships in unfamiliar Kubernetes deployments
  • Verify that Services correctly target the intended Pods
  • Check that Ingress rules point to the right Services
  • Confirm ConfigMap and Secret references are correct
  • Document cluster topology for team onboarding
  • Review pull requests that modify multiple K8s resources

Privacy and Security

All processing happens entirely in your browser using JavaScript. Your Kubernetes manifests — which may contain internal service names, namespace details, environment variables, and infrastructure topology — are never transmitted to any server. No data is stored, logged, or shared.

Frequently Asked Questions

What does the K8s Resource Visualizer do?

The K8s Resource Visualizer parses Kubernetes YAML manifests and builds a resource relationship graph. It shows how Deployments, Services, Pods, ConfigMaps, Secrets, and Ingress resources are connected — displaying the relationships as an indented tree structure so you can understand your cluster topology at a glance.

What relationships does it detect?

The visualizer detects several relationship types: Deployments managing ReplicaSets, ReplicaSets managing Pods (via label selectors), Services routing traffic to Pods or workloads (via selector matching), Ingress resources routing to Services (via backend rules), and ConfigMaps/Secrets used by workloads (via volumes, envFrom, and valueFrom references).

Does it support multi-document YAML files?

Yes. The visualizer fully supports multi-document YAML separated by --- delimiters. Each document is parsed independently, and relationships are detected across all resources in the file. This is the typical format for Kubernetes manifests that bundle multiple resources together.

How are relationships determined between resources?

Relationships are inferred from Kubernetes conventions: Services match Pods via label selectors, Deployments own ReplicaSets via matchLabels, Ingress references Services by name in backend rules, and ConfigMaps/Secrets are linked when referenced in volume mounts, envFrom, or valueFrom fields of containers.

What happens with large manifests?

For manifests larger than 50KB, the graph building is automatically offloaded to a Web Worker to keep the browser UI responsive. If the Worker fails, processing falls back to the main thread. Input is limited to 5MB maximum, with a warning shown at 500KB.

What Kubernetes resource types are supported?

The visualizer supports Deployment, StatefulSet, DaemonSet, Job, CronJob, ReplicaSet, Pod, Service, Ingress, ConfigMap, and Secret resources. Other resource types are included in the graph as standalone nodes but may not have detected relationships.

Is my Kubernetes manifest sent to any server?

No. All processing happens entirely in your browser using JavaScript. Your Kubernetes manifests — which may contain internal service names, namespace details, and infrastructure topology — never leave your device. No data is stored, logged, or transmitted.

How do I read the tree output?

The tree output uses indentation to show parent-child relationships. Root nodes (typically Ingress or Services) appear at the top level. Child resources are indented below with connectors (├── and └──). Relationship labels like [routes-to], [manages], and [uses] indicate the type of connection between resources.