Uploaded image for project: 'OCMUI - OpenShift Cluster Manager UI'
  1. OCMUI - OpenShift Cluster Manager UI
  2. OCMUI-3860

Clarify autoscaling terminology and status on Cluster Details → Overview

XMLWordPrintable

    • Clarify autoscaling terminology and status on Cluster Details → Overview
    • Product / Portfolio Work
    • False
    • False
    • To Do
    • 100% To Do, 0% In Progress, 0% Done
    • (1/6) Refinement and crude mockups done, reached out to Bala for feedback

      Clarify autoscaling terminology and status on Cluster Details → Overview

      As a customer of https://console.redhat.com/openshift I find the Cluster Details Overview tab's "autoscaling" terminology confusing. The page presents two similarly named items that imply the same thing but come from different sources and can disagree, leading me to think autoscaling is off when nodes are configured to autoscale (or vice‑versa).

      Current:

      Problem statement

      • Two similar labels with different meanings
        • "Cluster autoscaling" reflects whether a cluster-scoped autoscaler controller/config exists in the API payload (currently derived from presence of cluster.autoscaler).
        • "Autoscale" reflects whether any worker pools have min/max autoscaling configured and shows aggregated Min/Max.
      • Conflicting states are possible
        • The page can show "Cluster autoscaling: Disabled" while "Autoscale: Enabled Min/Max" is displayed. Users infer autoscaling won't happen, even if the controller is running (or the opposite in HCP where the controller runs elsewhere).
      • HyperShift/HCP mismatch
        • For HCP, the autoscaler controller runs in the management plane; the guest cluster's cluster.autoscaler may be empty even though autoscaling is active. The Overview reads "Disabled," which is misleading.
      • Ambiguous terminology
        • "Cluster autoscaling" vs "Autoscale" does not explain "controller active" vs "pool configuration," nor does the page warn when pools are configured but the controller is off/unreported.

      Current behavior (summary)

      • "Cluster autoscaling: Enabled/Disabled" is derived from the presence of cluster.autoscaler in cluster details.
      • "Autoscale: Enabled — Min: X Max: Y" sums min/max across MachinePools/NodePools.
      • Overview does not call the autoscaler endpoint; modals use {{GET /clusters/ {id}

        /autoscaler}}, leading to inconsistent status.

      Proposed Mockups:

       

      Rosa Classic
      & OSD
      Rosa HCP

       Desired outcome

      • Customers clearly understand:
        • Whether the cluster autoscaler controller is on, off, or not reported.
        • Whether worker pools are configured for autoscaling and the effective min/max totals.
        • When a mismatch exists, whether autoscaling will actually occur and what action to take.

       Acceptance Criteria

      • Data source alignment: The "Cluster autoscaler" controller status must be sourced from the GET /api/clusters_mgmt/v1/clusters/{id}/autoscaler endpoint (via useFetchClusterAutoscaler hook), not inferred from the presence of cluster.autoscaler on the cluster details object.
      • Terminology update: "Cluster autoscaling" is renamed to "Cluster autoscaler" with sublabel "Controller: On / Off".
      • Terminology update: "Autoscale" is renamed to "Worker pool autoscaling".
      • HCP behavior: For HyperShift clusters, hide the "Cluster autoscaler" row entirely (controller is auto-managed).
      • Mismatch warning: For non-HCP clusters, show inline warning when worker pools are configured for autoscaling but the controller is Off.
      • Navigation: Add "View pools" link that navigates to the Machine Pools tab.
      • Edit action: Add "Edit cluster autoscaling" button that opens the existing ClusterAutoscalerModal.

      Implementation Overview

      This section summarizes the UI and code changes required to clarify autoscaling terminology on the Cluster Details → Overview tab (right panel).

      Design Summary

      Cluster Type Cluster Autoscaler Row Worker Pool Autoscaling Row Mismatch Warning
      ROSA Classic / OSD Show "Controller: On/Off" with [Edit cluster autoscaling] button Show "Enabled" or "Not configured" with Min/Max and [View pools] link Show warning when pools configured but controller is Off
      ROSA HCP Hidden entirely (autoscaler is auto-managed) Show "Enabled" or "Not configured" with Min/Max and [View pools] link Never show (not applicable)

      Key Behavioral Changes

      • Data source change: Stop deriving controller status from !!cluster.autoscaler. Instead, call the useFetchClusterAutoscaler hook which uses GET /clusters/{id}/autoscaler endpoint.
      • HCP-specific logic: For HyperShift clusters, hide the "Cluster autoscaler" row entirely since users cannot control it—it's automatically managed by the hosted control plane.
      • Mismatch warning: Only display for non-HCP clusters when worker pools are configured for autoscaling but the controller is Off.

      Implementation Details (text changes, code changes, files, etc..)

      • TLDR; Implementation details can be provided in another medium

      Success metrics

      • Reduction in support cases/slack threads about autoscaling status mismatches.
      • Increased clicks on "Edit cluster autoscaling settings" when mismatch is present.
      • Improved task completion in usability checks (users can correctly state controller and pool states).

        1. after-classic-osd.png
          after-classic-osd.png
          54 kB
        2. after-hcp.png
          after-hcp.png
          26 kB
        3. cluster-details-autoscaling.png
          cluster-details-autoscaling.png
          20 kB
        4. mock-classic.png
          mock-classic.png
          55 kB
        5. mock-classic-notes.png
          mock-classic-notes.png
          80 kB
        6. mock-classic-notes-1.png
          mock-classic-notes-1.png
          96 kB
        7. mock-classic-notes-2.png
          mock-classic-notes-2.png
          108 kB
        8. mock-classic-notes-3.png
          mock-classic-notes-3.png
          108 kB
        9. mock-classic-notes-4.png
          mock-classic-notes-4.png
          108 kB
        10. mock-classic-osd.png
          mock-classic-osd.png
          57 kB
        11. mock-classic-osd-1.png
          mock-classic-osd-1.png
          57 kB
        12. mock-classic-osd-notes.png
          mock-classic-osd-notes.png
          71 kB
        13. mock-classic-osd-notes-1.png
          mock-classic-osd-notes-1.png
          71 kB
        14. mock-hcp.png
          mock-hcp.png
          26 kB
        15. mock-hcp-notes.png
          mock-hcp-notes.png
          87 kB

              dtaylor@redhat.com David Taylor
              dtaylor@redhat.com David Taylor
              Jocelyn Sese
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated: