Skip to content

Commit e56b54e

Browse files
authored
Merge pull request #56859 from mjpytlak/osdocs-5228
OSDOCS#5228: Installing a three-node Azure cluster
2 parents 44e8b8e + a14e091 commit e56b54e

8 files changed

+79
-20
lines changed

_topic_maps/_topic_map.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,8 @@ Topics:
212212
File: installing-azure-government-region
213213
- Name: Installing a cluster on Azure using ARM templates
214214
File: installing-azure-user-infra
215+
- Name: Installing a three-node cluster on Azure
216+
File: installing-azure-three-node
215217
- Name: Uninstalling a cluster on Azure
216218
File: uninstalling-cluster-azure
217219
- Name: Installing on Azure Stack Hub

installing/installing_azure/installing-azure-customizations.adoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
= Installing a cluster on Azure with customizations
44
include::_attributes/common-attributes.adoc[]
55
:context: installing-azure-customizations
6+
:platform: Azure
67

78
toc::[]
89

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
:_content-type: ASSEMBLY
2+
[id="installing-azure-three-node"]
3+
= Installing a three-node cluster on Azure
4+
include::_attributes/common-attributes.adoc[]
5+
:context: installing-azure-three-node
6+
7+
toc::[]
8+
9+
In {product-title} version {product-version}, you can install a three-node cluster on Microsoft Azure. A three-node cluster consists of three control plane machines, which also act as compute machines. This type of cluster provides a smaller, more resource efficient cluster, for cluster administrators and developers to use for testing, development, and production.
10+
11+
You can install a three-node cluster using either installer-provisioned or user-provisioned infrastructure.
12+
13+
[NOTE]
14+
====
15+
Deploying a three-node cluster using an Azure Marketplace image is not supported.
16+
====
17+
18+
include::modules/installation-three-node-cluster-cloud-provider.adoc[leveloffset=+1]
19+
20+
== Next steps
21+
* xref:../../installing/installing_azure/installing-azure-customizations.adoc#installing-azure-customizations[Installing a cluster on Azure with customizations]
22+
* xref:../../installing/installing_azure/installing-azure-user-infra.adoc#installing-azure-user-infra[Installing a cluster on Azure using ARM templates]

installing/installing_azure/installing-azure-user-infra.adoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
= Installing a cluster on Azure using ARM templates
44
include::_attributes/common-attributes.adoc[]
55
:context: installing-azure-user-infra
6+
:platform: Azure
67

78
toc::[]
89

modules/installation-creating-azure-worker.adoc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
ifeval::["{context}" == "installing-azure-user-infra"]
77
:azure:
88
:cp: Azure
9+
:three-node-cluster:
910
endif::[]
1011
ifeval::["{context}" == "installing-azure-stack-hub-user-infra"]
1112
:ash:
@@ -21,6 +22,13 @@ to use by launching individual instances discretely or by automated processes
2122
outside the cluster, such as auto scaling groups. You can also take advantage of
2223
the built-in cluster scaling mechanisms and the machine API in {product-title}.
2324

25+
ifdef::three-node-cluster[]
26+
[NOTE]
27+
====
28+
If you are installing a three-node cluster, skip this step. A three-node cluster consists of three control plane machines, which also act as compute machines.
29+
====
30+
endif::three-node-cluster[]
31+
2432
In this example, you manually launch one instance by using the Azure Resource
2533
Manager (ARM) template. Additional instances can be launched by including
2634
additional resources of type `06_workers.json` in the file.
@@ -86,6 +94,7 @@ endif::ash[]
8694
ifeval::["{context}" == "installing-azure-user-infra"]
8795
:!azure:
8896
:!cp: Azure
97+
:!three-node-cluster:
8998
endif::[]
9099
ifeval::["{context}" == "installing-azure-stack-hub-user-infra"]
91100
:!ash:

modules/installation-initializing.adoc

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ ifeval::["{context}" == "installing-aws-outposts-remote-workers"]
7272
endif::[]
7373
ifeval::["{context}" == "installing-azure-customizations"]
7474
:azure:
75+
:three-node-cluster:
7576
endif::[]
7677
ifeval::["{context}" == "installing-azure-network-customizations"]
7778
:azure:
@@ -81,7 +82,7 @@ ifeval::["{context}" == "installing-azure-vnet"]
8182
endif::[]
8283
ifeval::["{context}" == "installing-azure-user-infra"]
8384
:azure:
84-
:azure-user-infra:
85+
:three-node-cluster:
8586
endif::[]
8687
ifeval::["{context}" == "installing-gcp-customizations"]
8788
:gcp:
@@ -447,21 +448,6 @@ ifdef::openshift-origin[]
447448
This field is optional.
448449
endif::[]
449450
endif::rhv[]
450-
ifdef::azure-user-infra[]
451-
.. Optional: If you do not want the cluster to provision compute machines, empty
452-
the compute pool by editing the resulting `install-config.yaml` file to set
453-
`replicas` to `0` for the `compute` pool:
454-
+
455-
[source,yaml]
456-
----
457-
compute:
458-
- hyperthreading: Enabled
459-
name: worker
460-
platform: {}
461-
replicas: 0 <1>
462-
----
463-
<1> Set to `0`.
464-
endif::[]
465451

