Skip to main content

Prerequisites

Docker

Docker is an open platform for developing, shipping, and running applications. We will run Docker containers for Postgres, Redis, and all of the Featureform services on Minikube. It can be downloaded here.

Minikube

minikube is a local Kubernetes deployment made for testing and exploring Kubernetes. It is not made for production, but mimics most of the main functionality of a production Kubernetes cluster. Follow their tutorial to deploy and configure a local Minikube cluster. minikube is the only feature-complete version of our Quickstarts that can be run locally and used to test features (such as scheduling) that are unavailable for localmode or Docker.

Helm

Helm is a package manager for Kubernetes. We can use it to deploy Featureform, Postgres, and Redis on our minikube deployment. But first, we have to install it using their guide.

Install Certificate Manager

Cert-manager allows us to create self-signed and public TLS certificates for connecting the Python client to Featureform.

Deploy Featureform

Deploying Featureform is simple using Helm.
This is starts a vanilla Featureform deployment, but it can be further configured using a set of Helm variables.

Save Certificate

Our Featureform cluster generated a self-signed TLS certificate that can be used for testing locally. To save it, we run:
We will use this later when connecting with the Python client.

Enable Minikube Ingress

To access our cluster, we need to enable minikube’s ingress and network tunnel.

Deploy The Quickstart Demo

We provide an additional helm chart that contains Redis and Postgres, as well as a loading job that fills Postgres with demo data.

Configure Featureform with Providers

Now that all of our infrastructure is deployed, we can add Postgres and Redis as providers for Featureform using the Python API and Featureform CLI, which can be seen in our Quickstart guide. Since we’re using a self-signed certificate, we can run the CLI using the certificate flag instead.