동적 승인 웹훅 개요
동적 승인 웹훅 개요 (Dynamic Admission Webhooks Overview)
Istio가 쿠버네티스의 mutating/validating admission webhook을 어떻게 사용하는지, 그리고 관련된 잠재적 문제들을 개요로 다뤄요.
출처: Istio 문서
본문
쿠버네티스 mutating 및 validating webhook 메커니즘에서:
Istio는 Istio 구성을 검증하기 위해 ValidatingAdmissionWebhooks를 사용하고, 사용자 파드에 sidecar 프록시를 자동으로 주입하기 위해 MutatingAdmissionWebhooks를 사용해요.
웹훅 설정 가이드는 쿠버네티스 동적 승인 웹훅(Dynamic Admission Webhooks)에 대한 일반적인 친숙함을 가정해요. 자세한 문서는 쿠버네티스 API 참조의 Mutating Webhook Configuration 및 Validating Webhook Configuration을 참고하세요.
동적 승인 웹훅 사전 요구사항 검증
쿠버네티스 제공자별 설정 지침은 플랫폼 설정 지침을 참고하세요. 클러스터가 잘못 구성돼 있으면 웹훅이 제대로 작동하지 않아요. 클러스터가 구성됐는데도 동적 웹훅과 관련 기능이 제대로 작동하지 않을 때 다음 단계를 따를 수 있어요.
- kubectl과 쿠버네티스 서버가 지원 버전(1.32, 1.33, 1.34, 1.35, 1.36)을 사용 중인지 확인하세요.
$ kubectl version --short
Client Version: v1.29.0
Server Version: v1.29.1
- admissionregistration.k8s.io/v1이 활성화되어야 해요.
$ kubectl api-versions | grep admissionregistration.k8s.io/v1
admissionregistration.k8s.io/v1
- kube-apiserver의
--enable-admission-plugins에 MutatingAdmissionWebhook과 ValidatingAdmissionWebhook 플러그인이 나열되어 있는지 확인하세요. 이 플래그에 대한 접근은 제공자별로 다를 수 있어요. - 쿠버네티스 api-server가 webhook 파드에 네트워크 연결이 되는지 확인하세요. 예를 들어 잘못된 http_proxy 설정이 api-server 동작을 방해할 수 있어요(자세한 내용은 관련 이슈를 참고하세요).