Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 8 additions & 6 deletions hosted_control_planes/hcp-deploy/hcp-deploy-virt.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ toc::[]

With {hcp} and {VirtProductName}, you can create {product-title} clusters with worker nodes that are hosted by KubeVirt virtual machines. {hcp-capital} on {VirtProductName} provides several benefits:

* Enhances resource usage by packing {hcp} and hosted clusters in the same underlying bare metal infrastructure
* Enhances resource usage by packing {hcp} and hosted clusters in the same underlying bare-metal infrastructure
* Separates {hcp} and hosted clusters to provide strong isolation
* Reduces cluster provision time by eliminating the bare metal node bootstrapping process
* Reduces cluster provision time by eliminating the bare-metal node bootstrapping process
* Manages many releases under the same base {product-title} cluster

The {hcp} feature is enabled by default.
Expand All @@ -19,6 +19,7 @@ You can use the hosted control plane command-line interface, `hcp`, to create an

[role="_additional-resources"]
.Additional resources

* xref:../../hosted_control_planes/hcp-import.adoc#hcp-import-disable_hcp-import[Disabling the automatic import of hosted clusters into {mce-short}]
* xref:../../hosted_control_planes/hcp-prepare/hcp-enable-disable.adoc[Enabling or disabling the {hcp} feature]
* link:https://docs.redhat.com/en/documentation/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/clusters/cluster_mce_overview#ansible-config-hosted-cluster[Configuring Ansible Automation Platform jobs to run on hosted clusters]
Expand All @@ -35,6 +36,7 @@ include::modules/hcp-virt-prereqs.adoc[leveloffset=+2]

[role="_additional-resources"]
.Additional resources

* xref:../../virt/install/installing-virt.adoc#installing-virt-web[Installing OpenShift Virtualization using the web console]
* xref:../../post_installation_configuration/post-install-storage-configuration.adoc#post-install-storage-configuration[Postinstallation storage configuration]
* link:https://console.redhat.com/openshift/install/platform-agnostic/user-provisioned[Install OpenShift on any x86_64 platform with user-provisioned infrastructure]
Expand All @@ -57,9 +59,9 @@ include::modules/hcp-virt-create-hc-console.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources

* 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.14/html/clusters/cluster_mce_overview#creating-a-credential-for-an-on-premises-environment[Creating a credential for an on-premises environment].
* link:https://docs.redhat.com/en/documentation/red_hat_advanced_cluster_management_for_kubernetes/2.14/html/clusters/cluster_mce_overview#creating-a-credential-for-an-on-premises-environment[Creating a credential for an on-premises environment]

* To access the hosted cluster, see xref:../../hosted_control_planes/hcp-manage/hcp-manage-virt.adoc#hcp-virt-access_hcp-manage-virt[Accessing the hosted cluster].
* xref:../../hosted_control_planes/hcp-manage/hcp-manage-virt.adoc#hcp-virt-access_hcp-manage-virt[Accessing the hosted cluster]

include::modules/hcp-virt-ingress-dns.adoc[leveloffset=+1]
include::modules/hcp-custom-dns.adoc[leveloffset=+2]
Expand All @@ -78,7 +80,7 @@ include::modules/hcp-metallb.adoc[leveloffset=+1]
[role="_additional-resources"]
.Additional resources

* For more information about MetalLB, see xref:../../networking/networking_operators/metallb-operator/metallb-operator-install.adoc#metallb-operator-install_metallb-operator-install[Installing the MetalLB Operator].
* xref:../../networking/networking_operators/metallb-operator/metallb-operator-install.adoc#metallb-operator-install_metallb-operator-install[Installing the MetalLB Operator]

[id="hcp-virt-addl-resources"]
== Configuring additional networks, guaranteed CPUs, and VM scheduling for node pools
Expand All @@ -96,7 +98,7 @@ include::modules/hcp-virt-add-node.adoc[leveloffset=+2]
[role="_additional-resources"]
.Additional resources

* To scale down the data plane to zero, see link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/hosted_control_planes/troubleshooting-hosted-control-planes#scale-down-data-plane_hcp-troubleshooting[Scaling down the data plane to zero].
* link:https://access.redhat.com/documentation/en-us/openshift_container_platform/4.15/html/hosted_control_planes/troubleshooting-hosted-control-planes#scale-down-data-plane_hcp-troubleshooting[Scaling down the data plane to zero]

include::modules/hcp-virt-verify-hc.adoc[leveloffset=+1]

