0

I tried to install an Ingress-controler on my Kubernetes Cluster with Helm. The installation failed with the following log on the corresponding Pod:

{
  "err": "Get \"https://10.96.0.1:443/api/v1/namespaces/ingress-nginx/secrets/ingress-nginx-admission\": dial tcp 10.96.0.1:443: i/o timeout",
  "level": "fatal",
  "msg": "error getting secret",
  "source": "k8s/k8s.go:232",
  "time": "2022-02-22T10:47:49Z"
}

The Pod-console shows the following error:

OCI runtime exec failed: exec failed: container_linux.go:380: starting container process caused: exec: "sh": executable file not found in $PATH: unk

So the ingress-Pod stops after a few seconds with the error above.

Here is a description of my nodes:

NAMESPACE   NAME              STATUS   ROLES                  AGE    VERSION   INTERNAL-IP    EXTERNAL-IP   OS-IMAGE             KER               NEL-VERSION      CONTAINER-RUNTIME
            node/kubemaster   Ready    control-plane,master   121d   v1.22.2   192.168.1.38   <none>        Ubuntu 20.04.3 LTS   5.4               .0-100-generic   docker://20.10.7
            node/kubenode     Ready    <none>                 87d    v1.22.4   192.168.1.39   <none>        Ubuntu 20.04 LTS     5.4               .0-94-generic    docker://20.10.7`

and the services:

NAMESPACE     NAME                TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)                  AGE
default       kubernetes          ClusterIP   10.96.0.1      <none>        443/TCP                  121d
default       nextcloud-service   ClusterIP   10.98.154.93   <none>        82/TCP                   13d
kube-system   kube-dns            ClusterIP   10.96.0.10     <none>        53/UDP,53/TCP,9153/TCP   120d

How can i debug this? What kind of secret is missing ?

Update: i used this description for the deployment:

https://computingforgeeks.com/deploy-nginx-ingress-controller-on-kubernetes-using-helm-chart/ starting from Option 2: Install Nginx Ingress Controller Kubernetes using Helm

So the final command is:

kubectl create namespace ingress-nginx

and then;

helm install -n ingress-nginx ingress-nginx  -f values.yaml . 

with corresponding values in values.yaml

Update 2: when i list all secrets i see only this secret:

ingress-nginx-admission-token-gbldb

which is of course different to..:

ingress-nginx-admission

is that maybe the reason? Can i change somewhere the name of secret in deployment.yaml?

CodeWizard
  • 128,036
  • 21
  • 144
  • 167
RalfD
  • 1
  • 2
  • It says what the secret is that it is looking for: ingress-nginx-admission however, I am unsure why. This is the default name of various accounts and permissions that are setup with this helm chart but I have never set it. Do you reference it somewhere in your chart? Do you have a link to what you are installing? – Luke Briner Feb 22 '22 at 13:57
  • Thanks! I used this description to deploy the ingress controller: https://computingforgeeks.com/deploy-nginx-ingress-controller-on-kubernetes-using-helm-chart/ .... i will add more details to the main description – RalfD Feb 22 '22 at 16:35
  • https://github.com/kubernetes/ingress-nginx/issues/5932 a big thread but looks like various potential solutions including upgrading your version of k8s. Good luck! – Luke Briner Feb 22 '22 at 16:59
  • I checked several possible solutions, but nothing worked! When i have a look to all secrets i only can find this one: ingress-nginx-admission-token-gbldb maybe this is a naming problem? Does the name needs to be exact the same? – RalfD Apr 07 '22 at 15:21

0 Answers0