Direkt zum Inhalt

Certificate signing in EKS

0

A customer needs to generate X509 certificates in Kubernetes for their extensions (validating/mutating/conversion webhooks). Standard way is to use CertificateSigningRequest for this purpose, but EKS does not have CertificateSigning admission controller installed, so the CSR is not getting signed.

Is there either a way to enable CertificateSigning admission controller on EKS or any other best practice for generating and renewing X509 certificates for EKS cluster internal usage (i.e. kube-apiserver <-> custom-developped-webhook)?

AWS
gefragt vor 5 Jahren3822 Aufrufe
1 Antwort
1
Akzeptierte Antwort

I have encountered a similar issue. Admission controllers(mutating/validating) and kube-apiserver only communicate over HTTPS. The admission controller needs TLS certs.

I have few solutions to this problem that don't come natively with EKS but you can use Open source solutions

  1. Use Cert-manager (X.509 certificate management for Kubernetes) ; cert-manager is a certificate management controller that can run on EKS. cert-manager will issue certificates from Let’s Encrypt, HashiCorp Vault, Venafi, a simple signing key pair, or self signed. Big benefit is it will ensure certificates are valid and up to date, and attempt to renew certificates at a configured time before expiry

  2. An open source tool called k8s-webhook-cert-manager can also be used in this scenario Link: https://github.com/newrelic/k8s-webhook-cert-manager

  3. Another open source tool is available which is based on the above tool called k8s-webhook-certificator Link: https://github.com/Trendyol/k8s-webhook-certificator

I would recommend using cert-manager on EKS which is a CNCF project. If not other 2 tools mentioned.

AWS
beantwortet vor 5 Jahren
EXPERTE
überprüft vor 2 Jahren

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.