clusternet

[CNCF Sandbox Project] Managing your Kubernetes clusters (including public, private, edge, etc.) as easily as visiting the Internet

APACHE-2.0 License

Stars
1.4K
Committers
46

Bot releases are hidden (Show)

clusternet - v0.17.1 Latest Release

Published by dixudx 3 months ago

clusternet - v0.17.0

Published by dixudx 3 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/clusternet/clusternet/compare/v0.16.0...v0.17.0

clusternet - v0.13.0

Published by dixudx almost 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/clusternet/clusternet/compare/v0.12.0...v0.13.0

clusternet - v0.12.0

Published by dixudx about 2 years ago

This release brings Clusternet to a "discovery" world. Clusters creating by cluster-api will be discovered automatically and registered to parent cluster. Auto-labelling for managed clusters is also available now. By integrating mcs-api, multi-cluster services are discoverable and accessible across clusters with a virtual IP.

Changes Since v0.11.0

Full Changelog: https://github.com/clusternet/clusternet/compare/v0.11.0...v0.12.0

What's Changed

New Features & Enhancements

Bug Fixes

User Experiences

New Contributors

Thanks to all contributors!

clusternet - v0.11.0

Published by dixudx over 2 years ago

This release brings in multiple fantastic features and improves the performance. This is a big update of Clusternet. Running clusternet-hub with high availability is possible now. And the performance of clusternet-scheduler is improved as well. Dynamic replica scheduling is fully supported. Applications with multiple replicas can be divided and scheduled to multiple clusters based on cluster dynamic capacity. Please check out this tutorial. Moreover, the aggregated statuses of all deployed resources can be shown by visiting the status of Subscription.

Changes Since v0.10.0

Full Changelog: v0.10.0...v0.11.0

What's Changed

New Features & Enhancements

Bug Fixes

User Experiences

Security

  • Fixed containerd CVE-2022-31030: A bug was found in containerd's CRI implementation where programs inside a container can cause the containerd daemon to consume memory without bound during invocation of the ExecSync API. This can cause containerd to consume all available memory on the computer, denying service to other legitimate workloads. Kubernetes and crictl can both be configured to use containerd's CRI implementation; ExecSync may be used when running probes or when executing processes via an "exec" facility. (by @dixudx in https://github.com/clusternet/clusternet/pull/364)

New Contributors

Thanks to all contributors!

clusternet - Clusternet v0.4.0

Published by dixudx about 3 years ago

πŸŽ‰ πŸŽ‰ πŸŽ‰ Clusternet Fourth Release !

Clusternet (Cluster Internet) is an open source add-on that helps you manage thousands of millions of Kubernetes clusters as easily as visiting the Internet. No matter the clusters are running on public cloud, private cloud, hybrid cloud, or at the edge, Clusternet lets you manage/visit them all as if they were running locally. This also help eliminate the need to juggle different management tools for each cluster.

Clusternet can also help deploy and coordinate applications to multiple clusters from a single set of APIs in a hosting cluster.

Changes Since v0.3.0

New Features

  • provides a two-stage priority based override strategy. Localization and Globalization will define the overrides with priority (ranging from 0 to 1000, default to 500), where lower numbers are considered lower priority. Localization is namespace-scoped resource, while Globalization is cluster-scoped. (by @dixudx in #58,#81 and @qmhu in #61)
    • NOTE: Currently only ApplyLater overrideType is supported, which means these overrides will be applied for all matched objects on next updates (including updates on Subscription, Manifest, HelmChart, etc) or newly created objects.
  • reports cluster/service CIDR and cluster node count in ManagedCluster status (by @DanielXLee in #68)
  • introduces new feature gate FeedInUseProtection to automatically inject finalizer apps.clusternet.io/feed-protection on new objects and removes corresponding feeds from Subscriptions when deleting objects that do not have finalizer apps.clusternet.io/feed-protection (by @dixudx in #77)
  • reconciles and applies resources on agent side - pull mode (by @dixudx in #96)
  • allowing customizing ClusterType on cluster regsitration (by @dixudx in #94)

Bug Fixes

  • fixes resources listing over all namespaces and filtering over label selectors (by @dixudx in #65, #72)
  • When a new cluster is registered, or clusters are re-matched with updated labels, these clusters should be dispatched with all matching Subscriptions. (by @dixudx in #90)

Downloading Clusternet v0.4.0

The common platform binaries are here:

OS Arch Checksum
Linux i386 887b091e43ec342fc773ea24b86ac431929269e2390d645872cacb4b5c30f921
Linux amd64 f4984b2b900d296423aeff4fcbcc41d6fb693c872a9e43c36a82dfea77134cb9
Linux arm 6bdc655e384de105fc7ac9a66aa9a2c39795b3daae3a8c7f48f8cb6239d71326
Linux arm64 9945b8229c9953db50505a21b8b97c312b919180f164989415d72de0e56bc14a
Linux ppc64le fc070aba3bc5a6bfaf907ea1182cb65465a709a823f34b1042e7914a8212bbab
Linux s390x 2363e9012cdaebf0db478f0a93fb1dd94a8ac44d94ed96614ec1568aa3066a43
clusternet - Clusternet v0.3.0

Published by dixudx about 3 years ago

πŸŽ‰ πŸŽ‰ πŸŽ‰ Third Release! v0.3.0 !

Clusternet (Cluster Internet) is an open source add-on that helps you manage thousands of millions of Kubernetes clusters as easily as visiting the Internet. No matter the clusters are running on public cloud, private cloud, hybrid cloud, or at the edge, Clusternet lets you manage/visit them all as if they were running locally. This also help eliminate the need to juggle different management tools for each cluster.

Clusternet can also help deploy and coordinate applications to multiple clusters from a single set of APIs in a hosting cluster.

Changes Since v0.2.0

  • use socket transport only when ManagedCluster.Status.UseSocket is true (#30)
  • introduce new kind Localization, Globalization, and Base to apps/v1alpha1 (#23)
  • introduce new Group shadow/v1alpha1, and use feature gate ShadowAPI to enable serving apiserver for shadow apis / GVKs, such as apps/v1, batch/v1, extensions/v1beta1 and etc (#35, #39, #41, #45)
  • deploy objects, such as Deployments, StatefulSet, Namespace, CRDs, etc, with generic deployer (#49, #48, #46)
  • add client-go wrapper and example codes (#43)
  • kubectl plugin kubectl-clusternet

Downloading Clusternet v0.3.0

The common platform binaries are here:

OS Arch Checksum
MacOS amd64 706ca01fe677e0c1ec879f6547e3d54e82994fd6897e20157e575026ca20b762
MacOS arm64 50b0f20a7945c3bdfed9dd12ab39eff83e9f4bb00a5eeb1e61896407efae8e6e
Linux i386 77d1974b832f9e057cdd0ae233b41c8b9d60ca8c8a7dc62de950427f53fa9759
Linux amd64 eae53a9aaf2ac14fd4690fbac818f40df7765509abb3fa593dcd01328e18cf2b
Linux arm d5617c160dd3b2c319edb5b5581a0ac385ea905a36f78a0bbb7c86467812d4dc
Linux arm64 151644b5393a7cc05e63798b0bdca1843ff4f0c18f0396b68a8b2802505d76bd
Linux ppc64le 6ecf3aff2c0e85b92872be0e8da1e3271388c0989f335abb866bb78bbf5221ca
Linux s390x b656840889b6994f06188e997bc7fd99914c7c7d74249c3201663470b3447cd0
clusternet - Clusternet v0.2.0

Published by dixudx over 3 years ago

πŸŽ‰ πŸŽ‰ πŸŽ‰Second Release! v0.2.0 !

Clusternet (Cluster Internet) is an open source add-on that helps you manage thousands of millions of Kubernetes clusters as easily as visiting the Internet. No matter the clusters are running on public cloud, private cloud, hybrid cloud, or at the edge, Clusternet lets you manage/visit them all as if they were running locally. This also help eliminate the need to juggle different management tools for each cluster.

Clusternet can also help deploy and coordinate applications to multiple clusters from a single set of APIs in a hosting cluster.

Changes Since v0.1.0

  • Bumps default namespace from edge-system to clusternet-system (#4)
  • Allows using a short-path URL handler for direct child cluster visiting (#3, #18)
  • Adds subresource sockets/proxy (#18)
  • Supports visiting child clusters with RBAC, including serviceaccount tokens, tls certificates (#19)
  • Introduces new api group apps/v1alpha1, which includes HelmChart, Subscription, Description, HelmRelease (#13)
  • Add a new feature gate Deployer to allow clusternet-hub working as a deployer to distribute kinds of resources to a group of clusters (#13)
  • Supports deploying helm charts to multiple clusters (#13)
  • Introduce cluster sync mode, Push, Pull, and Dual (#12)
  • Add a new feature gate AppPusher to fasten seat belt of child clusters (#11). With regard to security of child clusters, deploying applications directly from parent cluster should be limited. A more configurable way is provided here.

Downloading Clusternet v0.2.0

The common platform binaries are here:

OS Arch Checksum
MacOS amd64 633c8b52f4dd67a7a3c4f2be0ecbd4665d3f8c455f76e8a6038ecb6b6e24069b
MacOS arm64 08df33a46bb593c3a5bcf2e23eb2258ed75c8b2167a94666185d4566c05a2b48
Linux i386 f3c78a884b187c0f49dc7f5a04b378b305ef8b04ad9785ee3fac3711d1bee878
Linux amd64 03979f5653b9fc89a7aa2a157de653d2121922d8ade4f9df9be2779a53d2db51
Linux arm 689423d9e97babcba31d9b609dd46b456c41a9e98a086647583ea8e64f149c55
Linux arm64 58537016a150b742e3270bcf3bedc93520caae87456a541eecbbca978b9c402c
Linux ppc64le 4421ec3a3cb2dd4e7c6e3432ab0280ec87357f7170ab4bd671ad30c4387feb72
Linux s390x a8fabd9dd424f337714f27140e76309acbaa8c39107071a52536de57271d4dc8
clusternet - Clusternet v0.1.0

Published by dixudx over 3 years ago

⚑ ⚑ ⚑ First Release!

This is the first release of Clusternet, which is aimed to help manage multiple Kubernetes clusters (including public, private, edge, etc) as easily as visiting the Internet.


What's In

Clusternet consists of two components, clusternet-agent and clusternet-hub.

And Clusternet is multiple platforms supported, including linux/amd64, linux/arm64, linux/s390x, etc.

clusternet-agent: runing at each child Kubernetes cluster

  • Automatically registers current cluster to a parent cluster as a child cluster
  • Reports heartbeats of current cluster, including Kubernetes version, running platform, healthz/readyz/livez status, etc
  • Sets up a websocket connection with clusternet-hub in the parent cluster to provide full-duplex communication channels over a single TCP connection

clusternet-hub: running at the parent Kubernetes cluster

  • Runs as an Aggregated Apiserver (AA) that maintains multiple active WebSocket connections between child clusters
  • Approves registration requests from child clusters
  • Creates exclusive set of resources for each child cluster, such as namespaces, service accounts and RBAC rules
  • Proxies all Kubernstes-styled APIs to targeted child cluster
  • Allows to manage all child clusters (running in private cloud, at the edge, etc) with KubeConfig

Downloading Clusternet v0.1.0

The common platform binaries are here:

OS Arch Checksum
MacOS amd64 1594051bf314760f4e24e1aa5724ade82caff19d36be36b9ccfe071e10b29a87
MacOS arm64 6eb331b649e4e45171038f28227d217d40a9f5244067b9b170796b970139c476
Linux i386 06ee6a40227bfe6b560078da16d10f89af910fba5aaad3998c2025782412bcef
Linux amd64 45add7008e56e836e27ef8caa66f24c881bf79714fd57238caec9b1490e17d49
Linux arm 7e7f327ab58cfdc180804d136af76dd951bbe8b98741ad687ff9099092e16405
Linux arm64 2e4708f52e8750294b985e775820cf28b1541512ca80f41aa1900d8ff5851474
Linux ppc64le 610e0301b7eebaa3bc41e842e898fc5ba21c02c823879bc3d4c3d107e71b0a90
Linux s390x c46ea0c3601ed1de260a5cbcc2b6b0526964c8c862d19398b36a8f0fd24b72df
Package Rankings
Top 1.71% on Proxy.golang.org
Badges
Extracted from project README
GoPkg Widget License OpenSSF Best Practices Go Report Card Version codecov FOSSA Status FOSSA Status
Related Projects