diff --git a/2024-01-09-openshift-acm-sno-o11y/README.org b/2024-01-09-openshift-acm-sno-o11y/README.org index c05841d..ef38d0f 100644 --- a/2024-01-09-openshift-acm-sno-o11y/README.org +++ b/2024-01-09-openshift-acm-sno-o11y/README.org @@ -338,3 +338,51 @@ oc get secret sno-import -n sno -o jsonpath={.data.import\\.yaml} | base64 --dec oc --kubeconfig sno/auth/kubeconfig apply --filename klusterlet-crd.yaml oc --kubeconfig sno/auth/kubeconfig apply --filename import.yaml #+end_src + +If everything works fine you should see JOINED and AVAILABLE sno cluster from within your hub cluster + +#+begin_src tmux +❯ kubectl get managedcluster -n sno +NAME HUB ACCEPTED MANAGED CLUSTER URLS JOINED AVAILABLE AGE +local-cluster true https://api.hub..com:6443 True True 5h12m +sno true https://api.cluster-vzmvz..com:6443 True True 31m +#+end_src + +* 7 - Creating the edge workload on SNO +For edge scenarios we only send metrics to the hub cluster if certain thresholds are hit for a certain period of time (here 70% for more than 2 minutes - you can see this configuration in the open-cluster-management-addon-observability namespace under ConfigMaps observability-metrics-allowlist in the collect_rules section under SNOHighCPUUsage). +In order to hit that trigger we now deploy a cpu-heavy workload in order for sno-cluster metrics being sent to the ACM hub cluster. + +Let's get started by creating a new project on the sno cluster: +#+begin_src tmux +oc new-project cpu-load-test +#+end_src + +and deploy the cpu-load-container workload on a busybox container + +#+begin_src tmux +cat << EOF | oc apply --filename - +apiVersion: apps/v1 +kind: Deployment +metadata: + name: cpu-load-test +spec: + replicas: 5 + selector: + matchLabels: + app: cpu-load-test + template: + metadata: + labels: + app: cpu-load-test + spec: + containers: + - name: cpu-load-container + image: busybox + command: ["/bin/sh", "-c"] + args: + - while true; do + echo "Performing CPU load..."; + dd if=/dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 1000 | head -n 1000000 > /dev/null; + done +EOF +#+end_src