Skip to main content

Troubleshooting Operator Issues

Describe Resources

You can use kubectl describe on the custom resources for the ngrok operator to check their statuses if they are not behaving properly or are not accessible. This is a good first step

Check Kubernetes Events

If something is not right with the operator you can check the events for the operator namespace.

Loading…

Example Output:

Loading…
tip

Kubernetes events usually expire after an hour, so you might want to restart the operator to re-create the events while troubleshooting if the events happened more than an hour ago.

Check Operator Errors

To quickly check the operator logs for only errors, you can use a command such as the following. You can replace the name/namespace if you installed the operator somewhere other than the default location.

Loading…

Resources not getting deleted

If you marked an ngrok custom resource for deletion but it is not getting deleted, there may be unresolved finalizers on it. You can refer to the finalizers page for more information about how the operator uses finalizers and how to clean up resources with dangling finalizers.

Cloud endpoints not getting created from Ingress / Gateway API

If you're applying Ingress and/or Gateway API resources and do not see any CloudEndpoint or AgentEndpoint custom resources created by the operator, here are a few steps to identify the reason.

Ingress uses ngrok IngressClass?

The ngrok IngressClass is required to use Ingress resources. Check that your Ingress uses the ngrok IngressClass like the following example.

Loading…

Gateway API uses the ngrok GatewayClass?

The ngrok GatewayClass is required to use Gateway API resources. If you do not already have it installed, you can create it with:

Loading…

Then, make sure your Gateway uses the GatewayClass like the following example:

Loading…

Check Manager Pod Logs

The "manager" pods are responsible for performing the translation from Ingress and Gateway API into native ngrok resources. Check the manager pods for any errors to see if there is a problem with your configuration.

Loading…

Endpoints not showing up on the dashboard

If you have CloudEndpoint and/or AgentEndpoint resources that are not working, and you can't tell what's wrong with them using kubectl describe, then check the logs for any errors processing them.

Check for AgentEndpoint Error Logs

AgentEndpoint resources are handled by the "agent" pods. Check these for any errors to see if there was an issue processing your AgentEndpoint. Common errors are an invalid traffic policy configuration that may prevent your endpoint from being created.

Loading…

Check for CloudEndpoint Error Logs

CloudEndpoint resources are handled by the "manager" pods. Check these for any errors to see if there was an issue processing your CloudEndpoint. Common errors are an invalid traffic policy configuration that may prevent your endpoint from being created.

Loading…

Resource Limits

If you've added several resources such as domains and endpoints, you may encounter a limit for the resource you are trying to create depending on your payment plan. If you are on the pay-as-you-go plan, then you will not encounter this issue and you will be able to create resources freely and only be billed for the resources you create. Check with the pricing and limits page for information about each plan and any limits associated with it.

Still Need Help?

If you aren't able to identify and resolve your issue, head over to the support page to reach out to ngrok support. You can also head over to the operator GitHub repo and see if anyone else encountered the same problem or file a new issue.