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
|`externalCerts.annotations`| Annotations to patch for webhook configuration and crd when featuregate `EnableExternalCerts` is enabled. For example, `cert-manager.io/inject-ca-from: kruise-system/kruise-webhook-certs`. |`{}`|
60
+
|`enableKubeCacheMutationDetector`| Whether to enable KUBE_CACHE_MUTATION_DETECTOR |`false`|
61
+
|`webhookConfiguration.timeoutSeconds`| The timeoutSeconds for all webhook configuration |`30`|
62
+
|`serviceAccount.annotations`| Annotations to patch for serviceAccounts |`{}`|
63
+
64
+
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example, `helm install kruise https://... --set featureGates="AllAlpha=true"`.
53
65
54
66
### Optional: feature-gate
55
67
@@ -80,6 +92,7 @@ Feature-gate controls some influential features in Kruise:
80
92
|`ImagePullJobGate`| ImagePullJobGate enable imagepulljob-controller execute ImagePullJob |`false`| ImagePullJob and PreDownloadImageForInPlaceUpdate are disabled |
|`EnableExternalCerts`| Using certs generated externally, cert-manager e.g., for webhook server |`false`| kruise-manager will generate self-signed certs for webhook server |
83
96
84
97
If you want to configure the feature-gate, just set the parameter when install or upgrade. Such as:
85
98
@@ -98,3 +111,45 @@ If you are in China and have problem to pull image from official DockerHub, you
### Optional: use certificates with certificate provisioner like cert-manager
116
+
117
+
Kruise needs certificates to enable mutating, validating and conversion webhooks. By default, kruise will generate self-signed certificates for webhook server. If you want to use certificates provisioned externally, taking cert-manager as an example, you can follow these steps when install or upgrade:
118
+
119
+
1. Enable kruise reading certs generated externally by setting `featureGates=EnableExternalCerts=true` when install or upgrade.
120
+
2. Create issuer and certificate resources if you have not done this before.
121
+
```yaml
122
+
apiVersion: cert-manager.io/v1
123
+
kind: Certificate
124
+
metadata:
125
+
name: kruise-webhook
126
+
# consistent with installation.namespace
127
+
namespace: kruise-system
128
+
spec:
129
+
# where to store the certificates
130
+
# cert-manager would generate a secret kruise-system/kruise-webhook-certs with the certificates
131
+
# DO NOT CHANGE THE SECRET NAME SINCE KRUISE READ CERTS FROM THIS SECRET
132
+
secretName: kruise-webhook-certs
133
+
dnsNames:
134
+
- kruise-webhook-service.kruise-system.svc
135
+
- localhost
136
+
issuerRef:
137
+
name: selfsigned-kruise
138
+
kind: Issuer
139
+
---
140
+
apiVersion: cert-manager.io/v1
141
+
kind: Issuer
142
+
metadata:
143
+
name: selfsigned-kruise
144
+
namespace: kruise-system
145
+
spec:
146
+
selfSigned: {}
147
+
```
148
+
3. Set the parameter `externalCerts.annotations` to set annotations for crd and webhook configurations for cert-manager to recognize and patch. For example:
149
+
```yaml
150
+
externalCerts:
151
+
annotations:
152
+
# inject certificates from Certificate resource kruise-system/kruise-webhook-certs
0 commit comments