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

Multi-cluster Istio components status #8170

Open
wants to merge 18 commits into
base: master
Choose a base branch
from

Conversation

hhovsepy
Copy link
Contributor

@hhovsepy hhovsepy commented Feb 17, 2025

Describe the change

Kiali Masthead which shows Home cluster name and the components statuses are merged now.
It shows single icon with tooltip:
Screenshot from 2025-03-17 14-39-49
Added multicluster support of components statuses:
Screenshot from 2025-03-17 12-12-44
Screenshot from 2025-03-17 12-13-23
Always showing sorted the worst status cluster the first.

From Control plane card removed "Remote Cluster" label as all cluster's are listed in Masthead.

Steps to test the PR

Test for primary-remote and multy-primary cases.
Regression test for single cluster case.

Automation testing

Modified the cypress and unit tests.

Issue reference

#7724

@hhovsepy hhovsepy force-pushed the issue7724 branch 2 times, most recently from 0f5e8bb to 231ddb7 Compare February 20, 2025 13:41
@hhovsepy
Copy link
Contributor Author

Screenshot from 2025-03-12 12-27-22
Screenshot from 2025-03-12 12-27-17

@hhovsepy
Copy link
Contributor Author

Screenshot from 2025-03-17 12-13-23
Screenshot from 2025-03-17 12-12-44

@hhovsepy hhovsepy changed the title Issue7724 Multi-cluster Istio components status Mar 17, 2025
@hhovsepy hhovsepy marked this pull request as ready for review March 17, 2025 13:01
@hhovsepy hhovsepy requested review from ferhoyos and nrfox March 17, 2025 13:45
@hhovsepy hhovsepy self-assigned this Mar 17, 2025
Comment on lines 116 to 117
// if no control plane and no any other control plane which manages external
if len(istiodStatus) == 0 && !managesExternal {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this covers the case where a controlplane may be managing an external cluster but it's not the current cluster. e.g.

You have 3 clusters: A, B, C. A manages B but nothing manages C.

I don't think you need to look at ManagesExternal. You just need to know if there's a controlplane managing this cluster or not e.g. if cluster not in controlPlanes.managedClusters.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm also not sure if this is always an error. You could have an "observability" cluster for instance where the observability components live separate from any istio components.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A problem with showing an error when the istiod is not found is that a user may not have access to the cluster where the istiod lives so this would show an error even though the istiod does exist.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

do we have somewhere documented all those combinations? or it is only here? https://istio.io/latest/docs/setup/install/multicluster/

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

have changed the logic

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

do we have somewhere documented all those combinations? or it is only here? https://istio.io/latest/docs/setup/install/multicluster/

It's just there but there but you can also combine some of those e.g. external control plane + primary-remote.

@hhovsepy hhovsepy requested a review from nrfox March 18, 2025 12:45
Copy link
Contributor

@nrfox nrfox left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

code looks good. Any new multi-cluster cypress tests that should be added for this to test the new masthead functionality?

@hhovsepy
Copy link
Contributor Author

hhovsepy commented Mar 18, 2025

code looks good. Any new multi-cluster cypress tests that should be added for this to test the new masthead functionality?

there are existing multicluster tests which are passing now, when all components are running fine, can be added a new ones to check that all cluster are in tooltip

@nrfox
Copy link
Contributor

nrfox commented Mar 18, 2025

can be added a new ones to check that all cluster are in tooltip

Since we're adding new functionality, it'd be good to also add new tests to cover it.

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

Successfully merging this pull request may close these issues.

3 participants