-
Notifications
You must be signed in to change notification settings - Fork 11
Feature Spec
Open Cluster Management helps users deploy and manage a large fleet of Kubernetes clusters. The search feature helps users easily find, access, and edit resources in the managed clusters from a central place. Search creates an API to query which is optimized for management of all these resource sprawl from one central place without having to log into these individual Kubernetes API Servers. We aggregate all information in one place and track relationships between them.
Let's think about a concrete example:
Developers have created an application that spreads across multiple clusters. And they have followed the good Kubernetes practice of labelling them properly. Now you have to manage these applications and want to know about the pods or services etc that comprise this in entirety from one single place. This API helps you do that. And then when you find out that one of the pods is not healthy, you want to look at the related ConfigMaps because you suspect that it may not have the right content. You can do it all in one place using the API.
Search Operator (repo)
- Deploys, configures, and monitors the components.
Database (repo)
Collector (repo)
- Deployed on each managed cluster.
- Discovers Kubernetes resources dynamically and watches for updates.
- CLI equivalent:
oc api-resources
- CLI equivalent:
oc get <resource> --all-namespaces --watch
- CLI equivalent:
- Collects and analyze Kubernetes resources and sync with the hub in near-real time.
- Computes relationships for resources within the cluster.
Indexer (repo)
- Receives data from the collectors and writes to the database.
- Synchronize resources in the hub cluster (e.g. clusters, applications, policies).
- Computes multi-cluster relationships (ie. Applications).
- Keeps track of activity from connected collectors (heartbeat).
Query API (repo)
- Provides an API to query the data (GraphQL).
- Enforces RBAC, each user will only see resources they have been authorized to access.