kubeflow 설치 시 cert-manager 에러 (1)

hbjs97·2024년 1월 5일
0

kubeflow

목록 보기
1/3
$ kustomize build common/cert-manager/kubeflow-issuer/base | kubectl apply -f -
Error from server (InternalError): error when creating "STDIN": Internal error occurred: failed calling webhook "webhook.cert-manager.io": Post "https://cert-manager-webhook.cert-manager.svc:443/mutate?timeout=10s": context deadline exceeded

위와같은 에러가 발생했다.
cert-manager webhook 에서 인증실패하는 상황으로 보인다. 직접 cert-manager 클러스터에 요청해보니 443 포트와 정상적으로 통신되었다. flannel을 사용하고있는데 CNI 문제인가 싶었지만 calico를 사용하는 유저들도 비슷한 에러를 겪고있다고 한다.

많은 이슈중에 https://github.com/cert-manager/cert-manager/issues/2602 에서 유효한 해결책을 찾았다.
webhook 관련 설정을 삭제한다.

$ helm install cert-manager jetstack/cert-manager --namespace cert-manager --create-namespace --version v1.5.3 --set startupapicheck.timeout=5m --set installCRDs=true
...

$ kubectl delete mutatingwebhookconfiguration.admissionregistration.k8s.io cert-manager-webhook
mutatingwebhookconfiguration.admissionregistration.k8s.io "cert-manager-webhook" deleted

$ kubectl delete validatingwebhookconfigurations.admissionregistration.k8s.io cert-manager-webhook
validatingwebhookconfiguration.admissionregistration.k8s.io "cert-manager-webhook" deleted

$ kustomize build common/cert-manager/kubeflow-issuer/base | kubectl apply -f -
clusterissuer.cert-manager.io/kubeflow-self-signing-issuer created

근본적인 문제의 해결은 아니라고 생각한다.
kube-apiserver pod 에서 cert-manager-webhook 에 대해 요청을 실패하는데, dns 관련 문제가 아닐까싶다. cert-manager-webhook 서비스의 ip로 직접 요청 시 정상적으로 요청되는데, cert-manager-webhook.cert-manager.svc:443 에 대한 요청을 실패한다.
하지만 dns 관련 pod들은 모두 정상적으로 도착하고있다. (coredns, flannel)

0개의 댓글