Skip to content

Commit dd497f3

Browse files
authored
Merge pull request #52175 from jeana-redhat/OSDOCS-4249-CPMS-arch-overview
[OSDOCS-4249]: Stubbing out space for new CPMS content
2 parents 2d5eaf6 + 5b50b8d commit dd497f3

20 files changed

+528
-0
lines changed

_topic_maps/_topic_map.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1953,6 +1953,19 @@ Topics:
19531953
File: adding-bare-metal-compute-user-infra
19541954
- Name: Managing machines with the Cluster API
19551955
File: capi-machine-management
1956+
- Name: Managing control plane machines
1957+
Dir: control_plane_machine_management
1958+
Topics:
1959+
- Name: About the Control Plane Machine Set Operator
1960+
File: cpmso-about
1961+
#- Name: Getting started
1962+
# File: cpmso-getting-started
1963+
- Name: Control Plane Machine Set Operator configuration
1964+
File: cpmso-configuration
1965+
#- Name: Using the Control Plane Machine Set Operator
1966+
# File: cpmso-using
1967+
#- Name: Troubleshooting the Control Plane Machine Set Operator
1968+
# File: cpmso-troubleshooting
19561969
- Name: Deploying machine health checks
19571970
File: deploying-machine-health-checks
19581971
---
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
:_content-type: ASSEMBLY
2+
[id="cpmso-about"]
3+
= About the Control Plane Machine Set Operator
4+
include::_attributes/common-attributes.adoc[]
5+
:context: cpmso-about
6+
7+
toc::[]
8+
9+
With the Control Plane Machine Set Operator, you can automate management of the control plane machine resources within your {product-title} cluster.
10+
11+
[IMPORTANT]
12+
====
13+
Control plane machine sets cannot manage compute machines, and compute machine sets cannot manage control plane machines.
14+
====
15+
16+
//Trying to balance the two being analogous (so, familiar to admins), but not the same (so, not conflated by admins). I think this language needs a lot of careful scrutiny and consideration.
17+
Control plane machine sets provide for control plane machines similar management capabilities as compute machine sets provide for compute machines. However, these two types of machine sets are separate custom resources defined within the Machine API and have several fundamental differences in their architecture and functionality.
18+
19+
//Control Plane Machine Set Operator overview
20+
include::modules/cpmso-overview.adoc[leveloffset=+1]
21+
22+
[id="cpmso-limitations_{context}"]
23+
== Limitations
24+
25+
In {product-title} {product-version}, the Control Plane Machine Set Operator has the following limitations:
26+
27+
* Only clusters with three control plane machines are supported.
28+
29+
* Horizontal scaling of the control plane is not supported.
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
:_content-type: ASSEMBLY
2+
[id="cpmso-configuration"]
3+
= Control Plane Machine Set Operator configuration
4+
include::_attributes/common-attributes.adoc[]
5+
:context: cpmso-configuration
6+
7+
toc::[]
8+
9+
These example YAML file and snippets demonstrate the base structure for a control plane machine set custom resource (CR) and platform-specific samples for failure domain and provider specification configurations.
10+
11+
//Sample YAML for a control plane machine set custom resource
12+
include::modules/cpmso-yaml-sample-cr.adoc[leveloffset=+1]
13+
////
14+
[role="_additional-resources"]
15+
.Additional resources
16+
* xr@f:../../machine_management/control_plane_machine_management/cpmso-using.adoc#cpmso-feat-config-update_cpmso-using[Updating the control plane configuration]
17+
////
18+
The `<platform_failure_domains>` and `<platform_provider_spec>` sections of the control plane machine set resources are provider-specific. Refer to the example YAML for your cluster:
19+
20+
* xref:../../machine_management/control_plane_machine_management/cpmso-configuration.adoc#cpmso-sample-yaml-aws_cpmso-configuration[Sample YAML snippets for configuring Amazon Web Services clusters]
21+
22+
* xref:../../machine_management/control_plane_machine_management/cpmso-configuration.adoc#cpmso-sample-yaml-azure_cpmso-configuration[Sample YAML snippets for configuring Microsoft Azure clusters]
23+
////
24+
//todo: need vSphere content for this section, omitting for now.
25+
* xr@f:../../machine_management/control_plane_machine_management/cpmso-configuration.adoc#cpmso-sample-yaml-vsphere_cpmso-configuration[Sample YAML snippets for configuring VMware vSphere clusters]
26+
////
27+
28+
29+
[id="cpmso-sample-yaml-aws_{context}"]
30+
== Sample YAML for configuring Amazon Web Services clusters
31+
32+
Some sections of the control plane machine set CR are provider-specific. The example YAML in this section show failure domain and provider specification configurations for an Amazon Web Services (AWS) cluster.
33+
34+
//Sample AWS failure domain configuration
35+
include::modules/cpmso-yaml-failure-domain-aws.adoc[leveloffset=+2]
36+
37+
//Sample AWS provider specification
38+
include::modules/cpmso-yaml-provider-spec-aws.adoc[leveloffset=+2]
39+
40+
[id="cpmso-sample-yaml-azure_{context}"]
41+
== Sample YAML for configuring Microsoft Azure clusters
42+
43+
Some sections of the control plane machine set CR are provider-specific. The example YAML in this section show failure domain and provider specification configurations for an Azure cluster.
44+
45+
//Sample Azure failure domain configuration
46+
include::modules/cpmso-yaml-failure-domain-azure.adoc[leveloffset=+2]
47+
48+
//Sample Azure provider specification
49+
include::modules/cpmso-yaml-provider-spec-azure.adoc[leveloffset=+2]
50+
////
51+
//todo: need vSphere content for this section, omitting for now.
52+
[id="cpmso-sample-yaml-vsphere_{context}"]
53+
== Sample YAML for configuring VMware vSphere clusters
54+
55+
Some sections of the control plane machine set CR are provider-specific. The example YAML in this section shows a provider specification configuration for a VMware vSphere cluster.
56+
57+
//Sample VMware vSphere provider specification
58+
include::modules/cpmso-yaml-provider-spec-vsphere.adoc[leveloffset=+2]
59+
////
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
:_content-type: ASSEMBLY
2+
[id="cpmso-getting-started"]
3+
= Getting started with the Control Plane Machine Set Operator
4+
include::_attributes/common-attributes.adoc[]
5+
:context: cpmso-getting-started
6+
7+
toc::[]
8+
9+
For AWS, {product-title} clusters that are created with version 4.12 or later use the Control Plane Machine Set Operator by default.
10+
11+
To use this Operator on AWS clusters that are upgraded to {product-title} version 4.12 or later from an earlier version, you must xref:../../machine_management/control_plane_machine_management/cpmso-getting-started.adoc#cpmso-activating_cpmso-getting-started[activate the Operator].
12+
13+
For Azure and VMware vSphere clusters, you must xref:../../machine_management/control_plane_machine_management/cpmso-getting-started.adoc#cpmso-creating-cr_cpmso-getting-started[create a `ControlPlaneMachineSet` custom resource (CR)] and then xref:../../machine_management/control_plane_machine_management/cpmso-getting-started.adoc#cpmso-activating_cpmso-getting-started[activate the Operator].
14+
15+
.Control Plane Machine Set Operator implementation matrix
16+
[cols="<.^3,^.^2,^.^2"]
17+
|====
18+
|Cloud provider |Generated CR provided |Manual CR required
19+
20+
|Amazon Web Services (AWS)
21+
|X ^[1]^
22+
|
23+
24+
|Microsoft Azure
25+
|
26+
|X
27+
28+
|VMware vSphere
29+
|
30+
|X ^[2]^
31+
|====
32+
[.small]
33+
--
34+
1. Clusters installed prior to version 4.12 require Operator activation.
35+
2. This provider does not support failure domains.
36+
--
37+
38+
//Activating the Control Plane Machine Set Operator
39+
include::modules/cpmso-activating.adoc[leveloffset=+1]
40+
41+
//Creating a control plane machine set custom resource
42+
include::modules/cpmso-creating-cr.adoc[leveloffset=+1]
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
:_content-type: ASSEMBLY
2+
[id="cpmso-troubleshooting"]
3+
= Troubleshooting the Control Plane Machine Set Operator
4+
include::_attributes/common-attributes.adoc[]
5+
:context: cpmso-troubleshooting
6+
7+
toc::[]
8+
9+
[id="cpmso_ts_ilb_missing_{context}"]
10+
== Internal load balancer missing form Azure provider specification
11+
12+
The `internalLoadBalancer` parameter is required in both the `ControlPlaneMachineSet` and control plane `Machine` CRs, but might not be prepopulated. If this parameter is not populated in those CRs on your cluster, you must populate it on both CRs.
13+
14+
For more information on where this parameter is located in the Azure provider specification, see xref:../../machine_management/control_plane_machine_management/cpmso-configuration.adoc#cpmso-yaml-provider-spec-azure_cpmso-configuration[Sample Azure provider specification].
15+
16+
//Would like to include some detail about the machine CR too, need to see if we have tha structure somewhere.
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
:_content-type: ASSEMBLY
2+
[id="cpmso-using"]
3+
= Managing control plane machines with the Control Plane Machine Set Operator
4+
include::_attributes/common-attributes.adoc[]
5+
:context: cpmso-using
6+
7+
toc::[]
8+
9+
The Control Plane Machine Set Operator automates the following capabilities:
10+
11+
//Vertical resizing of the control plane
12+
include::modules/cpmso-feat-vertical-resize.adoc[leveloffset=+1]
13+
14+
//Recovery of the failed control plane machines
15+
include::modules/cpmso-feat-failure-recovery.adoc[leveloffset=+1]
16+
17+
//Updating the control plane configuration
18+
include::modules/cpmso-feat-config-update.adoc[leveloffset=+1]
19+
20+
//Testing changes to the control plane configuration
21+
include::modules/cpmso-feat-test-changes.adoc[leveloffset=+2]
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../modules

modules/cpmso-activating.adoc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * machine_management/cpmso-getting-started.adoc
4+
5+
:_content-type: PROCEDURE
6+
[id="cpmso-activating_{context}"]
7+
= Activating the Control Plane Machine Set Operator
8+
9+
To use the Control Plane Machine Set Operator on AWS clusters that are upgraded to version 4.12 or later from an earlier version, you must activate the Operator.

modules/cpmso-creating-cr.adoc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * machine_management/cpmso-getting-started.adoc
4+
5+
:_content-type: PROCEDURE
6+
[id="cpmso-creating-cr_{context}"]
7+
= Creating a control plane machine set custom resource
8+
9+
To use the Control Plane Machine Set Operator on clusters that do not generate a `ControlPlaneMachineSet` custom resource (CR), you must create the CR manually.

modules/cpmso-feat-config-update.adoc

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * machine_management/cpmso-about.adoc
4+
5+
:_content-type: CONCEPT
6+
[id="cpmso-feat-config-update_{context}"]
7+
= Updating the control plane configuration

0 commit comments

Comments
 (0)