$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Configure certificate rotation parameters to replace existing certificates.
You can do this during OpenShift Virtualization installation in the web console or after installation in the HyperConverged
custom resource (CR).
Open the HyperConverged
CR by running the following command:
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Edit the spec.certConfig
fields as shown in the following example. To avoid overloading the system, ensure that all values are greater than or equal to 10 minutes. Express all values as strings that comply with the golang ParseDuration
format.
apiVersion: hco.kubevirt.io/v1beta1
kind: HyperConverged
metadata:
name: kubevirt-hyperconverged
namespace: openshift-cnv
spec:
certConfig:
ca:
duration: 48h0m0s
renewBefore: 24h0m0s (1)
server:
duration: 24h0m0s (2)
renewBefore: 12h0m0s (3)
1 | The value of ca.renewBefore must be less than or equal to the value of ca.duration . |
2 | The value of server.duration must be less than or equal to the value of ca.duration . |
3 | The value of server.renewBefore must be less than or equal to the value of server.duration . |
Apply the YAML file to your cluster.
Deleting one or more certConfig
values causes them to revert to the default values, unless the default values conflict with one of the following conditions:
The value of ca.renewBefore
must be less than or equal to the value of ca.duration
.
The value of server.duration
must be less than or equal to the value of ca.duration
.
The value of server.renewBefore
must be less than or equal to the value of server.duration
.
If the default values conflict with these conditions, you will receive an error.
If you remove the server.duration
value in the following example, the default value of 24h0m0s
is greater than the value of ca.duration
, conflicting with the specified conditions.
certConfig:
ca:
duration: 4h0m0s
renewBefore: 1h0m0s
server:
duration: 4h0m0s
renewBefore: 4h0m0s
This results in the following error message:
error: hyperconvergeds.hco.kubevirt.io "kubevirt-hyperconverged" could not be patched: admission webhook "validate-hco.kubevirt.io" denied the request: spec.certConfig: ca.duration is smaller than server.duration
The error message only mentions the first conflict. Review all certConfig values before you proceed.