Skip to content

[OSDOCS-15316]: Creating a hosted cluster on bare metal #96275

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

lahinson
Copy link
Contributor

@lahinson lahinson commented Jul 17, 2025

@openshift-ci openshift-ci bot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Jul 17, 2025
@lahinson lahinson force-pushed the osdocs-15316-hcp-bm-improvements branch from a51c7f8 to 0c0d363 Compare July 17, 2025 17:00
@lahinson lahinson force-pushed the osdocs-15316-hcp-bm-improvements branch 2 times, most recently from 09a5173 to 4b08e25 Compare July 17, 2025 17:23
@lahinson lahinson force-pushed the osdocs-15316-hcp-bm-improvements branch 3 times, most recently from 73ffe57 to daa7c37 Compare July 17, 2025 19:39
@openshift-ci openshift-ci bot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Jul 17, 2025
@lahinson lahinson force-pushed the osdocs-15316-hcp-bm-improvements branch from daa7c37 to e5561df Compare July 17, 2025 19:57
@lahinson lahinson force-pushed the osdocs-15316-hcp-bm-improvements branch 6 times, most recently from aba8843 to 30573c3 Compare July 18, 2025 15:49
@@ -20,6 +20,8 @@ As you create a hosted cluster, keep the following guidelines in mind:

- The most common service publishing strategy is to expose services through a load balancer. That strategy is the preferred method for exposing the Kubernetes API server. If you create a hosted cluster by using the web console or by using {rh-rhacm-title}, to set a publishing strategy for a service besides the Kubernetes API server, you must manually specify the `servicePublishingStrategy` information in the `HostedCluster` custom resource.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We suggest to use a load balancer but by default with the hcp create agent command the bare metal hosted clusters are created with node port: we should indicate this here. We also should explain how to change the servicePublishingStrategy in the section to create bare metal hosted clusters as otherwise we leave this for the user to research with not even references to where. @jparrill ptal

Copy link
Contributor Author

@lahinson lahinson Jul 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I updated the wording here, but I still need help to describe what users should do to change the servicePublishingStrategy. I've asked Juan for the details.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @lahinson we have all the related doc to ServicePublishingStrategy in here.

If a user want to deploy an Agent HostedCluster using as a ServicePublishingStrategy the LoadBalancer, they would need to modify in the web console this part:

spec:
...
...
  services:
  - service: APIServer
    servicePublishingStrategy:
      type: LoadBalancer
...
...

Note that this is only customizable before deployment, that could not be changed in day-2.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So if users can't pass the service publishing strategy to the command hcp create cluster agent and it must be set before running it, how do we connect the two?

Copy link

@racedo racedo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add information about changing publishing strategy to recommended one for bare metal (load balancer) and explain it's not the default one

@lahinson lahinson force-pushed the osdocs-15316-hcp-bm-improvements branch 4 times, most recently from 531204b to 1104fb6 Compare July 22, 2025 21:01
@lahinson lahinson force-pushed the osdocs-15316-hcp-bm-improvements branch 4 times, most recently from 007db9a to d7dd5ba Compare July 23, 2025 17:05
-n <namespace_example> get infraenv hosted
----

. Create `BareMetalHost` objects by adding the following content to a YAML file:
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are two options to get the hosts added:

  1. BMHs, as described here, which the booting and adding to the InfraEnv are 100% automated by the bare metal operator (metal3).
  2. Obtain the discovery ISO from the InfraEnv and boot the hosts manually, which is also supported and sometimes the only way (hosts that don't work with Redfish, hosts that don't have their BMCs configured, environments where the BMC network access is restricted, and other reasons).

We should document 2 along with this method for clarity.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@racedo Would it be accurate to distinguish between the two methods by dividing this step like this?
"If you use the Metal3 Operator, create the BMHs as follows..." and "If you do not use the Metal3 Operator, obtain the discovery ISO from the InfraEnv and boot the hosts manually, as follows..."

Copy link

@racedo racedo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add comment to explain booting hosts from discovery ISO.

Copy link

@racedo racedo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Request to add content for adding InfraEnv via UI.

@lahinson lahinson force-pushed the osdocs-15316-hcp-bm-improvements branch 4 times, most recently from cb1ef15 to 9ca2c35 Compare July 25, 2025 16:49
:_mod-docs-content-type: PROCEDURE
[id="hcp-bm-add-nodes-to-inventory_{context}"]
= Creating an infrastructure environment and adding nodes

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I based this file on information that I found in the following lab exercise: https://labs.sysdeseng.com/hypershift-baremetal-lab/4.18/adding-bm-to-hw-inventory.html

If any of the information in this file should change, please let me know.


. Click **Infrastructure -> Host inventory -> Create infrastructure environment**.

. After you create the infrastructure environment, add bare-metal hosts from within the InfraEnv view by clicking **Add hosts -> With BMC**.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would appreciate it if someone could verify that the user-interface elements that we're mentioning here actually match the UI.

Copy link

@racedo racedo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

obtain discovery iso for non-metal3 workflow

Copy link

@racedo racedo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

node approval feedback

Copy link

@racedo racedo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

approval process feedback

@lahinson lahinson force-pushed the osdocs-15316-hcp-bm-improvements branch from 9ca2c35 to 368551f Compare July 29, 2025 17:24
@lahinson lahinson force-pushed the osdocs-15316-hcp-bm-improvements branch from 368551f to 4c2b9b7 Compare July 29, 2025 18:02
Copy link

openshift-ci bot commented Jul 29, 2025

@lahinson: all tests passed!

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants