Enable KueueViz
Note
For a streamlined installation and simplified upgrades, we recommend deploying Kueue using Helm.You can customize the deployment with a local
values.yaml
file to fit your environment.See the Helm chart installation guide for full instructions.
KueueViz is a web-based visualization tool that provides real-time monitoring of Kueue workloads, queues, and resource allocation. It offers an intuitive dashboard for observing job queue status, resource utilization, and workload progression.
This page shows how to install and configure KueueViz in your cluster.
The page is intended for batch administrators.
Before you begin
Make sure the following conditions are met:
- A Kubernetes cluster is running
- The kubectl command-line tool has communication with your cluster
- The Helm command-line tool is installed
- Kueue is installed in your cluster
- (Optional) An ingress controller for external access (e.g. Nginx Ingress Controller)
KueueViz can be installed using Helm (recommended), or kubectl. Choose the method that best fits your workflow.
Installation with Kueue
To install KueueViz as part of a new Kueue installation:
helm install kueue oci://registry.k8s.io/kueue/charts/kueue \
--version=0.12.4 \
--namespace kueue-system \
--create-namespace \
--set enableKueueViz=true \ # enable KueueViz
--wait --timeout 300s
For more information on installing Kueue, please refer to Installation.
Enable KueueViz (Kueue is already installed)
If Kueue is already installed, you can enable KueueViz by Helm or kubectl.
Enable KueueViz by Helm
To enable KueueViz on an existing Kueue installation by Helm:
helm upgrade kueue oci://registry.k8s.io/kueue/charts/kueue \
--version=0.12.4 \
--namespace kueue-system \
--set enableKueueViz=true # enable KueueViz
Enable KueueViz by YAML
To enable KueueViz on an existing Kueue installation by YAML:
kubectl apply --server-side -f https://github.com/kubernetes-sigs/kueue/releases/download/0.12.4/kueueviz.yaml
Accessing the Dashboard
Port Forwarding (Only for development)
For quick access during development or testing(had tested by Docker Desktop):
kubectl port-forward svc/kueue-kueue-viz-frontend -n kueue-system 8080
kubectl port-forward svc/kueue-kueue-viz-backend -n kueue-system 8081:8080
Edit the kueue-viz-frontend Deployment to set env REACT_APP_WEBSOCKET_URL=ws://localhost:8081
.
Then access the dashboard at http://localhost:8080.
Ingress
For production deployments, configure an Ingress resource:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: kueueviz-ingress
namespace: kueue-system
spec:
rules:
- host: kueueviz.example.com
http:
paths:
- path: /api(/|$)(.*)
pathType: Prefix
backend:
service:
name: kueue-kueueviz-backend
port:
number: 8080
- path: /
pathType: Prefix
backend:
service:
name: kueue-kueueviz-frontend
port:
number: 8080
tls:
- hosts:
- kueueviz.example.com # replace with your domain
secretName: kueueviz-tls # you need to create a TLS secret at first
LoadBalancer
For cloud environments with LoadBalancer support:
apiVersion: v1
kind: Service
metadata:
name: kueueviz-loadbalancer
namespace: kueue-system
spec:
type: LoadBalancer
ports:
- name: http
port: 80
targetPort: 8080
protocol: TCP
selector:
app.kubernetes.io/name: kueue
app.kubernetes.io/component: kueueviz-frontend
Upgrade
Upgrade by Helm
To upgrade KueueViz by Helm:
helm upgrade kueue oci://registry.k8s.io/kueue/charts/kueue \
--version=0.12.4 \
--namespace kueue-system \
--set enableKueueViz=true
Upgrade by YAML
To upgrade KueueViz by YAML:
kubectl apply --server-side -f https://github.com/kubernetes-sigs/kueue/releases/download/0.12.4/kueueviz.yaml
Uninstall
Note: Be sure to uninstall KueueViz, and not to accidentally uninstall Kueue instead.
To uninstall KueueViz components:
kubectl delete -f https://github.com/kubernetes-sigs/kueue/releases/download/0.12.4/kueueviz.yaml
What’s next
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.