Skip to main content

Getting started

Prerequisites

KubeOrbit CLI needs a KUBECONFIG env setup in your local, Otherwise it will use the default directory $HOME/.kube/config:

export KUBECONFIG=/path/to/your/config

Install KubeOrbit CLI

Download CLI from our github release page, Choose different binary to match your operating system.

MacOS:

mv ./orbitctl /usr/local/bin/orbitctl
orbitctl -h
Orbitctl can forward traffic intended for a service in-cluster to your local workload.

Usage:
orbitctl [command]

Examples:
orbitctl forward --deployment depolyment-a --namespace ns-a --containerPort 8080 --localPort 8080

Available Commands:
forward
help Help about any command
uninstall

Flags:
-h, --help help for orbitctl
-v, --version version for orbitctl

Use "orbitctl [command] --help" for more information about a command.

Forward remote workload to local

Launch your local service, below as a example application with Eureka registry:

java -Deureka.client.register-with-eureka=false -jar user-service.jar
2022-02-18 15:43:38.546  INFO 22996 --- [           main] Tomcat started on port(s): 9000 (http) with context path ''
2022-02-18 15:43:38.555 INFO 22996 --- [ main] Started PortalServiceApplication in 15.137 seconds (JVM running for 16.205)

Then use orbitctl forward command to forward remote user-service to local:

orbitctl forward --deployment user-service-deployment -n namespace-a --containerPort 9000 --localPort 9000
workload user-service-deployment recreated
ssh forwarded localPort 2662 to remotePort 2222
channel connected, you can start testing your service

Once you see the outputs above, your target workload in the remote kubernetes cluster has the KubeOrbit proxy agent installed, and all traffic that calls the remote target workload will be forwarded to your local workstation.

Stop workload forward

When you are done debugging&testing, the easiest way to exit CLI is type command + c in MacOS or ctrl + c in Windows, your channel will be uninstalled and the remote workload will rollback to its original state:

uninstall forward workload user-service-deployment
workload uninstallation successful