{"id":13561186,"url":"https://github.com/clusterpedia-io/clusterpedia","last_synced_at":"2026-04-16T09:05:54.086Z","repository":{"id":36953130,"uuid":"414827833","full_name":"clusterpedia-io/clusterpedia","owner":"clusterpedia-io","description":"The Encyclopedia of Kubernetes clusters","archived":false,"fork":false,"pushed_at":"2026-04-13T08:18:43.000Z","size":32549,"stargazers_count":862,"open_issues_count":59,"forks_count":125,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-04-13T09:56:41.514Z","etag":null,"topics":["k8s","k8s-sig-multicluster","kubernetes","multi-cloud-kubernetes","multi-cluster"],"latest_commit_sha":null,"homepage":"https://clusterpedia.io","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/clusterpedia-io.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":"GOVERNANCE.md","roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":"MAINTAINERS.md","copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-10-08T03:00:04.000Z","updated_at":"2026-04-13T07:44:13.000Z","dependencies_parsed_at":"2023-12-01T05:27:05.947Z","dependency_job_id":"e8a7e4c5-32e6-4bce-836b-701474ff3530","html_url":"https://github.com/clusterpedia-io/clusterpedia","commit_stats":null,"previous_names":[],"tags_count":44,"template":false,"template_full_name":null,"purl":"pkg:github/clusterpedia-io/clusterpedia","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clusterpedia-io%2Fclusterpedia","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clusterpedia-io%2Fclusterpedia/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clusterpedia-io%2Fclusterpedia/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clusterpedia-io%2Fclusterpedia/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clusterpedia-io","download_url":"https://codeload.github.com/clusterpedia-io/clusterpedia/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clusterpedia-io%2Fclusterpedia/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31878858,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-16T07:36:03.521Z","status":"ssl_error","status_checked_at":"2026-04-16T07:35:53.576Z","response_time":69,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["k8s","k8s-sig-multicluster","kubernetes","multi-cloud-kubernetes","multi-cluster"],"created_at":"2024-08-01T13:00:53.473Z","updated_at":"2026-04-16T09:05:54.070Z","avatar_url":"https://github.com/clusterpedia-io.png","language":"Go","funding_links":[],"categories":["kubernetes","Tools and Libraries","Go","Service Discovery \u0026 Registry"],"sub_categories":["Cluster Resources Management"],"readme":"\u003cdiv align=\"center\"\u003e\u003cimg src=\"./docs/images/clusterpedia.png\" style=\"width:900px;\" /\u003e\u003c/div\u003e\n\u003cp align=\"center\"\u003e\n  \u003cb\u003eThe Encyclopedia of Kubernetes clusters\u003c/b\u003e\n\u003c/p\u003e\n\n# Clusterpedia\n![build](https://github.com/clusterpedia-io/clusterpedia/actions/workflows/ci.yml/badge.svg)\n[![License](https://img.shields.io/github/license/clusterpedia-io/clusterpedia)](/LICENSE)\n[![Go Report Card](https://goreportcard.com/badge/github.com/clusterpedia-io/clusterpedia)](https://goreportcard.com/report/github.com/clusterpedia-io/clusterpedia)\n[![Release](https://img.shields.io/github/v/release/clusterpedia-io/clusterpedia)](https://github.com/clusterpedia-io/clusterpedia/releases)\n[![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/clusterpedia)](https://artifacthub.io/packages/search?repo=clusterpedia)\n[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/5539/badge)](https://bestpractices.coreinfrastructure.org/projects/5539)\n[![Join Slack channel](https://img.shields.io/badge/slack-@cncf/clusterpedia-30c000.svg?logo=slack)](https://cloud-native.slack.com/messages/clusterpedia)\n\nThis name Clusterpedia is inspired by Wikipedia. It is an encyclopedia of multi-cluster to synchronize, search for, and simply control multi-cluster resources. \n\nClusterpedia can synchronize resources with multiple clusters and provide more powerful search features on the basis of compatibility with Kubernetes OpenAPI to help you effectively get any multi-cluster resource that you are looking for in a quick and easy way.  \n\n\u003e The capability of Clusterpedia is not only to search for and view but also simply control resources in the future, just like Wikipedia that supports for editing entries.\n\n\u003cimg src=\"https://github.com/cncf/artwork/blob/main/other/illustrations/ashley-mcnamara/transparent/cncf-cloud-gophers-transparent.png\" style=\"width:600px;\" /\u003e\n\n**Clusterpedia is a [Cloud Native Computing Foundation](https://cncf.io/) sandbox project.**\n\u003e If you want to join the clusterpedia channel on CNCF slack, please **[get invite to CNCF slack](https://slack.cncf.io/)** and then join the [#clusterpedia](https://cloud-native.slack.com/messages/clusterpedia) channel.\n\n## Why Clusterpedia\nClusterpedia can be deployed as a standalone platform or integrated with [Cluster API](https://github.com/kubernetes-sigs/cluster-api), [Karmada](https://github.com/karmada-io/karmada), [Clusternet](https://github.com/clusternet/clusternet), [vCluster](https://github.com/loft-sh/vcluster), [KubeVela](https://github.com/kubevela/kubevela) and other multi-cloud platforms\n\n### Automatic synchronization of clusters managed by multi-cloud platforms\nThe clusterpedia can automatically synchronize the resources within the cluster managed by the multi-cloud platform.\n\nUsers do not need to maintain Clusterpedia manually, Clusterpedia can work as well as the internal components of the multi-cloud platforms.\n\nLean More About [Interfacing to Multi-Cloud Platforms](https://clusterpedia.io/docs/usage/interfacing-to-multi-cloud-platforms/)\n\n### More retrieval features and compatibility with **Kubernetes OpenAPI**\n* Support for retrieving resources using `kubectl`, `client-go` or `controller-runtime/client`, [client-go example](https://github.com/clusterpedia-io/client-go/blob/main/examples/list-clusterpedia-resources/main.go)\n* The resource metadata can be retrived via API or [client-go/metadata](https://pkg.go.dev/k8s.io/client-go/metadata)\n* Rich retrieval conditions: [Filter by cluster/namespace/name/creation](https://clusterpedia.io/docs/usage/search/multi-cluster/#basic-features), [Search by parent or ancestor owner](https://clusterpedia.io/docs/usage/search/multi-cluster/#search-by-parent-or-ancestor-owner),[Multi-Cluster Label Selector](https://clusterpedia.io/docs/usage/search/#label-selector), [Enhanced Field Selector](https://clusterpedia.io/docs/usage/search/#field-selector), [Custom Search Conditions](https://clusterpedia.io/docs/usage/search/#advanced-searchcustom-conditional-search), etc.\n### Support for importing Kubernetes 1.10+\n### Automic conversion of different versions of Kube resources and support for multiple version of resources\n* Even if you import different version of Kube, we can still use the same resource version to retrieve resources\n\u003e For example, we can use `v1`, `v1beta2`, `v1beta1` version to retrieve the Deployments resources in different clusters.\n\u003e \n\u003e   Notes: The version of *deployments* is `v1beta1` in Kubernetes 1.10 and it is `v1` in Kubernetes 1.24.\n```bash\n$ kubectl get --raw \"/apis/clusterpedia.io/v1beta1/resources/apis/apps\" | jq\n{\n  \"kind\": \"APIGroup\",\n  \"apiVersion\": \"v1\",\n  \"name\": \"apps\",\n  \"versions\": [\n    {\n      \"groupVersion\": \"apps/v1\",\n      \"version\": \"v1\"\n    },\n    {\n      \"groupVersion\": \"apps/v1beta2\",\n      \"version\": \"v1beta2\"\n    },\n    {\n      \"groupVersion\": \"apps/v1beta1\",\n      \"version\": \"v1beta1\"\n    }\n  ],\n  \"preferredVersion\": {\n    \"groupVersion\": \"apps/v1\",\n    \"version\": \"v1\"\n  }\n}\n```\n### A single API can be used to retrieve different types of resources\n* Use [`Collection Resource`](https://clusterpedia.io/docs/concepts/collection-resource/) to retrieve different types of resources, such as `Deployment`, `DaemonSet`, `StatefulSet`.\n```bash\n$ kubectl get collectionresources\nNAME            RESOURCES\nany             *\nworkloads       deployments.apps,daemonsets.apps,statefulsets.apps\nkuberesources   .*,*.admission.k8s.io,*.admissionregistration.k8s.io,*.apiextensions.k8s.io,*.apps,*.authentication.k8s.io,*.authorization.k8s.io,*.autoscaling,*.batch,*.certificates.k8s.io,*.coordination.k8s.io,*.discovery.k8s.io,*.events.k8s.io,*.extensions,*.flowcontrol.apiserver.k8s.io,*.imagepolicy.k8s.io,*.internal.apiserver.k8s.io,*.networking.k8s.io,*.node.k8s.io,*.policy,*.rbac.authorization.k8s.io,*.scheduling.k8s.io,*.storage.k8s.io\n```\n### Diverse policies and intelligent synchronization\n* [Wildcards](https://clusterpedia.io/docs/usage/sync-resources/#using-wildcards-to-sync-resources) can be used to sync all types of resources within a specified group or cluster.\n* [Support for synchronizing all custom resources](https://clusterpedia.io/docs/usage/sync-resources/#sync-all-custom-resources)\n* The type and version of resources that Clusterpedia is synchroizing with can be adapted to you CRD and AA changes\n### Unify the search entry for master clusters and multi-cluster resources\n* Based on [Aggregated API](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/), the entry portal for multi-cluster retrieval is the same as that of the master cluster(IP:PORT)\n### Very low memory usage and weak network optimization\n* Optimized caches used by informer, so the memory usage is very low for resource synchronization.\n* Automatic start/stop synchronization based on cluster health status\n### High availability\n### No dependency on specific storage components\nClusterpedia does not care about storage components and uses the storage layer to attach specific storage components,\nand will also add storage layers for **graph databases** and **ES** in the future\n\n## Architecture \u003cspan id=\"design\"\u003e\u003c/span\u003e\n\u003cdiv align=\"center\"\u003e\u003cimg src=\"./docs/images/arch.png\" style=\"width:900px;\" /\u003e\u003c/div\u003e\nThe architecture consists of four parts:\n\n* **Clusterpedia APIServer**: Register to `Kubernetes APIServer` by the means of [Aggregated API](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/apiserver-aggregation/) and provide services through a unified entrance\n* **ClusterSynchro Manager**: Manage the cluster synchro that is used to synchronize cluster resources\n* **Storage Layer**: Connect with a specific storage component and then register to Clusterpedia APIServer and ClusterSynchro Manager via a storage layer interface\n* **Storage Component**: A specific storage facility such as **MySQL**, **PostgreSQL**, **Redis** or other **Graph Databases**\n\nIn addition, Clusterpedia will use the Custom Resource - *PediaCluster* to implement cluster authentication and configure resources for synchronization.\n\nClusterpedia also provides a `Default Storage Layer` that can connect with **MySQL** and **PostgreSQL**.\n\u003e Clusterpedia does not care about the specific storage components used by users,\n\u003e you can choose or implement the storage layer according to your own needs,\n\u003e and then register the storage layer in Clusterpedia as a plug-in\n\n---\n[Installation](https://clusterpedia.io/docs/installation/) | [Import Clusters](https://clusterpedia.io/docs/usage/import-clusters/) | [Sync Cluster Resources](https://clusterpedia.io/docs/usage/sync-resources/)\n---\n\n## Search Label and URL Query\n|Role| Search label key|URL query|\n| -- | --------------- | ------- |\n|Filter cluster names|`search.clusterpedia.io/clusters`|`clusters`|\n|Filter namespaces|`search.clusterpedia.io/namespaces`|`namespaces`|\n|Filter resource names|`search.clusterpedia.io/names`|`names`|\n|Fuzzy Search by resource name|`internalstorage.clusterpedia.io/fuzzy-name`|-|\n|Since creation time|`search.clusterpedia.io/since`|`since`|\n|Before creation time|`search.clusterpedia.io/before`|`before`|\n|Specified Owner UID|`search.clusterpedia.io/owner-uid`|`ownerUID`|\n|Specified Owner Seniority|`search.clusterpedia.io/owner-seniority`|`ownerSeniority`|\n|Specified Owner Name|`search.clusterpedia.io/owner-name`|`ownerName`|\n|Specified Owner Group Resource|`search.clusterpedia.io/owner-gr`|`ownerGR`|\n|Order by fields|`search.clusterpedia.io/orderby`|`orderby`|\n|Set page size|`search.clusterpedia.io/size`|`limit`|\n|Set page offset|`search.clusterpedia.io/offset`|`continue`|\n|Response include Continue|`search.clusterpedia.io/with-continue`|`withContinue`\n|Response include remaining count|`search.clusterpedia.io/with-remaining-count`|`withRemainingCount`\n|[Custom Where SQL](https://clusterpedia.io/docs/usage/search/#advanced-searchcustom-conditional-search)|-|`whereSQL`|\n|[Get only the metadata of the collection resource](https://clusterpedia.io/docs/usage/search/collection-resource#only-metadata) | - |`onlyMetadata` |\n|[Specify the groups of `any collectionresource`](https://clusterpedia.io/docs/usage/search/collection-resource#any-collectionresource) | - | `groups` |\n|[Specify the resources of `any collectionresource`](https://clusterpedia.io/docs/usage/search/collection-resource#any-collectionresource) | - | `resources` |\n\n**Both Search Labels and URL Query support same operators as Label Selector:**\n* `exist`, `not exist`\n* `=`, `==`, `!=`\n* `in`, `notin`\n\nMore information about [Search Conditions](https://clusterpedia.io/docs/usage/search/),\n[Label Selector](https://clusterpedia.io/docs/usage/search/#label-selector) and [Field Selector](https://clusterpedia.io/docs/usage/search/#field-selector)\n\n## Usage Samples\nYou can search for resources configured in *PediaCluster*, Clusterpedia supports two types of resource search:\n* Resources that are compatible with **Kubernetes OpenAPI**\n* [`Collection Resource`](https://clusterpedia.io/docs/concepts/collection-resource/)\n```sh\n$ kubectl api-resources | grep clusterpedia.io\ncollectionresources     clusterpedia.io/v1beta1  false   CollectionResource\nresources               clusterpedia.io/v1beta1  false   Resources\n```\n### Use a compatible way with Kubernetes OpenAPI\nIt is possible to search resources via URL, but using `kubectl` may be more convenient if\nyou [configured the cluster shortcuts for `kubectl`](https://clusterpedia.io/docs/usage/access-clusterpedia/#configure-the-cluster-shortcut-for-kubectl).\n\nWe can use `kubectl --cluster \u003ccluster name\u003e` to specify the cluster, if `\u003ccluster name\u003e` is `clusterpedia`,\nit meas it is a multi-cluster search operation.\n\nFirst check which resources are synchronized. We cannot find a resource until it is properly synchronized:\n```sh\n$ kubectl --cluster clusterpedia api-resources\nNAME                  SHORTNAMES   APIVERSION                     NAMESPACED   KIND\nconfigmaps            cm           v1                             true         ConfigMap\nevents                ev           v1                             true         Event\nnamespaces            ns           v1                             false        Namespace\nnodes                 no           v1                             false        Node\npods                  po           v1                             true         Pod\nservices              svc          v1                             true         Service\ndaemonsets            ds           apps/v1                        true         DaemonSet\ndeployments           deploy       apps/v1                        true         Deployment\nreplicasets           rs           apps/v1                        true         ReplicaSet\nstatefulsets          sts          apps/v1                        true         StatefulSet\ncronjobs              cj           batch/v1                       true         CronJob\njobs                               batch/v1                       true         Job\nclusters                           cluster.kpanda.io/v1alpha1     false        Cluster\ningressclasses                     networking.k8s.io/v1           false        IngressClass\ningresses             ing          networking.k8s.io/v1           true         Ingress\nclusterrolebindings                rbac.authorization.k8s.io/v1   false        ClusterRoleBinding\nclusterroles                       rbac.authorization.k8s.io/v1   false        ClusterRole\nroles                              rbac.authorization.k8s.io/v1   true         Role\n\n$ kubectl --cluster cluster-1 api-resources\n...\n```\n\n#### Search in Multiple Clusters\n\u003e Usage of [multi-cluster search](https://clusterpedia.io/docs/usage/search/multi-cluster/) in documents\n\n**Get deployments in the `kube-system` namespace of all clusters:**\n```sh\n$ kubectl --cluster clusterpedia get deployments -n kube-system\nCLUSTER     NAME                      READY   UP-TO-DATE   AVAILABLE   AGE\ncluster-1   coredns                   2/2     2            2           68d\ncluster-2   calico-kube-controllers   1/1     1            1           64d\ncluster-2   coredns                   2/2     2            2           64d\n```\n\n**Get deployments in the two namespaces `kube-system` and `default` of all clusters:**\n```sh\n$ kubectl --cluster clusterpedia get deployments -A -l \"search.clusterpedia.io/namespaces in (kube-system, default)\"\nNAMESPACE     CLUSTER     NAME                      READY   UP-TO-DATE   AVAILABLE   AGE\nkube-system   cluster-1   coredns                   2/2     2            2           68d\nkube-system   cluster-2   calico-kube-controllers   1/1     1            1           64d\nkube-system   cluster-2   coredns                   2/2     2            2           64d\ndefault       cluster-2   dd-airflow-scheduler      0/1     1            0           54d\ndefault       cluster-2   dd-airflow-web            0/1     1            0           54d\ndefault       cluster-2   hello-world-server        1/1     1            1           27d\ndefault       cluster-2   openldap                  1/1     1            1           41d\ndefault       cluster-2   phpldapadmin              1/1     1            1           41d\n```\n\n**Get deployments in the `kube-system` and `default` namespaces in cluster-1 and cluster-2:**\n```sh\n$ kubectl --cluster clusterpedia get deployments -A -l \"search.clusterpedia.io/clusters in (cluster-1, cluster-2),\\\n     search.clusterpedia.io/namespaces in (kube-system,default)\"\nNAMESPACE     CLUSTER     NAME                      READY   UP-TO-DATE   AVAILABLE   AGE\nkube-system   cluster-1   coredns                   2/2     2            2           68d\nkube-system   cluster-2   calico-kube-controllers   1/1     1            1           64d\nkube-system   cluster-2   coredns                   2/2     2            2           64d\ndefault       cluster-2   dd-airflow-scheduler      0/1     1            0           54d\ndefault       cluster-2   dd-airflow-web            0/1     1            0           54d\ndefault       cluster-2   hello-world-server        1/1     1            1           27d\ndefault       cluster-2   openldap                  1/1     1            1           41d\ndefault       cluster-2   phpldapadmin              1/1     1            1           41d\n```\n\n**Get deployments in the `kube-system` and `default` namespaces in cluster-1 and cluster-2:**\n```sh\n$ kubectl --cluster clusterpedia get deployments -A -l \"search.clusterpedia.io/clusters in (cluster-1, cluster-2),\\\n    search.clusterpedia.io/namespaces in (kube-system,default),\\\n    search.clusterpedia.io/orderby=name\"\nNAMESPACE     CLUSTER     NAME                      READY   UP-TO-DATE   AVAILABLE   AGE\nkube-system   cluster-2   calico-kube-controllers   1/1     1            1           64d\nkube-system   cluster-1   coredns                   2/2     2            2           68d\nkube-system   cluster-2   coredns                   2/2     2            2           64d\ndefault       cluster-2   dd-airflow-scheduler      0/1     1            0           54d\ndefault       cluster-2   dd-airflow-web            0/1     1            0           54d\ndefault       cluster-2   hello-world-server        1/1     1            1           27d\ndefault       cluster-2   openldap                  1/1     1            1           41d\ndefault       cluster-2   phpldapadmin              1/1     1            1           41d\n```\n\n#### Search a specific cluster\n\u003e Usage of [specified cluster search](https://clusterpedia.io/docs/usage/search/specified-cluster/) in documents\n\n**If you want to search a specific cluster for any resource therein, you can add --cluster to specify the cluster name:**\n```sh\n$ kubectl --cluster cluster-1 get deployments -A\nNAMESPACE                           CLUSTER     NAME                                            READY   UP-TO-DATE   AVAILABLE   AGE\ncalico-apiserver                    cluster-1   calico-apiserver                                1/1     1            1           68d\ncalico-system                       cluster-1   calico-kube-controllers                         1/1     1            1           68d\ncalico-system                       cluster-1   calico-typha                                    1/1     1            1           68d\ncapi-system                         cluster-1   capi-controller-manager                         1/1     1            1           42d\ncapi-kubeadm-bootstrap-system       cluster-1   capi-kubeadm-bootstrap-controller-manager       1/1     1            1           42d\ncapi-kubeadm-control-plane-system   cluster-1   capi-kubeadm-control-plane-controller-manager   1/1     1            1           42d\ncapv-system                         cluster-1   capv-controller-manager                         1/1     1            1           42d\ncert-manager                        cluster-1   cert-manager                                    1/1     1            1           42d\ncert-manager                        cluster-1   cert-manager-cainjector                         1/1     1            1           42d\ncert-manager                        cluster-1   cert-manager-webhook                            1/1     1            1           42d\nclusterpedia-system                 cluster-1   clusterpedia-apiserver                          1/1     1            1           27m\nclusterpedia-system                 cluster-1   clusterpedia-clustersynchro-manager             1/1     1            1           27m\nclusterpedia-system                 cluster-1   clusterpedia-internalstorage-mysql              1/1     1            1           29m\nkube-system                         cluster-1   coredns                                         2/2     2            2           68d\ntigera-operator                     cluster-1   tigera-operator                                 1/1     1            1           68d\n```\nExcept for `search.clusterpedia.io/clusters`, the support for other complex queries is same as that for multi-cluster search.\n\nIf you want to learn about the details of a resource, you need to specify which cluster it is:\n```sh\n$ kubectl --cluster cluster-1 -n kube-system get deployments coredns -o wide\nCLUSTER     NAME      READY   UP-TO-DATE   AVAILABLE   AGE   CONTAINERS   IMAGES                                                   SELECTOR\ncluster-1   coredns   2/2     2            2           68d   coredns      registry.aliyuncs.com/google_containers/coredns:v1.8.4   k8s-app=kube-dns\n```\n\n**Find the related pods by the name of the deployment**\n\nFirst view the deployments in default namespace\n```sh\n$ kubectl --cluster cluster-1 get deployments\nNAME                      READY   UP-TO-DATE   AVAILABLE   AGE\nfake-pod                  3/3     3            3           104d\ntest-controller-manager   0/0     0            0           7d21h\n```\n\nUse `owner-name` to specify Owner Name and use `owner-seniority` to promote the Owner's seniority.\n```\n$ kubectl --cluster cluster-1 get pods -l \"search.clusterpedia.io/owner-name=fake-pod,search.clusterpedia.io/owner-seniority=1\" \nNAME                                                 READY   STATUS      RESTARTS         AGE\nfake-pod-698dfbbd5b-74cjx                            1/1     Running     0                12d\nfake-pod-698dfbbd5b-tmcw7                            1/1     Running     0                3s\nfake-pod-698dfbbd5b-wvtvw                            1/1     Running     0                3s\n```\n\nLean More About [Search by Parent or Ancestor Owner](https://clusterpedia.io/docs/usage/search/specified-cluster/#search-by-parent-or-ancestor-owner)\n\n### Search for [Collection Resource](https://clusterpedia.io/docs/concepts/collection-resource/)\nClusterpedia can also perform more advanced aggregation of resources. For example, you can use `Collection Resource` to get a set of different resources at once.\n\nLet's first check which `Collection Resource` currently Clusterpedia supports:\n```sh\n$ kubectl get collectionresources\nNAME        RESOURCES\nany             *\nworkloads       deployments.apps,daemonsets.apps,statefulsets.apps\nkuberesources   .*,*.admission.k8s.io,*.admissionregistration.k8s.io,*.apiextensions.k8s.io,*.apps,*.authentication.k8s.io,*.authorization.k8s.io,*.autoscaling,*.batch,*.certificates.k8s.io,*.coordination.k8s.io,*.discovery.k8s.io,*.events.k8s.io,*.extensions,*.flowcontrol.apiserver.k8s.io,*.imagepolicy.k8s.io,*.internal.apiserver.k8s.io,*.networking.k8s.io,*.node.k8s.io,*.policy,*.rbac.authorization.k8s.io,*.scheduling.k8s.io,*.storage.k8s.io\n```\n\nBy getting workloads, you can get a set of resources aggregated by `deployments`, `daemonsets`, and `statefulsets`, and `Collection Resource` also supports for all complex queries.\n\n**`kubectl get collectionresources workloads` will get the corresponding resources of all namespaces in all clusters by default:**\n```sh\n$ kubectl get collectionresources workloads\nCLUSTER     GROUP   VERSION   KIND         NAMESPACE                     NAME                                          AGE\ncluster-1   apps    v1        DaemonSet    kube-system                   vsphere-cloud-controller-manager              63d\ncluster-2   apps    v1        Deployment   kube-system                   calico-kube-controllers                       109d\ncluster-2   apps    v1        Deployment   kube-system                   coredns-coredns                               109d\n```\n\u003e Add the collection of Daemonset in cluster-1 and some of the above output is cut out\n\nDue to the limitation of kubectl, you cannot use complex queries in kubectl and can only be queried by `URL Query`.\n\n[Lean More](https://clusterpedia.io/docs/usage/search/collection-resource/)\n\n## Proposals\n### Perform more complex control over resources\u003cspan id=\"complicated\"\u003e\u003c/span\u003e\nIn addition to resource search, similar to Wikipedia, Clusterpedia should also have simple capability of resource control, such as watch, create, delete, update, and more.\n\nIn fact, a write action is implemented by double write + warning response.\n\n**We will discuss this feature and decide whether we should implement it according to the community needs**\n\n## Notes\n### Multi-cluster network connectivity\nClusterpedia does not actually solve the problem of network connectivity in a multi-cluster environment. You can use tools such as [tower](https://github.com/kubesphere/tower) to connect and access sub-clusters, or use [submariner](https://github.com/submariner-io/submariner) or [skupper](https://github.com/skupperproject/skupper) to solve cross-cluster network problems.\n\n## Contact \u003cspan id=\"contact\"\u003e\u003c/span\u003e\nIf you have any question, feel free to reach out to us in the following ways:\n* [@cncf/clusterpedia slack](https://cloud-native.slack.com/messages/clusterpedia)\n\n\u003e If you want to join the clusterpedia channel on CNCF slack, please **[get invite to CNCF slack](https://slack.cncf.io/)** and then join the [#clusterpedia](https://cloud-native.slack.com/messages/clusterpedia) channel.\n\n## Contributors\n\n\u003ca href=\"https://github.com/clusterpedia-io/clusterpedia/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=clusterpedia-io/clusterpedia\" /\u003e\n\u003c/a\u003e\n\nMade with [contrib.rocks](https://contrib.rocks).\n\n## License\nCopyright 2023 the Clusterpedia Authors. All rights reserved.\n\nLicensed under the Apache License, Version 2.0.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclusterpedia-io%2Fclusterpedia","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclusterpedia-io%2Fclusterpedia","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclusterpedia-io%2Fclusterpedia/lists"}