Skip to content

Commit 09a5173

Browse files
committed
[OSDOCS-15316]: Creating a hosted cluster on bare metal
1 parent a144257 commit 09a5173

File tree

3 files changed

+55
-10
lines changed

3 files changed

+55
-10
lines changed

hosted_control_planes/hcp-deploy/hcp-deploy-bm.adoc

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ include::modules/hcp-bm-hc.adoc[leveloffset=+1]
5353
[role="_additional-resources"]
5454
.Additional resources
5555
* xref:../../hosted_control_planes/hcp-import.adoc[Manually importing a hosted cluster]
56+
* link:https://docs.redhat.com/en/documentation/red_hat_advanced_cluster_management_for_kubernetes/2.13/html/clusters/cluster_mce_overview#configure-hosted-disconnected-digest-image[Extracting the {product-title} release image digest].
5657
5758
include::modules/hcp-bm-hc-console.adoc[leveloffset=+2]
5859

@@ -65,6 +66,7 @@ include::modules/hcp-bm-hc-mirror.adoc[leveloffset=+2]
6566
* To create credentials that you can reuse when you create a hosted cluster with the console, see link:https://docs.redhat.com/en/documentation/red_hat_advanced_cluster_management_for_kubernetes/2.13/html/clusters/cluster_mce_overview#creating-a-credential-for-an-on-premises-environment[Creating a credential for an on-premises environment].
6667
* To access a hosted cluster, see xref:../../hosted_control_planes/hcp-manage/hcp-manage-bm.adoc#hcp-bm-access_hcp-manage-bm[Accessing the hosted cluster].
6768
* To add hosts to the host inventory by using the Discovery Image, see link:https://docs.redhat.com/en/documentation/red_hat_advanced_cluster_management_for_kubernetes/2.13/html/clusters/cluster_mce_overview#add-host-host-inventory[Adding hosts to the host inventory by using the Discovery Image].
68-
* To extract the {product-title} release image digest, see link:https://docs.redhat.com/en/documentation/red_hat_advanced_cluster_management_for_kubernetes/2.13/html/clusters/cluster_mce_overview#configure-hosted-disconnected-digest-image[Extracting the {product-title} release image digest].
6969
70-
include::modules/hcp-bm-verify.adoc[leveloffset=+1]
70+
include::modules/hcp-bm-infraenv.adoc[leveloffset=+1]
71+
72+
include::modules/hcp-bm-verify.adoc[leveloffset=+1]

modules/hcp-bm-hc.adoc

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@
88
[id="hcp-bm-hc_{context}"]
99
= Creating a hosted cluster on bare metal
1010

11-
When you create a hosted cluster with the Agent platform, HyperShift installs the Agent Cluster API provider in the hosted control plane namespace. You can create a hosted cluster on bare metal or import one.
11+
When you create a hosted cluster with the Agent platform, the HyperShift Operator installs the Agent Cluster API provider in the hosted control plane namespace. You can create a hosted cluster on bare metal or import one.
1212

13-
As you create a hosted cluster, keep the following guidelines in mind:
13+
As you create a hosted cluster, remember these requirements:
1414

1515
- Each hosted cluster must have a cluster-wide unique name. A hosted cluster name cannot be the same as any existing managed cluster in order for {mce-short} to manage it.
1616
@@ -29,9 +29,9 @@ As you create a hosted cluster, keep the following guidelines in mind:
2929
$ oc create ns <hosted_cluster_namespace>-<hosted_cluster_name>
3030
----
3131
+
32-
Replace `<hosted_cluster_namespace>` with your hosted cluster namespace name, for example, `clusters`. Replace `<hosted_cluster_name>` with your hosted cluster name.
32+
Replace `<hosted_cluster_namespace>` with your hosted cluster namespace name, for example, `my-hcp-namespace`. Replace `<hosted_cluster_name>` with your hosted cluster name, for example, `my-hosted-cluster`. Typically, the namespace is created by the HyperShift Operator, but during the hosted cluster creation process on bare metal, a Cluster API provider role is generated that needs the namespace to already exist.
3333

