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