Expand Down
19 changes: 9 additions & 10 deletions modules/hcp-virt-add-networks.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,20 @@ By default, nodes generated by a node pool are attached to the pod network. You

.Procedure

To add multiple networks to nodes, use the `--additional-network` argument by running the following command:

* To add multiple networks to nodes, use the `--additional-network` argument by running the following command:
+
[source,terminal]
----
$ hcp create cluster kubevirt \
--name <hosted_cluster_name> \ <1>
--node-pool-replicas <worker_node_count> \ <2>
--pull-secret <path_to_pull_secret> \ <3>
--memory <memory> \ <4>
--cores <cpu> \ <5>
--additional-network name:<namespace/name> \ <6>
--name <hosted_cluster_name> \// <1>
--node-pool-replicas <worker_node_count> \// <2>
--pull-secret <path_to_pull_secret> \// <3>
--memory <memory> \// <4>
--cores <cpu> \// <5>
--additional-network name:<namespace/name> \// <6>
–-additional-network name:<namespace/name>
----

<1> Specify the name of your hosted cluster, for instance, `example`.
<1> Specify the name of your hosted cluster, for example, `my-hosted-cluster`.
<2> Specify your worker node count, for example, `2`.
<3> Specify the path to your pull secret, for example, `/user/name/pullsecret`.
<4> Specify the memory value, for example, `8Gi`.
Expand Down
16 changes: 8 additions & 8 deletions modules/hcp-virt-addl-network.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -12,19 +12,19 @@ You can add your additional network as a default network for the nodes by disabl

* To add an additional network as default to your nodes, run the following command:
+
[source,bash]
[source,terminal]
----
$ hcp create cluster kubevirt \
--name <hosted_cluster_name> \ <1>
--node-pool-replicas <worker_node_count> \ <2>
--pull-secret <path_to_pull_secret> \ <3>
--memory <memory> \ <4>
--cores <cpu> \ <5>
--attach-default-network false \ <6>
--name <hosted_cluster_name> \// <1>
--node-pool-replicas <worker_node_count> \// <2>
--pull-secret <path_to_pull_secret> \// <3>
--memory <memory> \// <4>
--cores <cpu> \// <5>
--attach-default-network false \// <6>
--additional-network name:<namespace>/<network_name> <7>
----
+
<1> Specify the name of your hosted cluster, for instance, `example`.
<1> Specify the name of your hosted cluster, for example, `my-hosted-cluster`.
<2> Specify your worker node count, for example, `2`.
<3> Specify the path to your pull secret, for example, `/user/name/pullsecret`.
<4> Specify the memory value, for example, `8Gi`.
Expand Down
11 changes: 6 additions & 5 deletions modules/hcp-virt-create-hc-cli.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ $ hcp create cluster kubevirt \
--cores <value_for_cpu> \// <5>
--etcd-storage-class=<etcd_storage_class> <6>
----
+
<1> Specify the name of your hosted cluster, for instance, `example`.
<1> Specify the name of your hosted cluster, for example, `my-hosted-cluster`.
<2> 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.
<3> Specify the path to your pull secret, for example, `/user/name/pullsecret`.
<4> Specify a value for memory, for example, `6Gi`.
Expand Down Expand Up @@ -61,7 +60,9 @@ redhat-operators-catalog-9d5fd4d44-z8qqk 1/1 Running 0
+
A hosted cluster that has worker nodes that are backed by KubeVirt virtual machines typically takes 10-15 minutes to be fully provisioned.

. To check the status of the hosted cluster, see the corresponding `HostedCluster` resource by entering the following command:
.Verification

