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?