Warning

This documentation is actively being updated as the project evolves and may not be complete in all areas.

Production Deployment

For production deployments, you can install Jumpstarter on Kubernetes or OpenShift clusters with proper ingress, monitoring, and security configurations.

Prerequisites

Before installing in production, ensure you have:

  • A production Kubernetes cluster available

  • kubectl installed and configured to access your cluster

  • Administrator access to your cluster (required for CRD installation)

  • Domain name for service endpoints

  • Ingress controller installed (for Kubernetes) or Routes configured (for OpenShift)

Note

global.baseDomain creates these service hostnames with jumpstarter.example.com:

  • grpc.jumpstarter.example.com

  • router.jumpstarter.example.com (for router endpoints)

TLS and gRPC Configuration

Jumpstarter uses gRPC for communication, which has specific requirements for production deployments:

gRPC Requirements

  • HTTP/2 Support: gRPC requires HTTP/2, ensure your ingress controller or load balancer supports it

  • gRPC Protocol: Some ingress controllers require specific annotations for gRPC traffic

  • Keep-Alive Settings: Long-lived gRPC connections may need keep-alive configuration

  • Load Balancing: Use consistent hashing or session affinity for gRPC connections

TLS Termination Options

Choose one of these TLS termination approaches:

Option 1: TLS Termination at Ingress/Route (Recommended)

  • Terminate TLS at the ingress controller or OpenShift route

  • Simpler certificate management

  • Better performance with fewer encryption hops

Option 2: End-to-End TLS

  • TLS from client to Jumpstarter service

  • Higher security but more complex certificate management

  • Required for strict compliance environments

Warning

gRPC over HTTP/1.1 is not supported. Ensure your ingress controller supports HTTP/2 and is properly configured for gRPC traffic.

Installation

To install Jumpstarter, see Install with Operator. That guide includes:

  • Installing the operator from the release asset (operator-installer.yaml), OperatorHub and OLM.

  • Creating a Jumpstarter custom resource for vanilla Kubernetes with Ingress

  • Creating a Jumpstarter custom resource for OpenShift with Routes

  • Notes on integrating external OAuth/OIDC and cert-manager setups

GitOps and ArgoCD

Use the operator installer and manage your Jumpstarter custom resource declaratively in GitOps flows. See Install with Operator for the manifests and endpoint patterns to use on Kubernetes (Ingress) and OpenShift (Route).