From d7a151f6a891b5fb172ead78620715e62c6dd054 Mon Sep 17 00:00:00 2001 From: antznette1 Date: Tue, 16 Dec 2025 18:16:38 +0100 Subject: [PATCH] docs: add dedicated Feast on Kubernetes page Signed-off-by: antznette1 --- docs/SUMMARY.md | 1 + docs/how-to-guides/feast-on-kubernetes.md | 71 +++++++++++++++++++ .../running-feast-in-production.md | 49 +------------ 3 files changed, 73 insertions(+), 48 deletions(-) create mode 100644 docs/how-to-guides/feast-on-kubernetes.md diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index c06c3398519..50fea300675 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -68,6 +68,7 @@ * [Scaling Feast](how-to-guides/scaling-feast.md) * [Structuring Feature Repos](how-to-guides/structuring-repos.md) * [Running Feast in production (e.g. on Kubernetes)](how-to-guides/running-feast-in-production.md) +* [Feast on Kubernetes](how-to-guides/feast-on-kubernetes.md) * [Customizing Feast](how-to-guides/customizing-feast/README.md) * [Adding a custom batch materialization engine](how-to-guides/customizing-feast/creating-a-custom-materialization-engine.md) * [Adding a new offline store](how-to-guides/customizing-feast/adding-a-new-offline-store.md) diff --git a/docs/how-to-guides/feast-on-kubernetes.md b/docs/how-to-guides/feast-on-kubernetes.md new file mode 100644 index 00000000000..5504dbd671a --- /dev/null +++ b/docs/how-to-guides/feast-on-kubernetes.md @@ -0,0 +1,71 @@ +# Feast on Kubernetes + +This page covers deploying Feast on Kubernetes, including the Feast Operator and feature servers. + +## Overview + +Kubernetes is a common target environment for running Feast in production. You can use Kubernetes to: + +1. Run Feast feature servers for online feature retrieval. +2. Run scheduled and ad-hoc jobs (e.g. materialization jobs) as Kubernetes Jobs. +3. Operate Feast components using Kubernetes-native primitives. + +## Feast Operator + +To deploy Feast components on Kubernetes, use the included [feast-operator](../../infra/feast-operator). + +For first-time Operator users, it may be a good exercise to try the [Feast Operator Quickstart](../../examples/operator-quickstart). The quickstart demonstrates some of the Operator's built-in features, e.g. git repos, `feast apply` jobs, etc. + +## Deploy Feast feature servers on Kubernetes + +{% embed url="https://www.youtube.com/playlist?list=PLPzVNzik7rsAN-amQLZckd0so3cIr7blX" %} + +**Basic steps** + +1. Install [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) +2. Install the Operator + +Install the latest release: + +```sh +kubectl apply -f https://raw.githubusercontent.com/feast-dev/feast/refs/heads/stable/infra/feast-operator/dist/install.yaml +``` + +OR, install a specific version: + +```sh +kubectl apply -f https://raw.githubusercontent.com/feast-dev/feast/refs/tags//infra/feast-operator/dist/install.yaml +``` + +3. Deploy a Feature Store + +```sh +kubectl apply -f https://raw.githubusercontent.com/feast-dev/feast/refs/heads/stable/infra/feast-operator/config/samples/v1_featurestore.yaml +``` + +Verify the status: + +```sh +$ kubectl get feast +NAME STATUS AGE +sample Ready 2m21s +``` + +The above will install a simple [FeatureStore CR](../../infra/feast-operator/docs/api/markdown/ref.md) like the following. By default, it will run the [Online Store feature server](../reference/feature-servers/python-feature-server.md): + +```yaml +apiVersion: feast.dev/v1 +kind: FeatureStore +metadata: + name: sample +spec: + feastProject: my_project +``` + +> _More advanced FeatureStore CR examples can be found in the feast-operator [samples directory](../../infra/feast-operator/config/samples)._ + +{% hint style="success" %} +Important note: Scaling a Feature Store Deployment should only be done if the configured data store(s) will support it. + +Please check the how-to guide for some specific recommendations on [how to scale Feast](./scaling-feast.md). +{% endhint %} diff --git a/docs/how-to-guides/running-feast-in-production.md b/docs/how-to-guides/running-feast-in-production.md index 8e256995108..be6fd2afeb4 100644 --- a/docs/how-to-guides/running-feast-in-production.md +++ b/docs/how-to-guides/running-feast-in-production.md @@ -204,54 +204,7 @@ feature_vector = fs.get_online_features( ``` ### 4.2. Deploy Feast feature servers on Kubernetes - -To deploy a Feast feature server on Kubernetes, you should use the included [feast-operator](../../infra/feast-operator). - -{% embed url="https://www.youtube.com/playlist?list=PLPzVNzik7rsAN-amQLZckd0so3cIr7blX" %} - -**Basic steps** -1. Install [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) -2. Install the Operator - - -Install the latest release -```sh -kubectl apply -f https://raw.githubusercontent.com/feast-dev/feast/refs/heads/stable/infra/feast-operator/dist/install.yaml -``` - -OR, install a specific version - -``` -kubectl apply -f https://raw.githubusercontent.com/feast-dev/feast/refs/tags//infra/feast-operator/dist/install.yaml -``` - -3. Deploy a Feature Store - -```sh -kubectl apply -f https://raw.githubusercontent.com/feast-dev/feast/refs/heads/stable/infra/feast-operator/config/samples/v1_featurestore.yaml -``` -Verify the status -``` -$ kubectl get feast -NAME STATUS AGE -sample Ready 2m21s -``` - -The above will install a simple [FeatureStore CR](../../infra/feast-operator/docs/api/markdown/ref.md) like the following. By default, it will run the [Online Store feature server](../reference/feature-servers/python-feature-server.md) - -```yaml -apiVersion: feast.dev/v1 -kind: FeatureStore -metadata: - name: sample -spec: - feastProject: my_project -``` -> _More advanced FeatureStore CR examples can be found in the feast-operator [samples directory](../../infra/feast-operator/config/samples)._ - -For first-time Operator users, it may be a good exercise to try the [Feast Operator Quickstart](../../examples/operator-quickstart). The quickstart will demonstrate some of the Operator's built-in features, e.g. git repos, `feast apply` jobs, etc. - -{% hint style="success" %} Important note: Scaling a Feature Store Deployment should only be done if the configured data store(s) will support it. - -Please check the how-to guide for some specific recommendations on [how to scale Feast](./scaling-feast.md). {% endhint %} +See [Feast on Kubernetes](./feast-on-kubernetes.md). ## 5. Using environment variables in your yaml configuration