From 714744c00173a7583a01322fab98e0a578356dcf Mon Sep 17 00:00:00 2001 From: Sandeep Gehlot Date: Mon, 13 Jul 2026 23:53:48 +0530 Subject: [PATCH] OSDOCS#19136_arbiter_check_10 --- .../about-two-node-arbiter-installation.adoc | 3 +- ...installing-with-agent-based-installer.adoc | 3 -- ...to-install-with-agent-based-installer.adoc | 6 ++- ...installation-configuration-parameters.adoc | 4 +- ...stalling-ocp-agent-local-arbiter-node.adoc | 38 ++++++++----------- modules/understanding-agent-install.adoc | 1 + 6 files changed, 25 insertions(+), 30 deletions(-) diff --git a/installing/installing_two_node_cluster/about-two-node-arbiter-installation.adoc b/installing/installing_two_node_cluster/about-two-node-arbiter-installation.adoc index d1ff07970110..8e894d608849 100644 --- a/installing/installing_two_node_cluster/about-two-node-arbiter-installation.adoc +++ b/installing/installing_two_node_cluster/about-two-node-arbiter-installation.adoc @@ -3,6 +3,7 @@ = Two-Node with Arbiter :context: about-two-node-arbiter-installation +[role="_abstract"] An {product-title} cluster with two control plane nodes and one local arbiter node is a compact, cost-effective {product-title} topology. The arbiter node stores the full etcd data, maintaining an etcd quorum and preventing split brain. The arbiter node does not run the additional control plane components `kube-apiserver` and `kube-controller-manager`, nor does it run workloads. To install a cluster with two control plane nodes and one local arbiter node, assign an arbiter role to at least one of the nodes and set the control plane node count for the cluster to 2. Although {product-title} does not currently impose a limit on the number of arbiter nodes, the typical deployment includes only one to minimize the use of hardware resources. @@ -22,6 +23,6 @@ For a cluster with an arbiter, the same networking requirements as a regular clu * xref:../installing_bare_metal/ipi/ipi-install-installation-workflow.adoc#ipi-install-config-local-arbiter-node_ipi-install-installation-workflow[Configuring a local arbiter node with installer-provisioned infrastructure] -* xref:../../installing/installing_with_agent_based_installer/installing-with-agent-based-installer.adoc#installing-ocp-agent-local-arbiter-node_installing-with-agent-based-installer[Configuring a local arbiter node with the Agent-based Installer] +* xref:../../installing/installing_with_agent_based_installer/preparing-to-install-with-agent-based-installer.adoc#installing-ocp-agent-local-arbiter-node_preparing-to-install-with-agent-based-installer[About a local arbiter node] * xref:../installing_bare_metal/upi/installing-bare-metal.adoc#upi-install-config-local-arbiter-node_installing-bare-metal[Configuring a local arbiter node with user-provisioned infrastructure] diff --git a/installing/installing_with_agent_based_installer/installing-with-agent-based-installer.adoc b/installing/installing_with_agent_based_installer/installing-with-agent-based-installer.adoc index 7734ac7adbe7..5eed77426942 100644 --- a/installing/installing_with_agent_based_installer/installing-with-agent-based-installer.adoc +++ b/installing/installing_with_agent_based_installer/installing-with-agent-based-installer.adoc @@ -78,9 +78,6 @@ include::modules/installing-ocp-agent-boot.adoc[leveloffset=+1] // Adding {ibm-z-name} agents with {op-system-base} KVM include::modules/installing-ocp-agent-ibm-z-kvm.adoc[leveloffset=+1] -// Configuring a local arbiter node -include::modules/installing-ocp-agent-local-arbiter-node.adoc[leveloffset=+1] - // Verifying that the current installation host can pull release images include::modules/installing-ocp-agent-tui.adoc[leveloffset=+1] diff --git a/installing/installing_with_agent_based_installer/preparing-to-install-with-agent-based-installer.adoc b/installing/installing_with_agent_based_installer/preparing-to-install-with-agent-based-installer.adoc index 795baaba8499..4970e447bdac 100644 --- a/installing/installing_with_agent_based_installer/preparing-to-install-with-agent-based-installer.adoc +++ b/installing/installing_with_agent_based_installer/preparing-to-install-with-agent-based-installer.adoc @@ -63,13 +63,14 @@ include::modules/understanding-agent-install.adoc[leveloffset=+1] * xref:../../nodes/nodes/nodes-sno-worker-nodes.adoc#nodes-sno-worker-nodes[Adding worker nodes to {sno} clusters] +* xref:../../installing/installing_with_agent_based_installer/preparing-to-install-with-agent-based-installer.adoc#installing-ocp-agent-local-arbiter-node_preparing-to-install-with-agent-based-installer[About a local arbiter node] + //About FIPS compliance include::modules/agent-installer-fips-compliance.adoc[leveloffset=+1] //Configuring FIPS through the Agent-based Installer include::modules/agent-installer-configuring-fips-compliance.adoc[leveloffset=+1] - [role="_additional-resources"] .Additional resources @@ -105,6 +106,9 @@ include::modules/agent-install-load-balancing-none.adoc[leveloffset=+2] * link:https://access.redhat.com/articles/4207611[Deploying OpenShift 4.x on non-tested platforms using the bare metal install method (Red{nbsp}Hat Knowledgebase article)] +// About a local arbiter node +include::modules/installing-ocp-agent-local-arbiter-node.adoc[leveloffset=+1] + //Example: Bonds and VLAN interface node network configuration include::modules/agent-install-sample-config-bonds-vlans.adoc[leveloffset=+1] diff --git a/modules/installation-configuration-parameters.adoc b/modules/installation-configuration-parameters.adoc index ba6004336b34..4cafaabab970 100644 --- a/modules/installation-configuration-parameters.adoc +++ b/modules/installation-configuration-parameters.adoc @@ -852,11 +852,11 @@ Supported values are `3`, `4`, `5`, or `1` when deploying {sno}. endif::agent[] |arbiter: - name: arbiter + name: |The {product-title} cluster requires a name for arbiter nodes. For example, `arbiter`. |arbiter: - replicas: 1 + replicas: |The `replicas` parameter sets the number of arbiter nodes for the {product-title} cluster. You cannot set this field to a value that is greater than 1. |credentialsMode: diff --git a/modules/installing-ocp-agent-local-arbiter-node.adoc b/modules/installing-ocp-agent-local-arbiter-node.adoc index 3ff7b2217d2e..fc59e2a64f01 100644 --- a/modules/installing-ocp-agent-local-arbiter-node.adoc +++ b/modules/installing-ocp-agent-local-arbiter-node.adoc @@ -1,11 +1,12 @@ // Module included in the following assemblies: // -// * installing/installing_with_agent_based_installer/installing-with-agent-basic.adoc +// * installing/installing_with_agent_based_installer/preparing-to-install-with-agent-based-installer.adoc -:_mod-docs-content-type: PROCEDURE +:_mod-docs-content-type: CONCEPT [id="installing-ocp-agent-local-arbiter-node_{context}"] -= Configuring a local arbiter node += About a local arbiter node +[role="_abstract"] You can configure an {product-title} cluster with two control plane nodes and one local arbiter node so as to retain high availability (HA) while reducing infrastructure costs for your cluster. A local arbiter node is a lower-cost, co-located machine that participates in control plane quorum decisions. Unlike a standard control plane node, the arbiter node does not run the full set of control plane services. You can use this configuration to maintain HA in your cluster with only two fully provisioned control plane nodes instead of three. @@ -36,15 +37,6 @@ The control plane nodes must meet the following minimum system requirements: Additionally, the control plane nodes must also have enough storage for the workload. -.Prerequisites - -* You have downloaded {oc-first} and the installation program. -* You have logged into the {oc-first}. - -.Procedure - -. Edit the `install-config.yaml` file to define the arbiter node alongside control plane nodes. -+ .Example `install-config.yaml` configuration for deploying an arbiter node [source,yaml] ---- @@ -56,20 +48,20 @@ compute: name: worker platform: {} replicas: 0 -arbiter: <1> +arbiter: architecture: amd64 hyperthreading: Enabled - replicas: 1 <2> - name: arbiter <3> + replicas: 1 + name: arbiter platform: baremetal: {} -controlPlane: <4> +controlPlane: architecture: amd64 hyperthreading: Enabled name: master platform: baremetal: {} - replicas: 2 <5> + replicas: 2 platform: baremetal: # ... @@ -84,10 +76,10 @@ platform: role: arbiter # ... ---- -<1> Defines the arbiter machine pool. You must configure this field to deploy a cluster with an arbiter node. -<2> Set the `replicas` field to `1` for the arbiter pool. You cannot set this field to a value that is greater than 1. -<3> Specifies a name for the arbiter machine pool. -<4> Defines the control plane machine pool. -<5> When an arbiter pool is defined, two control plane replicas are valid. +where: -. Save the modified `install-config.yaml` file. \ No newline at end of file +`arbiter`:: Specifies the arbiter machine pool. You configure this field to deploy a cluster with an arbiter node. +`arbiter.replicas`:: Specifies the `arbiter.replicas` parameter as `1` for the arbiter pool. You cannot set this field to a value that is greater than 1. +`arbiter.name`:: Specifies a name for the arbiter machine pool. +`controlPlane`:: Specifies the control plane machine pool. +`controlPlane.replicas`:: Specifies the `controlPlane.replicas` parameter. When an arbiter pool is defined, two control plane replicas are valid. diff --git a/modules/understanding-agent-install.adoc b/modules/understanding-agent-install.adoc index ad89f3cb1b1b..178d3c719a2e 100644 --- a/modules/understanding-agent-install.adoc +++ b/modules/understanding-agent-install.adoc @@ -51,6 +51,7 @@ You can install a disconnected {product-title} cluster through the `openshift-in * **A single-node {product-title} cluster**: A node that is both a control plane and compute. * **A three-node {product-title} cluster** : A compact cluster that has three control plane nodes that are also compute nodes. * **Highly available {product-title} cluster (HA)**: Three control plane nodes with any number of compute nodes. +* **Two-Node {product-title} cluster with Arbiter**: Two control plane nodes with one local arbiter node. For more information, see "About a local arbiter node". [id="agent-based-installer-recommended-resources_{context}"] == Recommended resources for topologies