Kubernetes Operator
The ngrok Kubernetes Operator is the best way to use ngrok if your applications run in Kubernetes environments. It comes with custom resources for configuration and also supports both Ingress resources as well as the new cross-platform Gateway API configuration resources. When using Kubernetes Ingresses or the Gateway API resources, the ngrok Kubernetes Operator will translate them into managed instances of the ngrok custom resources for you.
The ngrok Kubernetes Operator is deployed to a cluster and allows developers to self-service endpoints to their apps and services using a shared ngrok account.
When Should I Use The ngrok Kubernetes Operator?
You should use the ngrok Kubernetes Operator if you want to:
- Send traffic to your Kubernetes workloads
- Integrate Kubernetes workloads with workloads outside of Kubernetes, such as those running on virtual machines, bare metal, embedded devices, and anywhere else you can run ngrok
- Perform cross-cluster networking
- Use Kubernetes with ngrok without using ngrok's SDKs
What Type of Config Should I Use With The Operator?
The Operator supports its own native custom resource types, including:
- Kubernetes Ingresses
- Easy to get started with for more simple use-cases
- Gateway API
- Offers more configuration options for traffic management and transformations
- ngrok's Managed resources
- Offers complete control over your traffic, enabling many features such as OAuth/OIDC, rate limiting, and more
You can use a different configuration type for each domain.
How do I enable or disable Kubernetes endpoints on an existing installation?
By default, if you don't change the endpoint selector, all endpoints with a Kubernetes binding will be bound to the cluster the Operator is installed on. Changing the binding allows you to restrict which endpoints that operator will handle.
See the docs on enabling bindings to learn more.
Using the API
Kubernetes endpoints can be created programatically. Consult the documentation on [Endpoint APIs](/api/resources/endp
Type and Pooling
- Kubernetes endpoints support all Endpoint
Types (
agent
andcloud
). - Kubernetes endpoints support Endpoint Pooling.
Pricing
The ngrok Kubernetes Operator is available to all ngrok users at no additional charge. You only incur costs if the resources provisioned by the controller incur a cost. More details can be found on our pricing page.