CertificateSigningRequest

  • Certificates API는 Kubernetes API의 클라이언트가 X.509를 요청하고 획득 할 수 있도록 프로그래밍 방식의 인터페이스를 제공하여 X.509 자격 증명 프로비저닝을 자동화할 수 있습니다.

출처: https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/

  • k8s api server와 통신하기 위해서 3가지 방법을 주로 사용해왔었다.
    • kubernetes 의 ca파일을 사용
    • certmanager 사용
    • csr 사용
  • 기존에 csr의 v1beta1버전을 사용하다 deprecated 된다는 메세지를 보고 v1으로 업그레이드 하기로 했다.

CSR v1 업그레이드 시 생기는 문제

해결

  1. 나는 ["key encipherment", "digital signature", "server auth"] 를 사용해야 했으므로 signerName을 kubernetes.io/kubelet-serving로 사용해야 했다.
  2. 하지만 kubernetes.io/kubelet-serving의 organizations은 system:nodes
  3. 기존의 v1beta1에서 따로 organizations을 지정하지 않았기 때문에 organizations 에러가 뜨는 상황
  4. CN에서 organizations을 system:nodes를 주고 해결했다.

+ Recent posts