Ray Kuberay Guide
Prerequisites
- Ray ≥ 2.7
- KubeRay operator ≥ 1.13 (K8s) or vanilla Ray cluster
- Helm ≥ 3.13 (for K8s path)
Option 1: K8s + KubeRay
Step 1: Install the KubeRay operator
helm repo add kuberay https://ray-project.github.io/kuberay-helm
helm install kuberay-operator kuberay/kuberay-operator \
--namespace ray-system --create-namespace
Step 2: Apply the Ray collector
kubectl apply -f https://charts.denpex.ai/rbac/ray.yaml
This deploys:
denpex-ray-collectoras a sidecar on each RayCluster.- Watches the Ray GCS for
/api/cluster_status,/api/actors,/api/placement_groups.
Step 3: Enable Denpex on the cluster
In your RayCluster CR:
spec:
workerGroupSpecs:
- groupName: gpu-workers
template:
spec:
containers:
- name: ray-worker
env:
- name: DENPEX_AGENT_ENABLE
value: "true"
- name: DENPEX_AGENT_ENDPOINT
value: https://denpex-cp.example.com:4317
Option 2: Vanilla Ray
# On each Ray node
pip install denpex-agent
denpex-agent start --ray-node-ip $(hostname -i)
What We Detect
- Actor death rate.
- Object store pressure.
- GCS heartbeat.
- Autoscaler events.
Test Coverage
tests/integration/ray/ mocks the Ray endpoints via wiremock.
Compatibility
- Ray 2.7, 2.8, 2.9, 2.10.
- KubeRay 1.13, 1.14, 1.15.