* To check the status of the hosted cluster, see the corresponding `HostedCluster` resource by entering the following command:
+
[source,terminal]
----
Expand All @@ -71,8 +72,8 @@ $ oc get --namespace clusters hostedclusters
See the following example output, which illustrates a fully provisioned `HostedCluster` object:
+
----
NAMESPACE NAME VERSION KUBECONFIG PROGRESS AVAILABLE PROGRESSING MESSAGE
clusters example <4.x.0> example-admin-kubeconfig Completed True False The hosted control plane is available
NAMESPACE NAME VERSION KUBECONFIG PROGRESS AVAILABLE PROGRESSING MESSAGE
clusters my-hosted-cluster <4.x.0> example-admin-kubeconfig Completed True False The hosted control plane is available
----
+
Replace `<4.x.0>` with the supported {product-title} version that you want to use.
14 changes: 7 additions & 7 deletions modules/hcp-virt-create-hc-ext-infra.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -29,16 +29,16 @@ You can create a hosted cluster by using the `hcp` command-line interface.
[source,terminal]
----
$ hcp create cluster kubevirt \
--name <hosted-cluster-name> \ <1>
--node-pool-replicas <worker-count> \ <2>
--pull-secret <path-to-pull-secret> \ <3>
--memory <value-for-memory> \ <4>
--cores <value-for-cpu> \ <5>
--infra-namespace=<hosted-cluster-namespace>-<hosted-cluster-name> \ <6>
--name <hosted-cluster-name> \// <1>
--node-pool-replicas <worker-count> \// <2>
--pull-secret <path-to-pull-secret> \// <3>
--memory <value-for-memory> \// <4>
--cores <value-for-cpu> \// <5>
--infra-namespace=<hosted-cluster-namespace>-<hosted-cluster-name> \// <6>
--infra-kubeconfig-file=<path-to-external-infra-kubeconfig> <7>
----
+
<1> Specify the name of your hosted cluster, for instance, `example`.
<1> Specify the name of your hosted cluster, for example, `my-hosted-cluster`.
<2> Specify the worker count, for example, `2`.
<3> Specify the path to your pull secret, for example, `/user/name/pullsecret`.
<4> Specify a value for memory, for example, `6Gi`.
Expand Down
16 changes: 8 additions & 8 deletions modules/hcp-virt-guaranteed-cpus.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,24 +6,24 @@
[id="hcp-virt-guaranteed-cpus_{context}"]
= Requesting guaranteed CPU resources

By default, KubeVirt VMs might share its CPUs with other workloads on a node. This might impact performance of a VM. To avoid the performance impact, you can request a guaranteed CPU access for VMs.
By default, KubeVirt VMs might share their CPUs with other workloads on a node. This might impact performance of a VM. To avoid the performance impact, you can request a guaranteed CPU access for VMs.

.Procedure

* To request guaranteed CPU resources, set the `--qos-class` argument to `Guaranteed` by running the following command:
+
[source,bash]
[source,terminal]
----
$ hcp create cluster kubevirt \
--name <hosted_cluster_name> \ <1>
--node-pool-replicas <worker_node_count> \ <2>
--pull-secret <path_to_pull_secret> \ <3>
--memory <memory> \ <4>
--cores <cpu> \ <5>
--name <hosted_cluster_name> \// <1>
--node-pool-replicas <worker_node_count> \// <2>
--pull-secret <path_to_pull_secret> \// <3>
--memory <memory> \// <4>
--cores <cpu> \// <5>
--qos-class Guaranteed <6>
----
+
<1> Specify the name of your hosted cluster, for instance, `example`.
<1> Specify the name of your hosted cluster, for example, `my-hosted-cluster`.
<2> Specify your worker node count, for example, `2`.
<3> Specify the path to your pull secret, for example, `/user/name/pullsecret`.
<4> Specify the memory value, for example, `8Gi`.
Expand Down
2 changes: 1 addition & 1 deletion modules/hcp-virt-prereqs.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
You must meet the following prerequisites to create an {product-title} cluster on {VirtProductName}:

* You have administrator access to an {product-title} cluster, version 4.14 or later, specified in the `KUBECONFIG` environment variable.
* The {product-title} management cluster has wildcard DNS routes enabled, as shown in the following DNS:
* The {product-title} management cluster has wildcard DNS routes enabled, as shown in the following DNS configuration:
+
[source,terminal]
----
Expand Down
12 changes: 6 additions & 6 deletions modules/hcp-virt-sched-vms.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,15 @@ By default, KubeVirt VMs created by a node pool are scheduled to any available n
[source,terminal]
----
$ hcp create cluster kubevirt \
--name <hosted_cluster_name> \ <1>
--node-pool-replicas <worker_node_count> \ <2>
--pull-secret <path_to_pull_secret> \ <3>
--memory <memory> \ <4>
--cores <cpu> \ <5>
--name <hosted_cluster_name> \// <1>
--node-pool-replicas <worker_node_count> \// <2>
--pull-secret <path_to_pull_secret> \// <3>
--memory <memory> \// <4>
--cores <cpu> \// <5>
--vm-node-selector <label_key>=<label_value>,<label_key>=<label_value> <6>
----
+
<1> Specify the name of your hosted cluster, for instance, `example`.
<1> Specify the name of your hosted cluster, for example, `my-hosted-cluster`.
<2> Specify your worker node count, for example, `2`.
<3> Specify the path to your pull secret, for example, `/user/name/pullsecret`.
<4> Specify the memory value, for example, `8Gi`.
Expand Down