Skip to content

KubeStellar - a flexible solution for challenges associated with multi-cluster configuration management for edge, multi-cloud, and hybrid cloud

License

Notifications You must be signed in to change notification settings

irar2/kubestellar

 
 

Repository files navigation





Multi-cluster Configuration Management for Edge, Multi-Cloud, and Hybrid Cloud


Go Report Card Go Reference License Generate and push docs    first-timers-only    Broken Links Crawler QuickStart test    docs-ecutable - example1    docs-ecutable - placement-translator    docs-ecutable - mailbox-controller    docs-ecutable - where-resolver    docs-ecutable - kubestellar-syncer    Join Slack

Imagine KubeStellar as a post office for your Kubernetes resources. When you drop packages at the post office, they don't open them; they deliver them to the right recipients. Similarly, KubeStellar works like this for your Kubernetes resources. Instead of running resources right away, KubeStellar safely stores and sends resources to selected clusters across the globe—whether they're in public clouds, private clouds, or on the edge of your network. It's a super useful tool for spreading your Kubernetes resources wherever you need them without disrupting your existing tools and workflows.

How does KubeStellar resist the temptation to run your Kubernetes resources right away? KubeStellar accepts your applied resources in a special staging area (virtual cluster) where pods can't be created. Then, at your direction, KubeStellar transfers your applied resources to remote clusters where they can create pods and other required resource dependencies. KubeStellar does this using many different lightweight virtual cluster providers (Kind, KubeFlex, KCP, etc.) to create this special staging area.

KubeStellar is an innovative way to stage inactive Kubernetes resources and then apply them to any cluster to run. KubeStellar introduces a native way to expand, optimize, and protect your Kubernetes resources from individual cluster misconfiguration, utilization, and failure.

Don't change anything, just add KubeStellar!

KubeStellar treats multiple Kubernetes clusters as one so you can:

  • Centrally apply Kubernetes resources for selective deployment across multiple clusters
  • Use standard Kubernetes native deployment tools (kubectl, Helm, Kustomize, ArgoCD, Flux); no resource bundling required
  • Discover dynamically created objects created on remote clusters
  • Make disconnected cluster operation possible
  • Scale with 1:many and many:1 scenarios
  • Remain compatible with cloud-native solutions

KubeStellar virtual clusters (Spaces) are our secret

  • KubeStellar uses lightweight virtual clusters (Spaces) that run inside the KubeStellar hosting cluster
  • Standard Kubernetes clusters have 2-300 api-resources, KubeStellar Spaces have only 40
  • Fewer api-resources mean resources remain inactive (denatured) – they do not expand into other resources like replicasets, pods, etc.
  • Denaturing is the key to accepting native, unbundled Kubernetes resources as input without running them
  • Unbundled resources are the default and preferred output of most cloud-native tools making KubeStellar use and integration easy

QuickStart

Checkout our QuickStart Guide

Roadmap for the Project

We have defined and largely completed the PoC2023q1. The current activity is refining the definition of, and producing, the PoC2023q4. Goals not addressed in that PoC are to be explored later.

Contributing

We ❤️ our contributors! If you're interested in helping us out, please head over to our Contributing guide.

This community has a Code of Conduct. Please make sure to follow it.

Getting in touch

There are several ways to communicate with us:

Instantly get access to our documents and meeting invites at http://kubestellar.io/joinus

❤️ Contributors

Thanks go to these wonderful people:


Jun Duan

👀

Braulio Dumba

👀

Mike Spreitzer

👀

Paolo Dettori

👀

Andy Anderson

👀

Franco Stellari

👀

Ezra Silvera

👀

Bob Filepp

👀

Alexei Karve

👀

Maria Camila Ruiz Cardenas

👀

Aleksander Slominski

👀

Aashni Manroa

👀

Kevin Roche

👀

Nick Masluk

👀

Francois Abel

👀

Nir Rozenbaum

👀

Maroon Ayoub

👀

About

KubeStellar - a flexible solution for challenges associated with multi-cluster configuration management for edge, multi-cloud, and hybrid cloud

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 83.3%
  • Shell 13.2%
  • Makefile 2.4%
  • Other 1.1%