34-
. Verify that you have a default storage class configured for your cluster. Otherwise, you might see pending PVCs. Run the following command:
34+
. Verify that you have a default storage class configured for your cluster by running the following command. Otherwise, you might see pending PVCs.
3535
+
3636
[source,terminal]
3737
----
@@ -45,20 +45,20 @@ $ hcp create cluster agent \
4545
--ssh-key <path_to_ssh_public_key> \// <7>
4646
--namespace <hosted_cluster_namespace> \// <8>
4747
--control-plane-availability-policy HighlyAvailable \// <9>
48-
--release-image=quay.io/openshift-release-dev/ocp-release:<ocp_release_image> \// <10>
48+
--release-image=quay.io/openshift-release-dev/ocp-release:<ocp_release_image>-multi \// <10>
4949
--node-pool-replicas <node_pool_replica_count> <11>
5050
----
5151
+
52-
<1> Specify the name of your hosted cluster, for instance, `example`.
52+
<1> Specify the name of your hosted cluster, for instance, `my-hosted-cluster`.
5353
<2> Specify the path to your pull secret, for example, `/user/name/pullsecret`.
54-
<3> Specify your hosted control plane namespace, for example, `clusters-example`. Ensure that agents are available in this namespace by using the `oc get agent -n <hosted_control_plane_namespace>` command.
54+
<3> Specify your hosted control plane namespace, for example, `my-hcp-namespace`. Ensure that agents are available in this namespace by using the `oc get agent -n <hosted_control_plane_namespace>` command.
5555
<4> Specify your base domain, for example, `krnl.es`.
5656
<5> The `--api-server-address` flag defines the IP address that is used for the Kubernetes API communication in the hosted cluster. If you do not set the `--api-server-address` flag, you must log in to connect to the management cluster.
5757
<6> Specify the etcd storage class name, for example, `lvm-storageclass`.
5858
<7> Specify the path to your SSH public key. The default file path is `~/.ssh/id_rsa.pub`.
5959
<8> Specify your hosted cluster namespace.
6060
<9> Specify the availability policy for the hosted control plane components. Supported options are `SingleReplica` and `HighlyAvailable`. The default value is `HighlyAvailable`.
61-
<10> Specify the supported {product-title} version that you want to use, for example, `4.19.0-multi`. If you are using a disconnected environment, replace `<ocp_release_image>` with the digest image. To extract the {product-title} release image digest, see _Extracting the {product-title} release image digest_.
61+
<10> Specify the supported {product-title} version that you want to use, for example, `4.19.0-multi`. If you are using a disconnected environment, replace `<ocp_release_image>` with the digest image. To extract the {product-title} release image digest, see "Extracting the {product-title} release image digest".
6262
<11> Specify the node pool replica count, for example, `3`. You must specify the replica count as `0` or greater to create the same number of replicas. Otherwise, no node pools are created.
6363

6464
+

modules/hcp-bm-infraenv.adoc

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * hosted_control_planes/hcp-deploy/hcp-deploy-bm.adoc
4+
5+
:_mod-docs-content-type: PROCEDURE
6+
[id="hcp-bm-infraenv_{context}"]
7+
= Creating an InfraEnv resource for a hosted cluster on bare metal
8+
9+
An `InfraEnv` is an environment where hosts that are booted with PXE images can join as agents. In this case, the agents are created in the same namespace as your hosted control plane.
10+
11+
.Procedure
12+
13+
. Create a YAML file to contain the configuration. See the following example:
14+
+
15+
[source,yaml]
16+
----
17+
apiVersion: agent-install.openshift.io/v1beta1
18+
kind: InfraEnv
19+
metadata:
20+
name: <hosted_cluster_name>
21+
namespace: <hosted_control_plane_namespace>
22+
spec:
23+
cpuArchitecture: s390x
24+
pullSecretRef:
25+
name: pull-secret
26+
sshAuthorizedKey: <ssh_public_key>
27+
----
28+
29+
. Save the file as `infraenv-config.yaml`.
30+
31+
. Apply the configuration by entering the following command:
32+
+
33+
[source,terminal]
34+
----
35+
$ oc apply -f infraenv-config.yaml
36+
----
37+
38+
. To fetch the URL to download the PXE images, such as, `initrd.img`, `kernel.img`, or `rootfs.img`, which allows {ibm-z-title} machines to join as agents, enter the following command:
39+
+
40+
[source,terminal]
41+
----
42+
$ oc -n <hosted_control_plane_namespace> get InfraEnv <hosted_cluster_name> -o json
43+
----

0 commit comments

Comments
 (0)