mirror of
https://github.com/openshift/openshift-docs.git
synced 2026-02-05 12:46:18 +01:00
131 lines
4.6 KiB
Plaintext
131 lines
4.6 KiB
Plaintext
// Module included in the following assemblies:
|
|
// * installing/installing_aws/installing-aws-three-node.adoc
|
|
// * installing/installing_azure/installing-azure-three-node.adoc
|
|
// * installing/installing_gcp/installing-gcp-three-node.adoc
|
|
// * installing/installing_vsphere/installing-vsphere-three-node.adoc
|
|
|
|
ifeval::["{context}" == "installing-aws-three-node"]
|
|
:aws:
|
|
endif::[]
|
|
ifeval::["{context}" == "installing-azure-three-node"]
|
|
:azure:
|
|
endif::[]
|
|
ifeval::["{context}" == "installing-gcp-three-node"]
|
|
:gcp:
|
|
endif::[]
|
|
ifeval::["{context}" == "installing-vsphere-three-node"]
|
|
:vsphere:
|
|
endif::[]
|
|
ifeval::["{context}" == "installing-nutanix-three-node"]
|
|
:nutanix:
|
|
endif::[]
|
|
ifeval::["{context}" == "installing-openstack-three-node"]
|
|
:openstack:
|
|
endif::[]
|
|
|
|
:_mod-docs-content-type: PROCEDURE
|
|
[id="installation-three-node-cluster_{context}"]
|
|
= Configuring a three-node cluster
|
|
|
|
[role="_abstract"]
|
|
To configure a three-node cluster, set the number of worker nodes to `0` in the `install-config.yaml` file before you deploy the cluster.
|
|
|
|
Setting the number of worker nodes to `0` ensures that the control plane machines are schedulable. This allows application workloads to be scheduled to run from the control plane nodes.
|
|
|
|
[NOTE]
|
|
====
|
|
Because application workloads run from control plane nodes, additional subscriptions are required, as the control plane nodes are considered to be compute nodes.
|
|
====
|
|
|
|
.Prerequisites
|
|
|
|
* You have an existing `install-config.yaml` file.
|
|
|
|
.Procedure
|
|
|
|
ifndef::nutanix,openstack[]
|
|
. Set the number of compute replicas to `0` in your `install-config.yaml` file, as shown in the following `compute` stanza:
|
|
endif::nutanix,openstack[]
|
|
|
|
ifdef::nutanix,openstack[]
|
|
* Set the number of compute replicas to `0` in your `install-config.yaml` file, as shown in the following `compute` stanza:
|
|
endif::nutanix,openstack[]
|
|
|
|
+
|
|
.Example `install-config.yaml` file for a three-node cluster
|
|
[source,yaml]
|
|
----
|
|
apiVersion: v1
|
|
baseDomain: example.com
|
|
compute:
|
|
- name: worker
|
|
platform: {}
|
|
replicas: 0
|
|
# ...
|
|
----
|
|
|
|
ifndef::vsphere,nutanix,openstack[]
|
|
. If you are deploying a cluster with user-provisioned infrastructure:
|
|
** 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`.
|
|
ifdef::aws[]
|
|
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".
|
|
endif::aws[]
|
|
ifdef::azure[]
|
|
For more information, see "Creating the Kubernetes manifest and Ignition config files" in "Installing a cluster on Azure using ARM templates".
|
|
endif::azure[]
|
|
ifdef::gcp[]
|
|
For more information, see "Creating the Kubernetes manifest and Ignition config files" in "Installing a cluster on user-provisioned infrastructure in {gcp-short} by using Deployment Manager templates".
|
|
endif::gcp[]
|
|
** Do not create additional worker nodes.
|
|
endif::vsphere,nutanix,openstack[]
|
|
|
|
ifdef::vsphere[]
|
|
. If you are deploying a cluster with user-provisioned infrastructure:
|
|
** 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".
|
|
** 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`.
|
|
ifdef::vsphere[]
|
|
For more information, see "Creating the Kubernetes manifest and Ignition config files" in "Installing a cluster on vSphere with user-provisioned infrastructure".
|
|
endif::vsphere[]
|
|
** Do not create additional worker nodes.
|
|
endif::vsphere[]
|
|
|
|
|
|
ifndef::nutanix,openstack[]
|
|
+
|
|
--
|
|
.Example `cluster-scheduler-02-config.yml` file for a three-node cluster
|
|
[source,yaml]
|
|
----
|
|
apiVersion: config.openshift.io/v1
|
|
kind: Scheduler
|
|
metadata:
|
|
creationTimestamp: null
|
|
name: cluster
|
|
spec:
|
|
mastersSchedulable: true
|
|
policy:
|
|
name: ""
|
|
status: {}
|
|
----
|
|
--
|
|
endif::nutanix,openstack[]
|
|
|
|
ifeval::["{context}" == "installing-aws-three-node"]
|
|
:!aws:
|
|
endif::[]
|
|
ifeval::["{context}" == "installing-azure-three-node"]
|
|
:!azure:
|
|
endif::[]
|
|
ifeval::["{context}" == "installing-gcp-three-node"]
|
|
:!gcp:
|
|
endif::[]
|
|
ifeval::["{context}" == "installing-vsphere-three-node"]
|
|
:!vsphere:
|
|
endif::[]
|
|
ifeval::["{context}" == "installing-nutanix-three-node"]
|
|
:!nutanix:
|
|
endif::[]
|
|
ifeval::["{context}" == "installing-openstack-three-node"]
|
|
:!openstack:
|
|
endif::[]
|