-
Notifications
You must be signed in to change notification settings - Fork 38.8k
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
Collecting and publishing cluster configuration #12323
Comments
/cc @satnam6502 |
/cc @jwforres |
cc @erictune |
What information is required from the nodes? |
Data regarding operation that is needed:
I expect not all the data is possible to get from node, but these are requirements from the UI point of view. |
@kubernetes/sig-cluster-lifecycle-misc |
|
This issue captures the results of a conversation between @satnam6502 , @vishh and @jackgr regarding the use of cluster-insight to collect and publish cluster configuration for the graph tab developed for the Kubernetes UI. See also the related discussion in #8716.
cc: @vasbala, @EranGabber, @supriyagarg, @rimey, @bgrant0607
Overview
The graph tab provides a visualization of a running cluster based on the d3 force layout, showing all of the objects in the cluster and the relationships between them. It also provides two detailed views of the properties of a selected object: a summary view on the main page that displays a few properties, and a complete view on a child page that displays all of the properties.
The information presented includes:
Rather than attempt to collect, analyze and organize all of this information on the client, we chose to write a Kubernetes service that does that work on the server side. Using a service has several advantages, such as:
Cluster Insight Design
Cluster insight is a set of python scripts that run inside a vanilla python container. (See the docker file for details.)
As revealed by the docker file, it runs in one of two modes:
Two aspects of this design were cause for concern in the discussion on #8716:
Alternative Solutions
In practice, these issues may not be as severe as suggested by the discussion on #8716, since:
Nevertheless, it was agreed that we should investigate the possibility of using cadvisor, which already runs on every node within the kubelet, to collect and publish configuration information, in addition to the information it already collects and publishes, which is primarily performance oriented, but does reveal some aspects of configuration.
Use Cases
In order to support focused discussion about alternative solutions, it was agreed that we should enumerate the key use cases for the configuration collection and publication service. The following use cases were identified and discussed:
Issues
The following issues were identified and examined during the discussion:
The text was updated successfully, but these errors were encountered: