Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature] Machine class UX improvements #866

Open
steverfrancis opened this issue Jan 22, 2025 · 0 comments
Open

[feature] Machine class UX improvements #866

steverfrancis opened this issue Jan 22, 2025 · 0 comments

Comments

@steverfrancis
Copy link
Contributor

Problem Description

  1. Provide a helpful "get started" message when there are no machine classes.

Currently, going to the Machine Classes screen when there are none defined shows "No Records
No entries of the requested resource type are found on the server."
This is not friendly nor helpful.
Instead, show a message:
"Create your first Machine Class to automate cluster provisioning and scaling from classes of machines. Click "Create Machine Class" above to get started."

  1. Better Prompts
    On the Create Machine Class screen:
  • Under Conditions and the place for the machine class, replace the help text:

Image
(Although the example omni.sidero.dev/cluster in (talos,talos-default) should be in <code> format, not as I show it above.)

  1. Validation of Machine Set membership
    When you create a cluster using Machine Sets, it is easy to specify more machines than are available in Omni.
    More problematically, there can be machines available in Omni, but with a higher Talos version than the version specified for the cluster.
    This means the cluster will just sit there in "scaling up" state, with no error or feedback to the user as to why the cluster is not being created, even though there are Available machines, but no machines will be allocated to the cluster. (Because the available machines are of a higher OS level.)

It is acceptable to create a cluster with more allocated machines than are currently available, so this should not be blocked, but the user should be warned and allowed to Proceed or Reconfigure.
On "create cluster", check to see if there are enough machines to meet the provisioned cluster that are both available and eligible due to Talos versions.
If so, proceed.
If not, display a warning dialog:
"You have specified a cluster with X machines from Machine Class Y, but there are only Z available. [If this applies: There are W machines in Machine Class Y that cannot join this cluster as they are running a newer version of Talos.] Proceed, or Reconfigure your cluster?"

  1. Warn if editing scaling of a cluster managed by Templates
    If a cluster is provisioned and managed by cluster templates, it is trivially easy to edit the machines allocated to the machine set by using the pencil:

Image
Given the cluster is managed by cluster templates - remove the pencil icon and ability to edit the machine set membership from the Cluster... Cluster name.. Overview screen; and the Clusters panel.
(We can still support it in the Cluster Scaling button, as that explicitly warns the user that they should use cluster templates to change things.)

  1. Switch the Phase and Machines Healthy Column order
    The number of machines are allocated from the class - so that column should be next to the Class.
    So column order should be Machine Name, Phase, Machines healthy, Labels.
    Not like the current display, which shows Machines Healthy separated from the class bu the phase:
    Image
    This should change on both the Clusters panel and the Individual cluster Overview panel.

Solution

No response

Alternative Solutions

No response

Notes

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant