Install Lance REST Server on Kubernetes
Introduction
This Helm chart deploys Apache Gravitino Lance REST Server on Kubernetes with customizable configurations.
Prerequisites
- Kubernetes 1.29+
- Helm 3+
Installation
Install from OCI Registry (Recommended for Released Versions)
Pull the chart from Docker Hub OCI registry:
helm pull oci://registry-1.docker.io/apache/gravitino-lance-rest-server-helm --version <VERSION>
Or install directly:
helm upgrade --install gravitino-lance oci://registry-1.docker.io/apache/gravitino-lance-rest-server-helm --version <VERSION> -n gravitino --create-namespace
Install from Local Repository (for Development or Unreleased Versions)
Clone the repository and navigate to the chart directory:
git clone https://github.com/apache/gravitino.git
cd gravitino/dev/charts
Update chart dependencies:
helm dependency update gravitino-lance-rest-server
Install the chart:
helm upgrade --install gravitino-lance ./gravitino-lance-rest-server -n gravitino --create-namespace
View Chart Values
Customize values.yaml parameters to override chart default settings. Additionally, Gravitino Lance REST Server configurations in gravitino-lance-rest-server.conf can be modified through Helm values.yaml.
To display the default values of the chart, run:
helm show values oci://registry-1.docker.io/apache/gravitino-lance-rest-server-helm --version <VERSION>
Install Helm Chart
helm upgrade --install [RELEASE_NAME] oci://registry-1.docker.io/apache/gravitino-lance-rest-server-helm --version <VERSION> [flags]
Deploy with Default Configuration
Run the following command to deploy Gravitino Lance REST Server using the default settings:
helm upgrade --install gravitino-lance oci://registry-1.docker.io/apache/gravitino-lance-rest-server-helm --version <VERSION> \
-n gravitino \
--create-namespace \
--set lanceRest.gravitinoUri=http://gravitino:8090 \
--set lanceRest.gravitinoMetalake=your-metalake \
--set replicas=2 \
--set resources.requests.memory="4Gi" \
--set resources.requests.cpu="2"
Deploy with Custom Configuration
To customize the deployment, use the --set flag to override specific values:
helm upgrade --install gravitino-lance oci://registry-1.docker.io/apache/gravitino-lance-rest-server-helm --version <VERSION> \
-n gravitino \
--create-namespace \
--set key1=val1,key2=val2,...
Alternatively, you can provide a custom values.yaml file:
helm upgrade --install gravitino-lance oci://registry-1.docker.io/apache/gravitino-lance-rest-server-helm --version <VERSION> \
-n gravitino \
--create-namespace \
-f /path/to/values.yaml
Configuration Notes
Gravitino Backend Configuration
Make sure to configure the Gravitino backend connection properly:
lanceRest:
gravitinoUri: http://your-gravitino-server:8090
gravitinoMetalake: your-metalake-name
The Lance REST Server requires a running Gravitino instance to function. Ensure:
- The Gravitino server is accessible from the Lance REST Server pods
- The metalake specified in
gravitinoMetalakeexists in Gravitino - Network policies allow communication between Lance REST and Gravitino
Uninstall Helm Chart
helm uninstall [RELEASE_NAME] -n [NAMESPACE]