Contact Us 1-800-596-4880

Troubleshoot Helm Command Issues

Troubleshoot errors returned by a helm command for Kubernetes and OpenShift clusters:

Upgrade Failed: Execution Error

If the registration.yaml file is invalid when you pass it to the Helm command during deployment of Flex Gateway, the following error results:

Error: UPGRADE FAILED: execution error at (flex-gateway/templates/deployment.yaml:4:10):
registerSecretName, registration.content or registration.secretName is required!

When this error occurs, make sure that the registration.yaml file is not empty. If the file is empty, reregister your gateway with a new, unique name to generate a new registration.yaml and rerun the procedures that follow the registration step. See Register Flex Gateway for an example of the registration command.

Upgrade Failed: Timed Out

Some issues can cause the Helm upgrade command to hang for up to 5 minutes (due to the --wait flag in the command) before producing the following timeout error:

Error: UPGRADE FAILED: timed out waiting for the condition

This error typically means that your cluster configuration is incorrect or that your cluster configuration tool does not support this process. One potential cause is the failure to generate a Service resource of the LoadBalancer type. You can troubleshoot further by running the following commands:

  • kubectl -n gateway describe deployment
  • kubectl -n gateway describe service

Kubernetes Cluster Unreachable

If your Kubernetes cluster is not running when you attempt to deploy Flex Gateway using helm, the following error might occur:

Error: Kubernetes cluster unreachable:
the server could not find the requested resource

Start the service that runs your cluster.

Check that your Kubernetes cluster host is running your cluster, for example:

kubectl cluster-info
  • If the cluster is running, the command returns a result similar to this one:

    Kubernetes control plane is running at https://34.30.50.119
    GLBCDefaultBackend is running at https://34.30.50.119/api/v1/namespaces/kube-system/services/default-http-backend:http/proxy
    KubeDNS is running at https://34.30.50.119/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
    Metrics-server is running at https://34.30.50.119/api/v1/namespaces/kube-system/services/https:metrics-server:/proxy
  • If the cluster is not up, the command can return a result similar to this one:

    To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
    error: the server doesn't have a resource type "services"

Failed to Install CRD

When deploying Flex Gateway to a Kubernetes cluster that enables role-based access control (RBAC), you must have cluster-level permissions to permit installation of custom resource definitions (CRDs) used by Flex Gateway. In OpenShift, the cluster-admin role provides this level of access.

Without the required access, you receive an error similar to the following one:

Error: failed to install CRD crds/apiinstance.yaml:
customresourcedefinitions.apiextensions.k8s.io is forbidden:
User "user1" cannot create resource "customresourcedefinitions"
in API group "apiextensions.k8s.io" at the cluster scope