4 — Registry Topology
The Feast registry stores metadata about feature views, entities, and feature services. The operator supports three topology options:
Local (file or DB)
Self-contained deployment; registry runs alongside other services
Local + server
Local registry exposed as a gRPC / REST server for remote clients
Remote
Multiple FeatureStore CRs share a single registry managed by another CR
Local registry
File-backed (default)
services:
registry:
local:
persistence:
file:
path: registry.db
pvc:
create: {}
mountPath: /data/registryDB-backed (SQL / Snowflake)
Exposing the registry as a server
Add server: {} under registry.local to expose it on port 6570:
The registry server also supports REST and gRPC independently:
MCP on the registry server
When the REST API is enabled, you can additionally expose registry metadata as MCP (Model Context Protocol) tool endpoints for LLM agents:
The operator writes registry.mcp.enabled: true into feature_store.yaml. A validation rule enforces that restAPI must be true when mcp.enabled is true.
See Guide 3 — Serving & Observability for more details and the full MCP configuration reference.
Remote registry
A remote registry lets multiple FeatureStore CRs (e.g. in different namespaces or teams) share a single registry. One CR owns the registry; the others point at it.
Using a hostname
Point at any existing Feast registry server endpoint:
Using feastRef (recommended for operator-managed registries)
feastRef lets one FeatureStore CR reference another CR's registry without hard-coding hostnames. The operator resolves the Service name automatically:
Remote registry with TLS
If the remote registry server uses TLS, provide the CA certificate so clients can verify it:
All-remote topology
For teams that deploy services independently, all services can use remote endpoints:
Client-side configuration (auto-generated ConfigMap)
When the operator deploys a FeatureStore CR, it automatically creates a ConfigMap named feast-<name>-client in the same namespace. This ConfigMap contains a ready-to-use feature_store.yaml that points at the deployed remote services (online store, offline store, and registry).
For example, a CR named testing produces a ConfigMap feast-testing-client:
Using the client ConfigMap in-cluster
Mount the ConfigMap into your application pod so the Feast SDK discovers the configuration automatically:
Then initialize the Feast store from the mounted path:
Using the client ConfigMap outside the cluster
Copy the ConfigMap content to your local feature_store.yaml for development or testing outside the cluster. Adjust hostnames and TLS paths as needed (e.g. use kubectl port-forward or an Ingress endpoint):
See also
Last updated
Was this helpful?