Development¶
Install Jumpstarter on local Kubernetes clusters using kind or minikube. Ideal for learning about the service quickly or for validating Jumpstarter drivers in CI/CD pipelines. For production deployments, see Production.
Prerequisites¶
Docker or Podman installed
kubectlinstalled and configuredAdministrator access to your cluster (required for CRD installation)
Install¶
The jmp admin CLI can create a local cluster and install Jumpstarter in
a single command:
$ jmp admin create cluster
Warning
If automatic IP detection fails, check with jmp admin ip and use --ip to
set your address manually.
Tip
By default, Jumpstarter uses kind if available. Use --minikube to force
minikube instead.
$ jmp admin create cluster --kind
Options: --force-recreate, --skip-install, --extra-certs <PATH>,
--kind-extra-args, custom cluster name as first argument.
$ jmp admin create cluster --minikube
Options: --force-recreate, --skip-install, --extra-certs <PATH>,
--minikube-extra-args, custom cluster name as first argument.
Install on an Existing Cluster¶
Warning
Jumpstarter requires specific NodePort configurations. It is recommended to create a new cluster or use the automatic creation above.
$ jmp admin install --kind
$ jmp admin install --minikube
Verify¶
$ kubectl get pods -n jumpstarter-lab --watch
Configuration¶
Manual Cluster Setup¶
For more control, create the cluster yourself before installing:
Create a kind cluster config that enables NodePorts. Save as kind_config.yaml:
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
kubeadmConfigPatches:
- |
kind: ClusterConfiguration
apiServer:
extraArgs:
"service-node-port-range": "3000-32767"
- |
kind: InitConfiguration
nodeRegistration:
kubeletExtraArgs:
node-labels: "ingress-ready=true"
nodes:
- role: control-plane
extraPortMappings:
- containerPort: 80
hostPort: 5080
protocol: TCP
- containerPort: 30010
hostPort: 8082
protocol: TCP
- containerPort: 30011
hostPort: 8083
protocol: TCP
- containerPort: 443
hostPort: 5443
protocol: TCP
$ kind create cluster --config kind_config.yaml
$ minikube start --extra-config=apiserver.service-node-port-range=8000-9000
Then follow the Production guide using a baseDomain
appropriate for your local environment (for example, nip.io based hostnames).
Uninstall¶
$ jmp admin uninstall
To delete the local cluster completely:
$ jmp admin delete cluster --kind
$ jmp admin delete cluster --minikube
For complete documentation of all jmp admin options, see the
MAN pages.