You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The AWS Load Balancer Controller uses admission webhooks to validate and mutate resources. These webhooks require TLS certificates to operate securely. You can use cert-manager to automatically provision and manage these certificates.
4
+
5
+
## Upgrade Notes
6
+
7
+
When upgrading from a previous version, the following scenarios are handled automatically:
8
+
9
+
1. If you have existing TLS secrets and `keepTLSSecret: true` (default):
10
+
- Existing secrets are preserved
11
+
- No new certificates are created
12
+
- Your existing certificate setup continues to work as before
13
+
14
+
2. If you're using cert-manager with a custom issuer:
15
+
- Set `certManager.issuerRef` to keep using your issuer
16
+
- The new CA hierarchy will not be created
17
+
- Your existing certificate configuration is preserved
18
+
19
+
3. If you're using cert-manager without a custom issuer:
20
+
- A new CA hierarchy will be created
21
+
- New certificates will be issued using this CA
22
+
- The transition is handled automatically by cert-manager
23
+
24
+
## How it Works
25
+
26
+
When using cert-manager integration, the controller creates a certificate hierarchy that consists of:
27
+
28
+
1. A self-signed issuer used only to create the root CA certificate
29
+
2. A root CA certificate with a 5-year validity period
30
+
3. A CA issuer that uses the root certificate to sign webhook serving certificates
31
+
4. Webhook serving certificates with 1-year validity that are automatically renewed
32
+
33
+
This setup prevents race conditions during certificate renewal by:
34
+
- Using a long-lived (5 years) root CA certificate that remains stable
35
+
- Only renewing the serving certificates while keeping the CA constant
36
+
- Letting cert-manager's CA injector handle caBundle updates in webhook configurations
37
+
38
+
## Configuration
39
+
40
+
To enable cert-manager integration, set `enableCertManager: true` in your Helm values.
41
+
42
+
You can customize the certificate configuration through these values:
43
+
44
+
```yaml
45
+
enableCertManager: true
46
+
47
+
certManager:
48
+
# Webhook serving certificate configuration
49
+
duration: "8760h0m0s"# 1 year (default)
50
+
renewBefore: "720h0m0s"# 30 days (optional)
51
+
revisionHistoryLimit: 10# Optional
52
+
53
+
# Root CA certificate configuration
54
+
rootCert:
55
+
duration: "43800h0m0s"# 5 years (default)
56
+
57
+
# Optional: Use your own issuer instead of the auto-generated one
58
+
# issuerRef:
59
+
# name: my-issuer
60
+
# kind: ClusterIssuer
61
+
```
62
+
63
+
### Using Custom Issuers
64
+
65
+
If you want to use your own cert-manager issuer instead of the auto-generated CA, you can configure it through `certManager.issuerRef`:
66
+
67
+
```yaml
68
+
certManager:
69
+
issuerRef:
70
+
name: my-issuer
71
+
kind: ClusterIssuer # or Issuer
72
+
```
73
+
74
+
When a custom issuer is specified:
75
+
- The controller will not create its own CA certificate chain
76
+
- The specified issuer will be used directly to issue webhook serving certificates
77
+
- You are responsible for ensuring the issuer is properly configured and available
78
+
79
+
### Certificate Renewal
80
+
81
+
1. Root CA Certificate:
82
+
- Valid for 5 years by default
83
+
- Used only for signing webhook certificates
84
+
- Not renewed automatically to maintain stability
85
+
86
+
2. Webhook Serving Certificates:
87
+
- Valid for 1 year by default
88
+
- Renewed automatically 30 days before expiry
89
+
- Updates handled seamlessly by cert-manager
90
+
91
+
### Best Practices
92
+
93
+
1. Use the default certificate hierarchy unless you have specific requirements
94
+
2. If using a custom issuer, ensure it's highly available and properly configured
95
+
3. Monitor certificate resources for renewal status and potential issues
96
+
4. Keep cert-manager up to date to benefit from the latest improvements
0 commit comments