Skip to content

Commit 11cc166

Browse files
committed
Remove the remote worker node cluster install
1 parent f63cc24 commit 11cc166

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+146
-1204
lines changed

README.md

Lines changed: 19 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,14 @@
22

33
Tooling to install clusters for testing via an on-prem [Assisted Installer](https://github.com/openshift/assisted-installer) in the Red Hat Scale Lab, Red Hat Performance Lab, and IBMcloud (Bare Metal).
44

5-
Three separate layouts of clusters can be deployed:
5+
Two types of clusters can be deployed:
66

77
| Layout | Meaning | Description |
88
| - | - | - |
99
| MNO | Multi Node OpenShift | 3 control-plane nodes, X number of worker nodes
10-
| RWN | Remote Worker Node | 3 control-plane/worker nodes, X number of remote worker nodes
1110
| SNO | Single Node OpenShift | 1 OpenShift Master/Worker Node "cluster" per available hardware resource
1211

13-
Each cluster layout requires a bastion machine which is the first machine out of your lab "cloud" allocation. The bastion machine will host the assisted-installer service and serve as a router for clusters with a private machine network. MNO and RWN layouts produce a single cluster consisting of 3 control-plane nodes and X number of worker or remote worker nodes. The worker node count can also be 0 such that your multi node cluster is a compact 3 node cluster with schedulable control-plane nodes. SNO layout creates an SNO cluster per available machine after fulfilling the bastion machine requirement. Lastly, MNO/RWN cluster types will allocate any unused machines under the `hv` ansible group which stands for hypervisor nodes. The `hv` nodes can host vms for additional clusters that can be deployed from the hub cluster. (For ACM/MCE testing)
12+
Both cluster layouts require a bastion machine which is the first machine out of your lab "cloud" allocation. The bastion machine will host the assisted-installer service and serve as a router for clusters with a private machine network. MNO layout produces a single cluster consisting of 3 control-plane nodes and X number of worker nodes. The worker node count can also be 0 such that your multi node cluster is a compact 3 node cluster with schedulable control-plane nodes. SNO layout creates an SNO cluster per available machine after fulfilling the bastion machine requirement. Lastly, MNO cluster type will allocate any unused machines under the `hv` ansible group which stands for hypervisor nodes. The `hv` nodes can host vms for additional clusters that can be deployed from the hub cluster. (For ACM/MCE testing)
1413

1514
_**Table of Contents**_
1615

@@ -30,22 +29,22 @@ The listed hardware has been used for cluster deployments successfully. Potentia
3029

3130
**Performance Lab**
3231

33-
| Hardware | MNO | RWN | SNO |
34-
| -------- | --- | --- | --- |
35-
| 740xd | Yes | No | Yes |
36-
| Dell r750| Yes | No | Yes |
32+
| Hardware | MNO | SNO |
33+
| -------- | --- | --- |
34+
| 740xd | Yes | Yes |
35+
| Dell r750| Yes | Yes |
3736

3837
**Scale Lab**
3938

40-
| Hardware | MNO | RWN | SNO |
41-
| ------------------ | --- | --- | --- |
42-
| Dell r660 | Yes | No | Yes |
43-
| Dell r650 | Yes | No | Yes |
44-
| Dell r640 | Yes | Yes | Yes |
45-
| Dell fc640 | Yes | No | Yes |
46-
| Supermicro 1029p | Yes | Yes | No |
47-
| Supermicro 1029U | Yes | No | Yes |
48-
| Supermicro 5039ms | Yes | No | Yes |
39+
| Hardware | MNO | SNO |
40+
| ------------------ | --- | --- |
41+
| Dell r660 | Yes | Yes |
42+
| Dell r650 | Yes | Yes |
43+
| Dell r640 | Yes | Yes |
44+
| Dell fc640 | Yes | Yes |
45+
| Supermicro 1029p | Yes | No |
46+
| Supermicro 1029U | Yes | Yes |
47+
| Supermicro 5039ms | Yes | Yes |
4948

5049
**IBMcloud**
5150

@@ -135,11 +134,11 @@ Make sure to set/review the following vars:
135134
| - | - |
136135
| `lab` | `performancelab`, `scalelab`, or `ibmcloud`
137136
| `lab_cloud` | the cloud within the lab environment for Red Hat Performance labs (Example: `cloud42`)
138-
| `cluster_type` | either `mno`, `rwn`, or `sno` for the respective cluster layout
139-
| `worker_node_count` | applies to mno and rwn cluster types for the desired worker count, ideal for leaving left over inventory hosts for other purposes
137+
| `cluster_type` | either `mno`, or `sno` for the respective cluster layout
138+
| `worker_node_count` | applies to mno cluster type for the desired worker count, ideal for leaving left over inventory hosts for other purposes
140139
| `bastion_lab_interface` | set to the bastion machine's lab accessible interface
141140
| `bastion_controlplane_interface` | set to the interface in which the bastion will be networked to the deployed ocp cluster
142-
| `controlplane_lab_interface` | applies to mno and rwn cluster types and should map to the nodes interface in which the lab provides dhcp to and also required for public routable vlan based sno deployment(to disable this interface)
141+
| `controlplane_lab_interface` | applies to mno cluster type and should map to the nodes interface in which the lab provides dhcp to and also required for public routable vlan based sno deployment(to disable this interface)
143142

144143
More customization such as `cluster_network` and `service_network` are available as extra vars, check each ansible role default vars file for variable names and options.
145144

@@ -177,7 +176,7 @@ Run setup-bastion playbook
177176
(.ansible) [root@<bastion> jetlag]# ansible-playbook -i ansible/inventory/cloud99.local ansible/setup-bastion.yml
178177
```
179178

180-
Run deploy for either mno/rwn/sno playbook with inventory created by create-inventory playbook
179+
Run deploy for either mno/sno playbook with inventory created by create-inventory playbook
181180

182181
Multi Node OpenShift Cluster:
183182

@@ -186,12 +185,6 @@ Multi Node OpenShift Cluster:
186185
```
187186
See [troubleshooting.md](https://github.com/redhat-performance/jetlag/blob/main/docs/troubleshooting.md) in [docs](https://github.com/redhat-performance/jetlag/tree/main/docs) directory for MNO install related issues
188187

189-
Remote Worker Node Cluster:
190-
191-
```console
192-
(.ansible) [root@<bastion> jetlag]# ansible-playbook -i ansible/inventory/cloud99.local ansible/rwn-deploy.yml
193-
```
194-
195188
Single Node OpenShift:
196189

197190
```console

ansible/inventory/inventory-bm-byol.sample

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,9 @@ gateway=198.18.10.1
4343
dns1=198.18.10.1
4444
dns2=172.29.202.10
4545

46-
[remoteworker]
47-
[remoteworker:vars]
4846
[sno]
4947
[sno:vars]
5048
[hv]
5149
[hv:vars]
5250
[hv_vm]
53-
[hv_vm:vars]
51+
[hv_vm:vars]

ansible/inventory/inventory-bm.sample

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,6 @@ gateway=198.18.10.1
4242
dns1=198.18.10.1
4343
dns2=10.1.36.1
4444

45-
[remoteworker]
46-
# Unused
47-
48-
[remoteworker:vars]
49-
# Unused
50-
5145
[sno]
5246
# Unused
5347

ansible/inventory/inventory-rwn.sample

Lines changed: 0 additions & 68 deletions
This file was deleted.

ansible/inventory/inventory-sno.sample

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,6 @@ bmc_password=password
2121
[worker:vars]
2222
# Unused
2323

24-
[remoteworker]
25-
# Unused
26-
27-
[remoteworker:vars]
28-
# Unused
29-
3024
[sno]
3125
# Single Node OpenShift Clusters
3226
sno-0 bmc_address=mgmt-sno-0.example.com boot_iso=sno-0.iso ip=10.0.0.1 vendor=Dell lab_mac=00:4e:01:3d:e6:9e network_mac=40:a6:b7:00:63:61 install_disk=/dev/sda

ansible/roles/bastion-install/defaults/main.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@ install_rh_crucible: false
1212
rh_crucible_url: https://github.com/perftool-incubator/crucible
1313

1414

15-
# Since the use of tc on the bastion machine is rare and only for remote worker node testing in Red Hat labs, we
16-
# disable rebooting the bastion machine by default.
15+
# Since the use of tc on the bastion machine is rare, we disable rebooting the bastion machine by default
1716
bastion_install_tc_reboot: false
1817

1918
# promdump

ansible/roles/bastion-network/tasks/main.yml

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -119,14 +119,3 @@
119119
ip6: "{{ bastion_controlplane_ip }}/{{ controlplane_network_prefix }}"
120120
state: present
121121
when: bastion_controlplane_ip | ansible.utils.ipv6
122-
123-
- name: Setup rwn vlaned interfaces
124-
nmcli:
125-
type: vlan
126-
vlandev: "{{ bastion_vlaned_interface }}"
127-
vlanid: "{{ hostvars[item].vlan }}"
128-
conn_name: "{{ bastion_vlaned_interface }}.{{ hostvars[item].vlan }}"
129-
ip4: "{{ hostvars[item].gateway }}/{{ hostvars[item].network_prefix }}"
130-
state: present
131-
when: cluster_type == "rwn"
132-
loop: "{{ groups['remoteworker'] }}"

ansible/roles/create-ai-cluster/tasks/main.yml

Lines changed: 0 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -135,47 +135,3 @@
135135
- file_name: 99-disconnected-dns-workaround.yml
136136
template_name: 99-disconnected-dns-workaround.yml
137137
enabled: "{{ use_bastion_registry }}"
138-
139-
- name: RWN - Get OpenShift versions to obtain coredns image
140-
uri:
141-
url: "http://{{ assisted_installer_host }}:{{ assisted_installer_port }}/api/assisted-install/v2/openshift_versions"
142-
method: GET
143-
status_code: [200, 201]
144-
return_content: true
145-
register: versions
146-
when: cluster_type == "rwn"
147-
148-
- name: RWN - Obtain coredns image for this specific OpenShift version
149-
shell: |
150-
oc adm release info {{ versions.json[openshift_version]['release_image'] }} --image-for=coredns
151-
register: coredns_version_output
152-
when:
153-
- cluster_type == "rwn"
154-
- '"registry.ci.openshift.org" not in versions.json[openshift_version]["release_image"]'
155-
156-
- name: RWN - Set coredns image for released version
157-
set_fact:
158-
coredns_image: "{{ coredns_version_output.stdout }}"
159-
when:
160-
- cluster_type == "rwn"
161-
- '"registry.ci.openshift.org" not in versions.json[openshift_version]["release_image"]'
162-
163-
- name: RWN - Set coredns image (registry.ci.openshift.org)
164-
set_fact:
165-
coredns_image: "quay.io/openshift/origin-coredns:{{ openshift_version }}"
166-
when:
167-
- cluster_type == "rwn"
168-
- '"registry.ci.openshift.org" in versions.json[openshift_version]["release_image"]'
169-
170-
- name: RWN - Add additional manifest for remote worker node cluster
171-
uri:
172-
url: "http://{{ assisted_installer_host }}:{{ assisted_installer_port }}/api/assisted-install/v2/clusters/{{ ai_cluster_id }}/manifests"
173-
method: POST
174-
body_format: json
175-
status_code: [201]
176-
body: {
177-
"folder": "manifests",
178-
"file_name": "50-worker-fix-ipi-rwn.yaml",
179-
"content": "{{ lookup('template', './50-worker-fix-ipi-rwn.yml.j2') | b64encode }}"
180-
}
181-
when: cluster_type == "rwn"

ansible/roles/create-ai-cluster/templates/50-worker-fix-ipi-rwn.yml.j2

Lines changed: 0 additions & 57 deletions
This file was deleted.

ansible/roles/create-ai-cluster/templates/rwn-Corefile.j2

Lines changed: 0 additions & 34 deletions
This file was deleted.

0 commit comments

Comments
 (0)