rossf7 / carbon-aware-karmada-operator Goto Github PK
View Code? Open in Web Editor NEWA Kubernetes operator to automate carbon-aware spatial shifting of workloads using Karmada
License: Apache License 2.0
A Kubernetes operator to automate carbon-aware spatial shifting of workloads using Karmada
License: Apache License 2.0
Hi Ross,thanks for making this!
Would it be possible to list what APIs a provider of kubernetes needs to implement or expose for it to be possible to controllable by an existing control plane cluster?
I'll try outlining the use case I'm thinking of.
Running a control plane cluster youself, and connecting to managed k8s providers from multiple suppliers
You're operating a control plane cluster with Supplier A, and rather than spinning up a cluster that you manage yourself with provider B or provider C, you just want to purchase a managed service from them, the same way you might purchase managed object storage.
Different suppliers have different specialisations, or emissions profiles, and you don't want to interface at a low level, provisioning VMs yourself, but use the higher level APIs afforded by the provider.
This seems to be inline with the goal of Karmada, based on their docs:
Karmada supports:
- Safe isolation:
- Create a namespace for each cluster, prefixed with karmada-es-.
- Multi-mode connection:
- Push: Karmada is directly connected to the cluster kube-apiserver.
- Pull: Deploy one agent component in the cluster, Karmada delegates tasks to the agent component.
- Multi-cloud support(Only if compliant with Kubernetes specifications):
- Support various public cloud vendors.
- Support for private cloud.
- Support self-built clusters.
Source: Key Features | karmada by
And I'm aware that Karmada has two ways to connect to an existing provider:
However, I'm not clear what a checking service might look like, so you could validate that an existing k8s provider might be compatible, such that you could use them to run a control plane cluster OR a member cluster, just by sending some API calls to a given endpoint.
If it helps, this notebook explains the idea, but for object storage:
For some further context, I'm interested in this, because it would be really cool to be able to add this kind of information to our directories of providers at the Green Web Foundation, so you could easily find API compatible providers of all kind of building blocks you might use when creating digitial services. The link below might be helpful context too, in this case:
https://www.thegreenwebfoundation.org/directory/services-offered/
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.