cert-manager

Configure cert-manager CRDs for TLS certificate issuance and renewal on Kubernetes.

4|2|Updated Jun 1, 2026
One-click install
npx skills add https://github.com/Aidas-dev/k8s-agent-skills --skill cert-manager-aidas-dev
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: cert-manager
Source: https://github.com/Aidas-dev/k8s-agent-skills/tree/main/skills/cert-manager
Command: npx skills add https://github.com/Aidas-dev/k8s-agent-skills --skill cert-manager-aidas-dev

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Managing TLS certificates on Kubernetes requires correctly configuring cert-manager resources like Issuers, ClusterIssuers, and Certificates, where misconfigurations cause failed ACME challenges, expired certs, or constant renewal loops. ## Core Features & Use Cases - Issuer Configuration: Set up ACME (Let's Encrypt), self-signed, CA, Vault, and Venafi issuers at namespace or cluster scope. - Certificate Management: Define Certificates with DNS names, ECDSA/RSA private keys, renewal windows, and keystore outputs. - ACME Solver Setup: Configure DNS-01 solvers for Cloudflare, Route53, and Azure DNS, plus HTTP-01 via Ingress or Gateway API. - Use Case: Create a ClusterIssuer for Let's Encrypt with Cloudflare DNS-01, then issue a wildcard Certificate for a Cilium Gateway with automatic renewal. ## Quick Start Create a ClusterIssuer for Let's Encrypt using Cloudflare DNS-01 and a wildcard Certificate for example.com.

Frequently Asked Questions about cert-manager

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a Let's Encrypt ClusterIssuer with Cloudflare DNS-01?▼

Define a ClusterIssuer with spec.acme pointing to the Let's Encrypt v02 server and a dns01 solver using cloudflare.apiTokenSecretRef referencing a Secret with your API token. Use apiTokenSecretRef, not apiKeySecretRef, since Cloudflare scoped tokens are required.

How to issue a wildcard certificate for a Kubernetes Gateway?▼

Create a Certificate resource with dnsNames containing the wildcard domain and reference a DNS-01 capable ClusterIssuer, since HTTP-01 cannot validate wildcards. Set duration and renewBefore so renewBefore stays shorter than duration to avoid constant renewal loops.

Does cert-manager support Gateway API for HTTP-01 challenges?▼

Yes, cert-manager v1.20+ supports Gateway API for ACME HTTP-01 via the gatewayHTTPRoute solver with parentRefs pointing to your Gateway. Earlier versions require an Ingress-based HTTP-01 solver with an ingress class.

Why does my cert-manager Certificate keep renewing constantly?▼

Constant renewal usually happens when renewBefore is greater than or equal to duration, causing cert-manager to always consider the cert due for renewal. Set renewBefore well below duration, such as 720h renewBefore for a 2160h duration.

Should I use ECDSA or RSA keys for cert-manager certificates?▼

ECDSA with size 256 is recommended for performance and smaller keys. Use RSA with size 2048 only when older clients that lack ECDSA support must connect to your services.

What are Let's Encrypt rate limits for certificate issuance?▼

Let's Encrypt production allows 50 certificates per week per domain, while staging allows 5 per week. Use the staging ACME server for testing to avoid exhausting production rate limits during development.