Pre-requisites
- An existing Kubernetes cluster
- An existing node pool(s) for Geneva workloads. By default, Geneva uses node selector
{"geneva.lancedb.com/ray-head": "true"}for Ray head nodes, and{"geneva.lancedb.com/ray-worker-cpu": "true"}and{"geneva.lancedb.com/ray-worker-gpu": "true"}for Ray CPU worker and Ray GPU worker nodes respectively. This can be overridden in the Geneva client. - Geneva Helm chart. Please contact LanceDB for access to the Helm Chart and related resources.
Geneva Helm Chart
The Helm chart includes resources required for running Geneva in Kubernetes. It includes services, service accounts, RBAC roles, etc. that are used by the Geneva client to manage resources.Install
- Authenticate with Kubernetes cluster, i.e. update kubeconfig
- Configure Helm chart values
- Install kuberay operator
- Install NVIDIA device plugin (if using GPU nodes)
- Install Geneva Helm chart
Default cluster and manifest
In LanceDB Enterprise, backfill and refresh jobs run on a default cluster (the compute pool jobs run on) and a default manifest (the Python dependency environment — image and packages). Configuring these in the LanceDB Enterprise chart lets jobs run out of the box without per-job configuration. They are set undergeneva.defaults in the chart’s
values.yaml:
@udf / @chunker / @udtf (see
Advanced Job Configuration); to override the cluster
at runtime, use an Advanced Execution Context.
Providing a Ray cluster
The LanceDB Helm chart can be configured to deploy a static KubeRay cluster, provision KubeRay clusters on demand per job, or use an existing Ray cluster.Use default LanceDB Enterprise Ray cluster (default)
By default, LanceDB Enterprise will use a shared, statically provisioned Ray cluster for job execution. This can be enabled in the Helm chart by setting the following values.Provision KubeRay clusters on demand
Setglobal.rayclusterUri to an empty value to provision ephemeral KubeRay clusters on-demand for each execution job. The default KubeRay cluster configuration
is specified in geneva.defaults.cluster, i.e.