Skip to content

Commit a993684

Browse files
authored
Merge pull request #68190 from dfitzmau/OSDOCS-6894
OSDOCS-6894:Added ControlPlaneMachineSet support for vSphere
2 parents 9abcfb0 + 7557f49 commit a993684

File tree

6 files changed

+73
-16
lines changed

6 files changed

+73
-16
lines changed

machine_management/control_plane_machine_management/cpmso-configuration.adoc

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,13 @@ Some sections of the control plane machine set CR are provider-specific. The fol
9797
//Sample VMware vSphere provider specification
9898
include::modules/cpmso-yaml-provider-spec-vsphere.adoc[leveloffset=+2]
9999

100+
//Sample VMware vSphere failure domain configuration
101+
include::modules/cpmso-yaml-failure-domain-vsphere.adoc[leveloffset=+2]
102+
103+
[role="_additional-resources"]
104+
.Additional resources
105+
* For an example of a cluster-wide infrastructure CRD that defines resources for each failure domain, see xref:../../post_installation_configuration/post-install-vsphere-zones-regions-configuration.adoc#specifying-regions-zones-infrastructure-vsphere_post-install-vsphere-zones-regions-configuration[Specifying multiple regions and zones for your cluster on vSphere]
106+
100107
[id="cpmso-sample-yaml-openstack_{context}"]
101108
== Sample YAML for configuring {rh-openstack-first} clusters
102109

machine_management/control_plane_machine_management/cpmso-getting-started.adoc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,8 @@ The status of the control plane machine set after installation depends on your c
4949
|
5050

5151
|VMware vSphere
52-
|
53-
|
52+
|X ^[4]^
53+
|X ^[4]^
5454
|X
5555

5656
|{rh-openstack-first}
@@ -63,6 +63,7 @@ The status of the control plane machine set after installation depends on your c
6363
1. AWS clusters that are upgraded from version 4.11 or earlier require xref:../../machine_management/control_plane_machine_management/cpmso-getting-started.adoc#cpmso-activating_cpmso-getting-started[CR activation].
6464
2. GCP and Azure clusters that are upgraded from version 4.12 or earlier require xref:../../machine_management/control_plane_machine_management/cpmso-getting-started.adoc#cpmso-activating_cpmso-getting-started[CR activation].
6565
3. Nutanix and {rh-openstack} clusters that are upgraded from version 4.13 or earlier require xref:../../machine_management/control_plane_machine_management/cpmso-getting-started.adoc#cpmso-activating_cpmso-getting-started[CR activation].
66+
4. In {product-title} {product-version}, installing a cluster with an active generated CR on VWware vSphere is available as a link:https://access.redhat.com/support/offerings/techpreview[Technology Preview] feature. To enable the feature, set the `featureSet` parameter to `TechPreviewNoUpgrade` in the `install-config.yaml file`.
6667
--
6768

6869
//Checking the control plane machine set custom resource state

modules/cpmso-creating-cr.adoc

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,11 +67,6 @@ Before you activate the CR, you must ensure that its configuration is correct fo
6767
<3> Specify the update strategy for the cluster. Valid values are `OnDelete` and `RollingUpdate`. The default value is `RollingUpdate`. For more information about update strategies, see "Updating the control plane configuration".
6868
<4> Specify your cloud provider platform name. Valid values are `AWS`, `Azure`, `GCP`, `Nutanix`, `VSphere`, and `OpenStack`.
6969
<5> Add the `<platform_failure_domains>` configuration for the cluster. The format and values of this section are provider-specific. For more information, see the sample failure domain configuration for your cloud provider.
70-
+
71-
[NOTE]
72-
====
73-
VMware vSphere does not support failure domains. For vSphere clusters, replace `<platform_failure_domains>` with an empty `failureDomains:` parameter.
74-
====
7570
<6> Specify the infrastructure ID.
7671
<7> Add the `<platform_provider_spec>` configuration for the cluster. The format and values of this section are provider-specific. For more information, see the sample provider specification for your cloud provider.
7772
--
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * machine_management/cpmso-configuration.adoc
4+
5+
:_mod-docs-content-type: REFERENCE
6+
[id="cpmso-yaml-failure-domain-vsphere_{context}"]
7+
= Sample VMware vSphere failure domain configuration
8+
9+
On VMware vSphere infrastructure, the cluster-wide infrastructure Custom Resource Definition (CRD), `infrastructures.config.openshift.io`, defines failure domains for your cluster. The `providerSpec` in the `ControlPlaneMachineSet` custom resource (CR) specifies names for failure domains. A failure domain is an infrastructure resource that comprises a control plane machine set, a vCenter datacenter, vCenter datastore, and a network.
10+
11+
By using a failure domain resource, you can use a control plane machine set to deploy control plane machines on hardware that is separate from the primary VMware vSphere infrastructure. A control plane machine set also balances control plane machines across defined failure domains to provide fault tolerance capabilities to your infrastructure.
12+
13+
[NOTE]
14+
====
15+
If you modify the `ProviderSpec` configuration in the `ControlPlaneMachineSet` CR, the control plane machine set updates all control plane machines deployed on the primary infrastructure and each failure domain infrastructure.
16+
====
17+
18+
:FeatureName: Defining a failure domain for a control plane machine set
19+
include::snippets/technology-preview.adoc[]
20+
21+
.Example ProviderSpec configuration with specified failure domain names
22+
[source,yaml]
23+
----
24+
apiVersion: machine.openshift.io/v1
25+
kind: ControlPlaneMachineSet
26+
metadata:
27+
name: cluster
28+
namespace: openshift-machine-api
29+
spec:
30+
# ...
31+
template:
32+
machineType: machines_v1beta1_machine_openshift_io
33+
machines_v1beta1_machine_openshift_io:
34+
failureDomains: <1>
35+
platform: VSphere
36+
vsphere: <2>
37+
- name: <failure_domain_name1>
38+
- name: <failure_domain_name2>
39+
# ...
40+
----
41+
<1> A failure domain defines the vCenter location for {product-title} cluster nodes.
42+
<2> Defines failure domains by name for the control plane machine set.
43+
44+
[IMPORTANT]
45+
====
46+
Each `failureDomains.platform.vsphere.name` field value in the `ControlPlaneMachineSet` CR must match the corresponding value defined in the `failureDomains.name` field of the cluster-wide infrastructure CRD. Currently, the `vsphere.name` field is the only supported failure domain field that you can specify in the `ControlPlaneMachineSet` CR.
47+
====

modules/cpmso-yaml-sample-cr.adoc

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,4 @@ Before you activate the Operator, you must ensure that the `ControlPlaneMachineS
5959
<5> Specifies the update strategy for the cluster. The allowed values are `OnDelete` and `RollingUpdate`. The default value is `RollingUpdate`. For more information about update strategies, see "Updating the control plane configuration".
6060
<6> Specifies the cloud provider platform name. Do not change this value.
6161
<7> Specifies the `<platform_failure_domains>` configuration for the cluster. The format and values of this section are provider-specific. For more information, see the sample failure domain configuration for your cloud provider.
62-
+
63-
[NOTE]
64-
====
65-
VMware vSphere does not support failure domains.
66-
====
6762
<8> Specifies the `<platform_provider_spec>` configuration for the cluster. The format and values of this section are provider-specific. For more information, see the sample provider specification for your cloud provider.

modules/installation-user-infra-generate-k8s-manifest-ignition.adoc

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,6 @@ ifeval::["{context}" == "installing-azure-stack-hub-user-infra"]
3838
:ash:
3939
:azure-user-infra:
4040
endif::[]
41-
ifeval::["{context}" == "installing-restricted-networks-vsphere"]
42-
:vsphere:
43-
:restricted:
44-
endif::[]
4541
ifeval::["{context}" == "installing-bare-metal"]
4642
:baremetal:
4743
endif::[]
@@ -73,6 +69,16 @@ ifeval::["{context}" == "installing-vsphere"]
7369
:vsphere:
7470
:three-node-cluster:
7571
endif::[]
72+
ifeval::["{context}" == "installing-vsphere-installer-provisioned-network-customizations"]
73+
:vsphere:
74+
endif::[]
75+
ifeval::["{context}" == "installing-vsphere-network-customizations"]
76+
:vsphere:
77+
endif::[]
78+
ifeval::["{context}" == "installing-restricted-networks-vsphere"]
79+
:vsphere:
80+
:restricted:
81+
endif::[]
7682
ifeval::["{context}" == "installing-platform-agnostic"]
7783
:baremetal:
7884
endif::[]
@@ -533,6 +539,12 @@ ifeval::["{context}" == "installing-vsphere"]
533539
:!vsphere:
534540
:!three-node-cluster:
535541
endif::[]
542+
ifeval::["{context}" == "installing-vsphere-installer-provisioned-network-customizations"]
543+
:!vsphere:
544+
endif::[]
545+
ifeval::["{context}" == "installing-vsphere-network-customizations"]
546+
:!vsphere:
547+
endif::[]
536548
ifeval::["{context}" == "installing-restricted-networks-vsphere"]
537549
:!vsphere:
538550
:!restricted:

0 commit comments

Comments
 (0)