Skip to content

Commit d46bb63

Browse files
Merge pull request #820 from yiannistri/819-cp-changes
docs: Document `v1beta2` changes for control-plane CRs
2 parents 3e7e700 + db1b72a commit d46bb63

File tree

3 files changed

+50
-5
lines changed

3 files changed

+50
-5
lines changed

docs/book/src/02_topics/09_secrets_encryption.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22

33
## Overview
44

5-
By default, RKE2 enables Secret encryotion at rest with `aescbc` provider and generate private key automatically. [Refer](https://docs.rke2.io/security/secrets_encryption)
5+
By default, RKE2 enables Secrets encryption at rest with `aescbc` provider and generates private key automatically. [Reference](https://docs.rke2.io/security/secrets_encryption)
66

77
## Customizing Encryption provider
88

9-
To configure different provider (`aescbc` or `secretbox`) or specify encryption key explicitly configure `spec.serverConfig.secretsEncryption` block
9+
To configure different provider (`aescbc` or `secretbox`) or specify encryption key explicitly, configure `spec.serverConfig.secretsEncryption` block.
1010

11-
Expample:
11+
Example:
1212

1313
```yaml
1414
apiVersion: controlplane.cluster.x-k8s.io/v1beta1
@@ -21,11 +21,11 @@ spec:
2121
provider: "secretbox"
2222
encryptionKeySecret:
2323
name: encryption-key
24-
namespace: exmaple
24+
namespace: example
2525
```
2626
2727
## Encryption secret format
2828
29-
When configuring the `encryptionKeySecret`, ensure the secret contains the following keys:
29+
When configuring the `encryptionKeySecret` field, ensure the secret contains the following keys:
3030

3131
- **encryptionKey** - base64 decoded value of the encryption key
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# API Versions
2+
3+
This page provides a detailed list of any changes between different API versions of CAPRKE2. It is intended to assist end users when upgrading from one version of the API to the next one.
4+
5+
### v1beta1 to v1beta2
6+
7+
#### Control Plane
8+
9+
In `v1beta1` the following fields were marked as `deprecated` and have been removed from `v1beta2`:
10+
- `infrastructureRef` has been removed from `RKE2ControlPlane.spec`. Use `RKE2ControlPlane.spec.machineTemplate.spec.infrastructureRef` instead.
11+
- `nodeDrainTimeout` has been removed from `RKE2ControlPlane.spec`. Use `RKE2ControlPlane.spec.machineTemplate.spec.deletion.nodeDrainTimeout` instead.
12+
13+
The following `v1beta1` fields have moved:
14+
- `infrastructureRef` has moved from `RKE2ControlPlaneMachineTemplate` to `RKE2ControlPlaneMachineTemplateSpec.infrastructureRef` in `v1beta2`.
15+
- `nodeDrainTimeout`, `nodeVolumeDetachTimeout` and `nodeDeletionTimeout` have moved under `RKE2ControlPlaneMachineTemplateSpec.deletion` in `v1beta2` and have been renamed to:
16+
- `deletion.nodeDrainTimeoutSeconds`
17+
- `deletion.nodeVolumeDetachTimeoutSeconds`
18+
- `deletion.nodeDeletionTimeoutSeconds`
19+
20+
Note that these fields have changed their type to int32 and now expect a timeout expressed in seconds.
21+
22+
The `RKE2ControlPlaneMachineTemplate` object in `v1beta2` now includes a `spec` field which is required.
23+
24+
The following `v1beta1` `RKE2ControlPlaneStatus` fields have been moved under `RKE2ControlPlane.status.deprecated` in `v1beta2`:
25+
- `conditions`
26+
- `failureReason`
27+
- `failureMessage`
28+
- `updatedReplicas`
29+
- `readyReplicas`
30+
- `unavailableReplicas`
31+
32+
In `v1beta1`, status conditions are using `clusterv1beta1.Conditions`, which are CAPI-specific condition types, whereas in `v1beta2` they are using `metav1.Conditions`, inline with upstream CAPI. The benefit of using `metav1.Conditions` is that it provides a standard way of reporting status that is common across many Kubernetes resource types ([reference](https://github.com/kubernetes-sigs/cluster-api/blob/main/docs/proposals/20240916-improve-status-in-CAPI-resources.md)).
33+
34+
The following `RKE2ControlPlaneStatus` fields have been removed from `v1beta2`:
35+
- `ready`
36+
- `initialized`
37+
- `dataSecretName`
38+
- `failureReason`
39+
- `failureMessage`
40+
- `updatedReplicas`
41+
- `unavailableReplicas`
42+
43+
An RKE2 cluster is considered initialized when `RKE2ControlPlaneStatus.initialization.controlPlaneInitialized` is set to `true`.

docs/book/src/SUMMARY.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
- [Configuring manager options](./02_topics/06_configure-manager-options.md)
1313
- [External load balancer exclusion](./02_topics/07_load_balancer_exclusion.md)
1414
- [External datastore](./02_topics/08_external_datastore.md)
15+
- [Secrets encryption](./02_topics/09_secrets_encryption.md)
1516
- [Examples](./03_examples/00.md)
1617
- [AWS](./03_examples/01_aws.md)
1718
- [vSphere](./03_examples/02_vsphere.md)
@@ -20,3 +21,4 @@
2021
- [Development](./04_developer/01_development.md)
2122
- [Releasing](./04_developer/02_releasing.md)
2223
- [Reference](./05_reference/00.md)
24+
- [API Versions](./05_reference/01_api_versions.md)

0 commit comments

Comments
 (0)