466452
ifdef::aws-outposts[]
467453
. Modify the `install-config.yaml` file. The AWS Outposts installation has the following limitations which require manual modification of the `install-config.yaml` file:
@@ -695,6 +681,7 @@ ifeval::["{context}" == "installing-aws-outposts-remote-workers"]
695681
endif::[]
696682
ifeval::["{context}" == "installing-azure-customizations"]
697683
:!azure:
684+
:!three-node-cluster:
698685
endif::[]
699686
ifeval::["{context}" == "installing-azure-network-customizations"]
700687
:!azure:
@@ -704,7 +691,7 @@ ifeval::["{context}" == "installing-azure-vnet"]
704691
endif::[]
705692
ifeval::["{context}" == "installing-azure-user-infra"]
706693
:!azure:
707-
:!azure-user-infra:
694+
:!three-node-cluster:
708695
endif::[]
709696
ifeval::["{context}" == "installing-gcp-customizations"]
710697
:!gcp:

modules/installation-three-node-cluster-cloud-provider.adoc

Lines changed: 38 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,19 @@
11
// Module included in the following assemblies:
22
// * installing/installing_aws/installing-aws-three-node.adoc
3-
// * installing/installing_vsphere/installing-vsphere-three-node.adoc
3+
// * installing/installing_azure/installing-azure-three-node.adoc
44
// * installing/installing_gcp/installing-gcp-three-node.adoc
5+
// * installing/installing_vsphere/installing-vsphere-three-node.adoc
6+
// * installing/installing_vmc/installing-vmc-three-node.adoc
57

8+
ifeval::["{context}" == "installing-aws-three-node"]
9+
:aws:
10+
endif::[]
11+
ifeval::["{context}" == "installing-azure-three-node"]
12+
:azure:
13+
endif::[]
14+
ifeval::["{context}" == "installing-gcp-three-node"]
15+
:gcp:
16+
endif::[]
617
ifeval::["{context}" == "installing-vsphere-three-node"]
718
:vsphere:
819
endif::[]
@@ -38,14 +49,29 @@ compute:
3849
----
3950
ifndef::vsphere,vmc[]
4051
. If you are deploying a cluster with user-provisioned infrastructure:
41-
** After you create the Kubernetes manifest and Ignition config files, make sure that the `spec.mastersSchedulable` parameter is set to `true` in `cluster-scheduler-02-config.yml` file. You can locate this file in `<installation_directory>/manifests`.
52+
** After you create the Kubernetes manifest files, make sure that the `spec.mastersSchedulable` parameter is set to `true` in `cluster-scheduler-02-config.yml` file. You can locate this file in `<installation_directory>/manifests`.
53+
ifdef::aws[]
54+
For more information, see "Creating the Kubernetes manifest and Ignition config files" in "Installing a cluster on user-provisioned infrastructure in AWS by using CloudFormation templates".
55+
endif::aws[]
56+
ifdef::azure[]
57+
For more information, see "Creating the Kubernetes manifest and Ignition config files" in "Installing a cluster on Azure using ARM templates".
58+
endif::azure[]
59+
ifdef::gcp[]
60+
For more information, see "Creating the Kubernetes manifest and Ignition config files" in "Installing a cluster on user-provisioned infrastructure in GCP by using Deployment Manager templates".
61+
endif::gcp[]
4262
** Do not create additional worker nodes.
4363
endif::vsphere,vmc[]
4464

4565
ifdef::vsphere,vmc[]
4666
. If you are deploying a cluster with user-provisioned infrastructure:
4767
** Configure your application ingress load balancer to route HTTP and HTTPS traffic to the control plane nodes. In a three-node cluster, the Ingress Controller pods run on the control plane nodes. For more information, see the "Load balancing requirements for user-provisioned infrastructure".
48-
** After you create the Kubernetes manifest and Ignition config files, make sure that the `spec.mastersSchedulable` parameter is set to `true` in `cluster-scheduler-02-config.yml` file. You can locate this file in `<installation_directory>/manifests`.
68+
** After you create the Kubernetes manifest files, make sure that the `spec.mastersSchedulable` parameter is set to `true` in `cluster-scheduler-02-config.yml` file. You can locate this file in `<installation_directory>/manifests`.
69+
ifdef::vsphere[]
70+
For more information, see "Creating the Kubernetes manifest and Ignition config files" in "Installing a cluster on vSphere with user-provisioned infrastructure".
71+
endif::vsphere[]
72+
ifdef::vmc[]
73+
For more information, see "Creating the Kubernetes manifest and Ignition config files" in "Installing a cluster on VMC with user-provisioned infrastructure".
74+
endif::vmc[]
4975
** Do not create additional worker nodes.
5076
endif::vsphere,vmc[]
5177

@@ -64,6 +90,15 @@ spec:
6490
status: {}
6591
----
6692

93+
ifeval::["{context}" == "installing-aws-three-node"]
94+
:!aws:
95+
endif::[]
96+
ifeval::["{context}" == "installing-azure-three-node"]
97+
:!azure:
98+
endif::[]
99+
ifeval::["{context}" == "installing-gcp-three-node"]
100+
:!gcp:
101+
endif::[]
67102
ifeval::["{context}" == "installing-vsphere-three-node"]
68103
:!vsphere:
69104
endif::[]

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ endif::[]
3333
ifeval::["{context}" == "installing-azure-user-infra"]
3434
:azure:
3535
:azure-user-infra:
36+
:three-node-cluster:
3637
endif::[]
3738
ifeval::["{context}" == "installing-azure-stack-hub-user-infra"]
3839
:ash:
@@ -505,6 +506,7 @@ endif::[]
505506
ifeval::["{context}" == "installing-azure-user-infra"]
506507
:!azure:
507508
:!azure-user-infra:
509+
:!three-node-cluster:
508510
endif::[]
509511
ifeval::["{context}" == "installing-azure-stack-hub-user-infra"]
510512
:!ash:

0 commit comments

Comments
 (0)