Closed ytianxia6 closed 3 years ago
@ytianxia6: This issue is currently awaiting triage.
If Ingress contributors determines this is a relevant issue, they will accept it by applying the triage/accepted
label and provide further guidance.
The triage/accepted
label can be added by org members by writing /triage accepted
in a comment.
it looks missing a job named ingress-nginx-admission-create, it will create a secret "ingress-nginx-admission" first.
you can learn from https://github.com/kubernetes/ingress-nginx/blob/main/charts/ingress-nginx/templates/admission-webhooks/job-patch/job-createSecret.yaml
it looks missing a job named ingress-nginx-admission-create, it will create a secret "ingress-nginx-admission" first.
you can learn from
https://github.com/kubernetes/ingress-nginx/blob/main/charts/ingress-nginx/templates/admission-webhooks/job-patch/job-createSecret.yaml
the job has finished and the secret is created. but the job ingress-nginx-admission-patch
will contiues get error Back-off restarting failed container
until the helm install failed.
it looks missing a job named ingress-nginx-admission-create, it will create a secret "ingress-nginx-admission" first. you can learn from
https://github.com/kubernetes/ingress-nginx/blob/main/charts/ingress-nginx/templates/admission-webhooks/job-patch/job-createSecret.yaml
the job has finished and the secret is created. but the job
ingress-nginx-admission-patch
will contiues get errorBack-off restarting failed container
until the helm install failed.
you can find more detailed error info for pods of the job by kubectl get pods ingress-nginx-admission-patch-xxxxx -n ingress-nginx -o yaml
, for further deal
it looks missing a job named ingress-nginx-admission-create, it will create a secret "ingress-nginx-admission" first. you can learn from
https://github.com/kubernetes/ingress-nginx/blob/main/charts/ingress-nginx/templates/admission-webhooks/job-patch/job-createSecret.yaml
the job has finished and the secret is created. but the job
ingress-nginx-admission-patch
will contiues get errorBack-off restarting failed container
until the helm install failed.you can find more detailed error info for pods of the job by
kubectl get pods ingress-nginx-admission-patch-xxxxx -n ingress-nginx -o yaml
, for further deal
thank you, i get the error info:
apiVersion: v1
kind: Pod
metadata:
annotations:
cni.projectcalico.org/containerID: 35193fbf73f188be63dfe63034f9684f93892a44fce446d38e89fae2f3f93248
cni.projectcalico.org/podIP: 10.111.156.124/32
cni.projectcalico.org/podIPs: 10.111.156.124/32
creationTimestamp: "2021-09-10T00:45:56Z"
generateName: ingress-nginx-admission-patch--1-
labels:
app.kubernetes.io/component: admission-webhook
app.kubernetes.io/instance: ingress-nginx
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/version: 1.0.0
controller-uid: 73891ebd-f956-4def-94e8-8f52368ffd55
helm.sh/chart: ingress-nginx-4.0.1
job-name: ingress-nginx-admission-patch
name: ingress-nginx-admission-patch--1-2dl9f
namespace: ingress-nginx
ownerReferences:
- apiVersion: batch/v1
blockOwnerDeletion: true
controller: true
kind: Job
name: ingress-nginx-admission-patch
uid: 73891ebd-f956-4def-94e8-8f52368ffd55
resourceVersion: "4241120"
uid: 4a2f1eed-7142-44dc-82ec-ef30227fe241
spec:
containers:
- args:
- patch
- --webhook-name=ingress-nginx-admission
- --namespace=$(POD_NAMESPACE)
- --patch-mutating=false
- --secret-name=ingress-nginx-admission
- --patch-failure-policy=Fail
env:
- name: POD_NAMESPACE
valueFrom:
fieldRef:
apiVersion: v1
fieldPath: metadata.namespace
image: k8y8z7nh.mirror.aliyuncs.com/jettech/kube-webhook-certgen:v1.0.0
imagePullPolicy: IfNotPresent
name: patch
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: /var/run/secrets/kubernetes.io/serviceaccount
name: kube-api-access-9vt2d
readOnly: true
dnsPolicy: ClusterFirst
enableServiceLinks: true
nodeName: k8s-node1
nodeSelector:
kubernetes.io/os: linux
preemptionPolicy: PreemptLowerPriority
priority: 0
restartPolicy: OnFailure
schedulerName: default-scheduler
securityContext:
runAsNonRoot: true
runAsUser: 2000
serviceAccount: ingress-nginx-admission
serviceAccountName: ingress-nginx-admission
terminationGracePeriodSeconds: 30
tolerations:
- effect: NoExecute
key: node.kubernetes.io/not-ready
operator: Exists
tolerationSeconds: 300
- effect: NoExecute
key: node.kubernetes.io/unreachable
operator: Exists
tolerationSeconds: 300
volumes:
- name: kube-api-access-9vt2d
projected:
defaultMode: 420
sources:
- serviceAccountToken:
expirationSeconds: 3607
path: token
- configMap:
items:
- key: ca.crt
path: ca.crt
name: kube-root-ca.crt
- downwardAPI:
items:
- fieldRef:
apiVersion: v1
fieldPath: metadata.namespace
path: namespace
status:
conditions:
- lastProbeTime: null
lastTransitionTime: "2021-09-10T00:45:56Z"
status: "True"
type: Initialized
- lastProbeTime: null
lastTransitionTime: "2021-09-10T00:45:56Z"
message: 'containers with unready status: [patch]'
reason: ContainersNotReady
status: "False"
type: Ready
- lastProbeTime: null
lastTransitionTime: "2021-09-10T00:45:56Z"
message: 'containers with unready status: [patch]'
reason: ContainersNotReady
status: "False"
type: ContainersReady
- lastProbeTime: null
lastTransitionTime: "2021-09-10T00:45:56Z"
status: "True"
type: PodScheduled
containerStatuses:
- containerID: docker://b1422e7676eb71c2bd3b39bd7da484cc750eb0f3c315242565636dadf868970c
image: k8y8z7nh.mirror.aliyuncs.com/jettech/kube-webhook-certgen:v1.0.0
imageID: docker-pullable://k8y8z7nh.mirror.aliyuncs.com/jettech/kube-webhook-certgen@sha256:58fde0ddd7a0d1bf1483fed53e363144ae8741d8a2d6c129422e8b1b9aa0543c
lastState:
terminated:
containerID: docker://f81e5eaffacb7a43093b70f78583cf76b1cdf990bddce61b99b3770f5bc235d0
exitCode: 1
finishedAt: "2021-09-10T00:45:58Z"
reason: Error
startedAt: "2021-09-10T00:45:58Z"
name: patch
ready: false
restartCount: 2
started: false
state:
terminated:
containerID: docker://b1422e7676eb71c2bd3b39bd7da484cc750eb0f3c315242565636dadf868970c
exitCode: 1
finishedAt: "2021-09-10T00:46:14Z"
reason: Error
startedAt: "2021-09-10T00:46:14Z"
hostIP: 192.168.79.22
phase: Running
podIP: 10.111.156.124
podIPs:
- ip: 10.111.156.124
qosClass: BestEffort
startTime: "2021-09-10T00:45:56Z"
the error reason is container not ready
but i still cannot find the real reason and how to fix it.
it looks missing a job named ingress-nginx-admission-create, it will create a secret "ingress-nginx-admission" first. you can learn from
https://github.com/kubernetes/ingress-nginx/blob/main/charts/ingress-nginx/templates/admission-webhooks/job-patch/job-createSecret.yaml
the job has finished and the secret is created. but the job
ingress-nginx-admission-patch
will contiues get errorBack-off restarting failed container
until the helm install failed.you can find more detailed error info for pods of the job by
kubectl get pods ingress-nginx-admission-patch-xxxxx -n ingress-nginx -o yaml
, for further dealthank you, i get the error info:
apiVersion: v1 kind: Pod metadata: annotations: cni.projectcalico.org/containerID: 35193fbf73f188be63dfe63034f9684f93892a44fce446d38e89fae2f3f93248 cni.projectcalico.org/podIP: 10.111.156.124/32 cni.projectcalico.org/podIPs: 10.111.156.124/32 creationTimestamp: "2021-09-10T00:45:56Z" generateName: ingress-nginx-admission-patch--1- labels: app.kubernetes.io/component: admission-webhook app.kubernetes.io/instance: ingress-nginx app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: ingress-nginx app.kubernetes.io/version: 1.0.0 controller-uid: 73891ebd-f956-4def-94e8-8f52368ffd55 helm.sh/chart: ingress-nginx-4.0.1 job-name: ingress-nginx-admission-patch name: ingress-nginx-admission-patch--1-2dl9f namespace: ingress-nginx ownerReferences: - apiVersion: batch/v1 blockOwnerDeletion: true controller: true kind: Job name: ingress-nginx-admission-patch uid: 73891ebd-f956-4def-94e8-8f52368ffd55 resourceVersion: "4241120" uid: 4a2f1eed-7142-44dc-82ec-ef30227fe241 spec: containers: - args: - patch - --webhook-name=ingress-nginx-admission - --namespace=$(POD_NAMESPACE) - --patch-mutating=false - --secret-name=ingress-nginx-admission - --patch-failure-policy=Fail env: - name: POD_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace image: k8y8z7nh.mirror.aliyuncs.com/jettech/kube-webhook-certgen:v1.0.0 imagePullPolicy: IfNotPresent name: patch resources: {} terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-9vt2d readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true nodeName: k8s-node1 nodeSelector: kubernetes.io/os: linux preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: OnFailure schedulerName: default-scheduler securityContext: runAsNonRoot: true runAsUser: 2000 serviceAccount: ingress-nginx-admission serviceAccountName: ingress-nginx-admission terminationGracePeriodSeconds: 30 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 volumes: - name: kube-api-access-9vt2d projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace status: conditions: - lastProbeTime: null lastTransitionTime: "2021-09-10T00:45:56Z" status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2021-09-10T00:45:56Z" message: 'containers with unready status: [patch]' reason: ContainersNotReady status: "False" type: Ready - lastProbeTime: null lastTransitionTime: "2021-09-10T00:45:56Z" message: 'containers with unready status: [patch]' reason: ContainersNotReady status: "False" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2021-09-10T00:45:56Z" status: "True" type: PodScheduled containerStatuses: - containerID: docker://b1422e7676eb71c2bd3b39bd7da484cc750eb0f3c315242565636dadf868970c image: k8y8z7nh.mirror.aliyuncs.com/jettech/kube-webhook-certgen:v1.0.0 imageID: docker-pullable://k8y8z7nh.mirror.aliyuncs.com/jettech/kube-webhook-certgen@sha256:58fde0ddd7a0d1bf1483fed53e363144ae8741d8a2d6c129422e8b1b9aa0543c lastState: terminated: containerID: docker://f81e5eaffacb7a43093b70f78583cf76b1cdf990bddce61b99b3770f5bc235d0 exitCode: 1 finishedAt: "2021-09-10T00:45:58Z" reason: Error startedAt: "2021-09-10T00:45:58Z" name: patch ready: false restartCount: 2 started: false state: terminated: containerID: docker://b1422e7676eb71c2bd3b39bd7da484cc750eb0f3c315242565636dadf868970c exitCode: 1 finishedAt: "2021-09-10T00:46:14Z" reason: Error startedAt: "2021-09-10T00:46:14Z" hostIP: 192.168.79.22 phase: Running podIP: 10.111.156.124 podIPs: - ip: 10.111.156.124 qosClass: BestEffort startTime: "2021-09-10T00:45:56Z"
the error reason is
container not ready
but i still cannot find the real reason and how to fix it.
thank you @shuaizi ! I found the issue is the image I use jettech/kube-webhook-certgen:v1.0.0
not work. I use the liangjw/kube-webhook-certgen:v1.0
and it runs ok!
NGINX Ingress controller version: v1.0.0
Kubernetes version (use
kubectl version
): 1.22.0Environment:
NAME="Ubuntu" VERSION="20.04.3 LTS (Focal Fossa)" PRETTY_NAME="Ubuntu 20.04.3 LTS" VERSION_ID="20.04"
Kernel (e.g.
uname -a
): Linux k8s-master 5.4.0-81-generic #91-Ubuntu SMP Thu Jul 15 19:09:17 UTC 2021 x86_64 x86_64 x86_64 GNU/LinuxInstall tools:
kubeadm
Basic cluster related info: ,
kubectl version: 1.22
How was the ingress-nginx-controller installed: ingress-nginx ingress-nginx 1 2021-09-09 11:31:22.590858719 +0800 CST failed ingress-nginx-4.0.1 1.0.0
Current State of the controller:
Current state of ingress object, if applicable:
Others:
I use the
helm pull ingress-nginx/ingress-nginx
command to get helm package and modified thevalues.yaml
What happened:
when I run
helm install ingress-nginx . -n ingress-nginx
, the jobingress-nginx-admission-create
error and the podingress-nginx-admission-patch--**
logs error: