Skip to content

Commit

Permalink
Merge pull request #32 from mvazquezc/4.14-changes
Browse files Browse the repository at this point in the history
Updated content to 4.14
  • Loading branch information
mvazquezc authored Dec 12, 2023
2 parents 7598d97 + a4443b0 commit c538350
Show file tree
Hide file tree
Showing 31 changed files with 251 additions and 282 deletions.
1 change: 1 addition & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ on:
push:
branches:
- 'lab-4.13'
- 'lab-4.14'
env:
SITE_DIR: "gh-pages"
jobs:
Expand Down
4 changes: 2 additions & 2 deletions dev-site.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ content:
sources:
- url: .
branches:
- 'lab-4.13'
- 'lab-4.14'
start_path: documentation

asciidoc:
attributes:
release-version: 4.13
release-version: 4.14
page-pagination: true
extensions:
- ./lib/tab-block.js
Expand Down
2 changes: 1 addition & 1 deletion documentation/antora.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: 4.13
name: 4.14
title: LAB - Hosted Control Planes on Baremetal
version: ~
nav:
Expand Down
Binary file modified documentation/modules/ROOT/assets/images/hc-destroy1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified documentation/modules/ROOT/assets/images/hc-destroy2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified documentation/modules/ROOT/assets/images/hc-upgrade-cp1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified documentation/modules/ROOT/assets/images/hc-upgrade-cp2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified documentation/modules/ROOT/assets/images/hc-upgrade-cp3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified documentation/modules/ROOT/assets/images/hc-upgrade-dp1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified documentation/modules/ROOT/assets/images/hc-upgrade-dp2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified documentation/modules/ROOT/assets/images/hc-wizard1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified documentation/modules/ROOT/assets/images/hc-wizard2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified documentation/modules/ROOT/assets/images/hc-wizard3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified documentation/modules/ROOT/assets/images/hc-wizard4.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
37 changes: 35 additions & 2 deletions documentation/modules/ROOT/pages/_attributes.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,39 @@
:experimental:
:source-highlighter: highlightjs
:branch: lab-4.13
:branch: lab-4.14
:github-repo: https://github.com/RHsyseng/hypershift-baremetal-lab/blob/{branch}
:profile: hypershift-baremetal-lab
:openshift-release: v4.13
:rhel-version: v8.9
:openshift-release: v4.14
:tooling-version: 4.14
:mce-version: 2.3
:hosted-control-planes-version: 4.14
:management-cluster-version: 4.14.6
:management-cluster-kubeversion: v1.27.8+4fab27b
:hosted-cluster-version-1: 4.14.1
:hosted-cluster-kubeversion-1: v1.27.6+f67aeb3
:hosted-cluster-rhcos-machineos-1: 414.92.202310270216-0
:hosted-cluster-kernel-1: 5.14.0-284.36.1.el9_2.x86_64
:hosted-cluster-container-runtime-1: cri-o://1.27.1-11.1.rhaos4.14.git9b9c375.el9
:hosted-cluster-version-2: 4.14.2
:hosted-cluster-kubeversion-2: v1.27.6+f67aeb3
:hosted-cluster-rhcos-machineos-2: 414.92.202311061957-0
:hosted-cluster-kernel-2: 5.14.0-284.40.1.el9_2.x86_64
:hosted-cluster-container-runtime-2: cri-o://1.27.1-13.1.rhaos4.14.git956c5f7.el9
:hosted-cluster-version-3: 4.14.3
:hosted-cluster-kubeversion-3: v1.27.6+b49f9d1
:hosted-cluster-rhcos-machineos-3: 414.92.202311150705-0
:hosted-cluster-kernel-3: 5.14.0-284.41.1.el9_2.x86_64
:hosted-cluster-container-runtime-3: cri-o://1.27.1-13.1.rhaos4.14.git956c5f7.el9
:mce-overview-docs-link: https://docs.openshift.com/container-platform/4.14/architecture/mce-overview-ocp.html
:assisted-service-docs-link: https://docs.openshift.com/container-platform/4.14/installing/installing_on_prem_assisted/installing-on-prem-assisted.html
:baremetal-operator-docs-link: https://docs.openshift.com/container-platform/4.14/operators/operator-reference.html#cluster-bare-metal-operator_cluster-operators-ref
:metallb-operator-docs-link: https://docs.openshift.com/container-platform/4.14/networking/metallb/about-metallb.html
:hypershift-upstream-docs-link: https://hypershift-docs.netlify.app
:hosted-control-planes-docs-link: https://docs.openshift.com/container-platform/4.14/architecture/control-plane.html#hosted-control-planes-overview_control-plane
:mce-channel: stable-2.4
:assisted-service-config-ocp-version: 4.14
:assisted-service-config-rhcos-live-iso-url: https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-x86_64-live.x86_64.iso
:assisted-service-config-rhcos-rootfs-url: https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.14/4.14.0/rhcos-4.14.0-x86_64-live-rootfs.x86_64.img
:assisted-service-config-rhcos-machineos: 414.92.202310210434-0
:last-update-time: 2023-12-11
63 changes: 32 additions & 31 deletions documentation/modules/ROOT/pages/accessing-hosted-cluster.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ IMPORTANT: The password is likely to be different in your environment.

IMPORTANT: Before using the Kubeconfig we need to edit one parameter. This is only required due to the lab setup we have, in a real scenario this change shouldn't be required. We will be changing the kubeconfig's API endpoint from the IP to the DNS record for the API.

WARNING: If you're using MacOS, make sure you use `gnused` instead of `sed`, otherwise the command below will not make any change to the file. You can install `gnused` via `brew` -> `brew install gnused`.
WARNING: If you're using MacOS, make sure you use `gsed` instead of `sed`, otherwise the command below will not make any change to the file. You can install `gsed` via `brew` -> `brew install gnused`.

[.console-input]
[source,bash,subs="attributes+,+macros"]
Expand All @@ -80,8 +80,8 @@ oc --insecure-skip-tls-verify=true --kubeconfig ~/hypershift-lab/hosted-kubeconf
[source,console,subs="attributes+,+macros"]
-----
NAME STATUS ROLES AGE VERSION
hosted-worker1 Ready worker 16m v1.26.3+b404935
hosted-worker2 Ready worker 16m v1.26.3+b404935
hosted-worker1 Ready worker 16m {hosted-cluster-kubeversion-1}
hosted-worker2 Ready worker 16m {hosted-cluster-kubeversion-1}
-----
+
2. If we check the ClusterVersion it complains about some non-available operators.
Expand All @@ -97,7 +97,7 @@ oc --insecure-skip-tls-verify=true --kubeconfig ~/hypershift-lab/hosted-kubeconf
[source,console,subs="attributes+,+macros"]
-----
NAME VERSION AVAILABLE PROGRESSING SINCE STATUS
version False True 25m Unable to apply 4.13.0: the cluster operator console is not available
version False True 25m Unable to apply {hosted-cluster-version-1}: the cluster operator console is not available
-----
+
3. The ClusterOperators list will let us know which operators are not ready.
Expand All @@ -115,51 +115,52 @@ IMPORTANT: We can see `console` and `ingress` operators are not ready. Let's fix
[source,console,subs="attributes+,+macros"]
-----
NAME VERSION AVAILABLE PROGRESSING DEGRADED SINCE MESSAGE
console 4.13.0 False False False 14m RouteHealthAvailable: failed to GET route (https://console-openshift-console.apps.hosted.hypershift.lab): Get "https://console-openshift-console.apps.hosted.hypershift.lab": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
csi-snapshot-controller 4.13.0 True False False 25m
dns 4.13.0 True False False 14m
image-registry 4.13.0 True False False 14m
ingress 4.13.0 True False True 25m The "default" ingress controller reports Degraded=True: DegradedConditions: One or more other status conditions indicate a degraded state: CanaryChecksSucceeding=False (CanaryChecksRepetitiveFailures: Canary route checks for the default ingress controller are failing)
insights 4.13.0 True False False 14m
kube-apiserver 4.13.0 True False False 25m
kube-controller-manager 4.13.0 True False False 25m
kube-scheduler 4.13.0 True False False 25m
kube-storage-version-migrator 4.13.0 True False False 14m
monitoring 4.13.0 True False False 13m
network 4.13.0 True False False 14m
node-tuning 4.13.0 True False False 17m
openshift-apiserver 4.13.0 True False False 25m
openshift-controller-manager 4.13.0 True False False 25m
openshift-samples 4.13.0 True False False 13m
operator-lifecycle-manager 4.13.0 True False False 25m
operator-lifecycle-manager-catalog 4.13.0 True False False 25m
operator-lifecycle-manager-packageserver 4.13.0 True False False 25m
service-ca 4.13.0 True False False 14m
storage 4.13.0 True False False 25m
console {hosted-cluster-version-1} False False False 14m RouteHealthAvailable: failed to GET route (https://console-openshift-console.apps.hosted.hypershift.lab): Get "https://console-openshift-console.apps.hosted.hypershift.lab": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
csi-snapshot-controller {hosted-cluster-version-1} True False False 25m
dns {hosted-cluster-version-1} True False False 14m
image-registry {hosted-cluster-version-1} True False False 14m
ingress {hosted-cluster-version-1} True False True 25m The "default" ingress controller reports Degraded=True: DegradedConditions: One or more other status conditions indicate a degraded state: CanaryChecksSucceeding=False (CanaryChecksRepetitiveFailures: Canary route checks for the default ingress controller are failing)
insights {hosted-cluster-version-1} True False False 14m
kube-apiserver {hosted-cluster-version-1} True False False 25m
kube-controller-manager {hosted-cluster-version-1} True False False 25m
kube-scheduler {hosted-cluster-version-1} True False False 25m
kube-storage-version-migrator {hosted-cluster-version-1} True False False 14m
monitoring {hosted-cluster-version-1} True False False 13m
network {hosted-cluster-version-1} True False False 14m
node-tuning {hosted-cluster-version-1} True False False 17m
openshift-apiserver {hosted-cluster-version-1} True False False 25m
openshift-controller-manager {hosted-cluster-version-1} True False False 25m
openshift-samples {hosted-cluster-version-1} True False False 13m
operator-lifecycle-manager {hosted-cluster-version-1} True False False 25m
operator-lifecycle-manager-catalog {hosted-cluster-version-1} True False False 25m
operator-lifecycle-manager-packageserver {hosted-cluster-version-1} True False False 25m
service-ca {hosted-cluster-version-1} True False False 14m
storage {hosted-cluster-version-1} True False False 25m
-----
[#configuring-hostedcluster-ingress]
== Configuring the Hosted Cluster Ingress

In order to provide ingress capabilities to our Hosted Cluster we will use a `LoadBalancer` service. `MetalLB` is required for that, `MetalLB` is outside the scope of this lab, you can learn more about it https://docs.openshift.com/container-platform/4.13/networking/metallb/about-metallb.html[here].
In order to provide ingress capabilities to our Hosted Cluster we will use a `LoadBalancer` service. `MetalLB` is required for that, `MetalLB` is outside the scope of this lab, you can learn more about it {metallb-operator-docs-link}[here].

1. Let's get MetalLB Operator deployed.
+
[.console-input]
[source,bash,subs="attributes+,+macros"]
-----
oc --insecure-skip-tls-verify=true --kubeconfig ~/hypershift-lab/hosted-kubeconfig \
apply -f https://raw.githubusercontent.com/RHsyseng/hypershift-baremetal-lab/lab-4.13/lab-materials/hosted-cluster/metallb-deployment.yaml
sleep 5
apply -f https://raw.githubusercontent.com/RHsyseng/hypershift-baremetal-lab/{branch}/lab-materials/hosted-cluster/metallb-deployment.yaml
sleep 30
oc --insecure-skip-tls-verify=true --kubeconfig ~/hypershift-lab/hosted-kubeconfig \
-n openshift-operators wait --for=jsonpath='{.status.state}'=AtLatestKnown \
subscription/metallb-operator --timeout=300s
sleep 10
oc --insecure-skip-tls-verify=true --kubeconfig ~/hypershift-lab/hosted-kubeconfig \
-n openshift-operators wait --for=condition=Ready pod -l component=webhook-server \
--timeout=300s
sleep 30
oc --insecure-skip-tls-verify=true --kubeconfig ~/hypershift-lab/hosted-kubeconfig \
apply -f https://raw.githubusercontent.com/RHsyseng/hypershift-baremetal-lab/lab-4.13/lab-materials/hosted-cluster/metallb-config.yaml
apply -f https://raw.githubusercontent.com/RHsyseng/hypershift-baremetal-lab/{branch}/lab-materials/hosted-cluster/metallb-config.yaml
-----
+
[console-input]
Expand Down Expand Up @@ -222,7 +223,7 @@ IMPORTANT: It can take up to 5 minutes for the clusterversion to move to complet
[source,console,subs="attributes+,+macros"]
-----
NAME VERSION AVAILABLE PROGRESSING SINCE STATUS
version 4.13.0 True False 10s Cluster version is 4.13.0
version {hosted-cluster-version-1} True False 10s Cluster version is {hosted-cluster-version-1}
-----
4. Additionally we can check the HostedCluster state on the management cluster.
+
Expand All @@ -239,7 +240,7 @@ IMPORTANT: It can take up to 5 minutes for the hosted cluster to move to complet
[source,console,subs="attributes+,+macros"]
-----
NAME VERSION KUBECONFIG PROGRESS AVAILABLE PROGRESSING MESSAGE
hosted 4.13.0 hosted-admin-kubeconfig Completed True False The hosted control plane is available
hosted {hosted-cluster-version-1} hosted-admin-kubeconfig Completed True False The hosted control plane is available
-----
+
5. We can also check in the Web Console that the Hosted Cluster deployment is completed now.
Expand Down
14 changes: 7 additions & 7 deletions documentation/modules/ROOT/pages/adding-bm-to-hw-inventory.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ include::_attributes.adoc[]

As you already know, when using Hosted Control Planes the control plane components will run as pods on the management cluster while the data plane will run on dedicated nodes. In this lab, we are using bare metal nodes as backing infrastructure for our data plane.

IMPORTANT: This section relies on https://docs.openshift.com/container-platform/4.13/installing/installing_on_prem_assisted/installing-on-prem-assisted.html[Assisted Service] and https://docs.openshift.com/container-platform/4.13/operators/operator-reference.html#cluster-bare-metal-operator_cluster-operators-ref[Baremetal Operator], these two topics are outside the scope of this lab. You can click the links to learn more on them.
IMPORTANT: This section relies on {assisted-service-docs-link}[Assisted Service] and {baremetal-operator-docs-link}[Baremetal Operator], these two topics are outside the scope of this lab. You can click the links to learn more on them.

Assisted Service allows us to boot our hardware with a discovery ISO that will introspect our hardware and will add it to our hardware inventory. Later on, when we create our first Hosted Cluster the hardware from this inventory will be used to provision the required data plane nodes.

Expand Down Expand Up @@ -51,7 +51,7 @@ secret/pull-secret created
+
3. Create the InfraEnv.
+
IMPORTANT: The private SSH key can be found in the lab materials https://raw.githubusercontent.com/RHsyseng/hypershift-baremetal-lab/lab-4.13/lab-materials/lab-env-data/hypervisor/ssh-key[here]. You shouldn't need this key for the lab.
IMPORTANT: The private SSH key can be found in the lab materials https://raw.githubusercontent.com/RHsyseng/hypershift-baremetal-lab/{branch}/lab-materials/lab-env-data/hypervisor/ssh-key[here]. You shouldn't need this key for the lab.
+
[.console-input]
[source,bash,subs="attributes+,+macros"]
Expand Down Expand Up @@ -84,10 +84,10 @@ oc --kubeconfig ~/hypershift-lab/mgmt-kubeconfig -n hardware-inventory \
IMPORTANT: It can take up to 1 minute for the ISO to be created.
+
[console-input]
[source,console]
[source,console,subs="attributes+,+macros"]
-----
NAME ISO CREATED AT
hosted 2023-06-07T08:51:24Z
hosted {last-update-time}T08:51:24Z
-----
5. At this point we are ready to boot our bare metal nodes with this ISO, in order to so we need to create a few `BareMetalHost` objects.
+
Expand Down Expand Up @@ -138,7 +138,7 @@ metadata:
inspect.metal3.io: disabled
bmac.agent-install.openshift.io/hostname: hosted-worker0
spec:
automatedCleaningMode: metadata
automatedCleaningMode: disabled
bmc:
disableCertificateVerification: True
address: redfish-virtualmedia://192.168.125.1:9000/redfish/v1/Systems/local/hosted-worker0
Expand All @@ -157,7 +157,7 @@ metadata:
inspect.metal3.io: disabled
bmac.agent-install.openshift.io/hostname: hosted-worker1
spec:
automatedCleaningMode: metadata
automatedCleaningMode: disabled
bmc:
disableCertificateVerification: True
address: redfish-virtualmedia://192.168.125.1:9000/redfish/v1/Systems/local/hosted-worker1
Expand All @@ -176,7 +176,7 @@ metadata:
inspect.metal3.io: disabled
bmac.agent-install.openshift.io/hostname: hosted-worker2
spec:
automatedCleaningMode: metadata
automatedCleaningMode: disabled
bmc:
disableCertificateVerification: True
address: redfish-virtualmedia://192.168.125.1:9000/redfish/v1/Systems/local/hosted-worker2
Expand Down
4 changes: 2 additions & 2 deletions documentation/modules/ROOT/pages/additional-resources.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,5 @@ include::_attributes.adoc[]
[#documentation]
== Documentation

* https://hypershift-docs.netlify.app
* https://docs.openshift.com/container-platform/4.13/architecture/control-plane.html#hosted-control-planes-overview_control-plane
* {hosted-control-planes-docs-link}[Hosted Control Planes Documentation]
* {hypershift-upstream-docs-link}[HyperShift Upstream Documentation]
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ In this section we will cover how a hosted cluster can be destroyed from the Web

1. Access the https://console-openshift-console.apps.management.hypershift.lab/[OpenShift Console] and login with the OpenShift admin credentials you got in the lab's email.
2. On the top bar, next to the Red Hat OpenShift logo, make sure `All Clusters` is selected. This will show us the `MultiCloud` console.
3. Click on the cluster named `hosted`, that will get you to the cluster view. Click on `Actions` -> `Destroy cluster`.
3. Select the cluster named `hosted`, and click the `Actions` button. Finally, press `Destroy clusters`.
+
image::hc-destroy1.png[Hosted Cluster Destroy Screen 1]
+
Expand Down
Loading

0 comments on commit c538350

Please sign in to comment.