Skip to content

Commit 6d993e7

Browse files
authored
Merge pull request #98503 from sr1kar99/13767-tnf-tech-preview
OSDOCS#12987: Two-node OpenShift cluster with fencing (Technology Preview)
2 parents 2f3e444 + 466e5fc commit 6d993e7

26 files changed

+1035
-81
lines changed

_topic_maps/_topic_map.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -427,6 +427,23 @@ Topics:
427427
File: install-sno-preparing-to-install-sno
428428
- Name: Installing OpenShift on a single node
429429
File: install-sno-installing-sno
430+
- Name: Installing a Two Node OpenShift Cluster
431+
Dir: installing_two_node_cluster
432+
Distros: openshift-origin,openshift-enterprise
433+
Topics:
434+
- Name: Two-Node with Arbiter
435+
File: about-two-node-arbiter-installation
436+
- Name: Two-node with Fencing
437+
Dir: installing_tnf
438+
Distros: openshift-enterprise,openshift-origin
439+
Topics:
440+
- Name: Preparing to install a two-node OpenShift cluster with fencing
441+
File: installing-two-node-fencing
442+
- Name: Installing a two-node OpenShift cluster with fencing
443+
File: install-tnf
444+
- Name: Post-installation troubleshooting and recovery
445+
File: install-post-tnf
446+
430447
- Name: Installing on bare metal
431448
Dir: installing_bare_metal
432449
Distros: openshift-origin,openshift-enterprise
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../_attributes/
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
:_mod-docs-content-type: ASSEMBLY
2+
[id="about-two-node-arbiter-installation"]
3+
= Two-Node with Arbiter
4+
:context: about-two-node-arbiter-installation
5+
6+
A Two-Node OpenShift with Arbiter (TNA) cluster is a compact, cost-effective {product-title} topology. The topology consists of two control plane nodes and a lightweight arbiter node. 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.
7+
8+
To install a Two-Node OpenShift with Arbiter cluster, 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.
9+
10+
After installation, you can add additional arbiter nodes to a Two-Node OpenShift with Arbiter cluster but not to a standard multi-node cluster. It is also not possible to convert between a Two-Node OpenShift with Arbiter and standard topology.
11+
12+
You can install a Two-Node Arbiter cluster by using one of the following methods:
13+
14+
* Installing on bare metal: 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]
15+
16+
* Installing with the Agent-based Installer: 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]
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../images/
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../_attributes/
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../images/
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
:_mod-docs-content-type: ASSEMBLY
2+
[id="installing-post-tnf"]
3+
= Post-installation troubleshooting and recovery
4+
include::_attributes/common-attributes.adoc[]
5+
:context: install-post-tnf
6+
7+
toc::[]
8+
9+
// Manually recovering from a disruption event when automated recovery is unavailable
10+
include::modules/installation-manual-recovering-when-auto-recovery-is-unavail.adoc[leveloffset=+1]
11+
12+
[role="_additional-resources"]
13+
== Additional resources
14+
15+
* xref:../../../backup_and_restore/control_plane_backup_and_restore/backing-up-etcd.adoc#backup-etcd-restoring_backing-up-etcd[Restoring etcd from a backup].
16+
17+
* xref:../installing_tnf/install-post-tnf.adoc#installation-verifying-etcd-health_install-post-tnf[Verifying etcd health in a two-node OpenShift cluster with fencing]
18+
19+
// Replacing control plane nodes
20+
include::modules/installation-replacing-control-plane-nodes.adoc[leveloffset=+1]
21+
22+
[role="_additional-resources"]
23+
== Additional resources
24+
25+
* xref:../../../backup_and_restore/control_plane_backup_and_restore/backing-up-etcd.adoc#backup-etcd-restoring_backing-up-etcd[Restoring etcd from a backup].
26+
27+
// Verifying etcd health in a two-node OpenShift cluster with fencing
28+
include::modules/installation-verifying-etcd-health.adoc[leveloffset=+1]
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
:_mod-docs-content-type: ASSEMBLY
2+
[id="installing-tnf"]
3+
= Installing a two-node OpenShift cluster with fencing
4+
include::_attributes/common-attributes.adoc[]
5+
:context: install-tnf
6+
7+
toc::[]
8+
9+
You can deploy a two-node OpenShift cluster with fencing by using either the installer-provisioned infrastructure or the user-provisioned infrastructure installation method. The following examples provide sample `install-config.yaml` configurations for both methods.
10+
11+
[NOTE]
12+
====
13+
Do an etcd backup before proceeding to ensure that you can restore the cluster if any issues occur.
14+
====
15+
16+
// Sample install-config.yaml for a two-node installer-provisioned infrastructure cluster with fencing
17+
include::modules/installation-sample-install-config-two-node-fencing-ipi.adoc[leveloffset=+1]
18+
19+
// Sample install-config.yaml for a two-node user-provisioned infrastructure cluster with fencing
20+
include::modules/installation-sample-install-config-two-node-fencing-upi.adoc[leveloffset=+1]
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
:_mod-docs-content-type: ASSEMBLY
2+
[id="installing-two-node-fencing"]
3+
= Preparing to install a two-node OpenShift cluster with fencing
4+
include::_attributes/common-attributes.adoc[]
5+
:context: installing-two-node-fencing
6+
7+
toc::[]
8+
9+
:FeatureName: Two-node OpenShift cluster with fencing
10+
include::snippets/technology-preview.adoc[leveloffset=+1]
11+
12+
A two-node OpenShift cluster with fencing provides high availability (HA) with a reduced hardware footprint. This configuration is designed for distributed or edge environments where deploying a full three-node control plane cluster is not practical.
13+
14+
A two-node cluster does not include compute nodes. The two control plane machines run user workloads in addition to managing the cluster.
15+
16+
Fencing is managed by Pacemaker, which can isolate an unresponsive node by using the Baseboard Management Console (BMC) of the node. After the unresponsive node is fenced, the remaining node can safely continue operating the cluster without the risk of resource corruption.
17+
18+
[NOTE]
19+
====
20+
You can deploy a two-node OpenShift cluster with fencing by using either the user-provisioned infrastructure method or the installer-provisioned infrastructure method.
21+
====
22+
23+
The two-node OpenShift cluster with fencing requires the following hosts:
24+
25+
.Minimum required hosts
26+
[options="header"]
27+
|===
28+
29+
|Hosts |Description
30+
31+
|Two control plane machines
32+
|The control plane machines run the Kubernetes and {product-title} services that form the control plane.
33+
34+
|One temporary bootstrap machine
35+
|You need a bootstrap machine to deploy the {product-title} cluster on the control plane machines. You can remove the bootstrap machine after you install the cluster.
36+
37+
|===
38+
39+
The bootstrap and control plane machines must use Red Hat Enterprise Linux CoreOS (RHCOS) as the operating system. For instructions on installing RHCOS and starting the bootstrap process, see xref:../../../installing/installing_bare_metal/upi/installing-bare-metal#creating-machines-bare-metal_installing-bare-metal[Installing RHCOS and starting the {product-title} bootstrap process]
40+
[NOTE]
41+
====
42+
The requirement to use RHCOS applies only to user-provisioned infrastructure deployments. For installer-provisioned infrastructure deployments, the bootstrap and control plane machines are provisioned automatically by the installation program, and you do not need to manually install RHCOS.
43+
====
44+
45+
include::modules/installation-two-node-cluster-min-resource-reqs.adoc[leveloffset=+1]
46+
47+
// Two-node-dns-requirements - user-provisioned infrastructure
48+
include::modules/installation-dns-user-infra.adoc[leveloffset=+1]
49+
50+
// Two-node-dns-requirements - installer-provisioned infrastructure
51+
include::modules/installation-dns-installer-infra.adoc[leveloffset=+1]
52+
53+
// Cofiguration for Ingress LB to get it to work with Pacemaker
54+
include::modules/installation-two-node-ingress-lb-configuration.adoc[leveloffset=+1]
55+
56+
// Creating a manifest object that includes a customized br-ex bridge
57+
include::modules/installation-two-node-creating-manifest-custom-br-ex.adoc[leveloffset=+1]
58+
59+
[role="_additional-resources"]
60+
== Additional resources
61+
62+
* xref:../../../installing/installing_bare_metal/ipi/ipi-install-installation-workflow.adoc#creating-manifest-file-customized-br-ex-bridge_ipi-install-installation-workflow[Creating a manifest file for a customized br-ex bridge]
63+
64+
* link:https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html/configuring_and_managing_high_availability_clusters/index[Configuring and managing high availability clusters in RHEL].
65+
66+
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../modules

0 commit comments

Comments
 (0)