8000 waok8s · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
@waok8s

waok8s

Energy-Efficient Pod Scheduling and Load Balancing with the Workload Allocation Optimizer (WAO)

Modern datacenters consume enormous amounts of electricity, a challenge accelerated by the growth of AI workloads. WAO offers a purely software-based approach to reduce server energy consumption by predicting power usage on individual nodes and optimizing workload placement.

We integrated WAO with Kubernetes in two ways:

  • WAO-Scheduler uses a custom scheduler plugin to assign Pods to nodes likely to incur the smallest increase in power usage.
  • WAO-LoadBalancer is a customized kube-proxy that balances traffic across nodes to minimize power usage from incoming requests.

Both of these components rely on the WAO predictive model:

  • It forecasts server power consumption using CPU usage, inlet temperature, and static pressure as inputs.
  • A separate model must be developed for each server type through measurement, yet remains independent of the server’s physical deployment environment.

We conducted a series of experiments in a real-world datacenter and found:

  • WAO-Scheduler achieved up to a 10–20% reduction in overall power consumption in real-world tests.
  • WAO-LoadBalancer is still under active development.

This open-source implementation includes custom resources for per-node configuration, a metrics adapter to collect environmental data, and integrations with both the scheduler plugin and our custom kube-proxy.

Future work involves integrating with cooling systems, enhancing workload rebalancing, and extending support to GPUs. By leveraging Kubernetes extensibility and predictive modeling, we aim to make datacenters more energy-efficient without compromising user experience.

Additional Resources

Pinned Loading

  1. waok8s waok8s Public

    Workload Allocation Optimizer for Kubernetes

    Go 2

  2. optimization optimization Public

    WAO models and optimization code

    1

Repositories

Showing 10 of 13 repositories
  • waok8s Public

    Workload Allocation Optimizer for Kubernetes

    waok8s/waok8s’s past year of commit activity
    Go 2 Apache-2.0 0 0 0 Updated Mar 28, 2025
  • wao-core Public archive

    WAO core components and libraries

    waok8s/wao-core’s past year of commit activity
    Go 1 Apache-2.0 0 0 0 Updated Mar 6, 2025
  • wao-metrics-adapter Public archive

    Exposes custom metrics for WAO

    waok8s/wao-metrics-adapter’s past year of commit activity
    Go 0 Apache-2.0 0 0 0 Updated Mar 6, 2025
  • wao-scheduler Public archive

    Scheduler plugins for WAO

    waok8s/wao-scheduler’s past year of commit activity
    Go 2 Apache-2.0 1 0 0 Updated Mar 6, 2025
  • wao-loadbalancer Public archive

    Custom kube-proxy for WAO

    waok8s/wao-loadbalancer’s past year of commit activity
    Go 0 Apache-2.0 0 0 0 Updated Mar 6, 2025
  • optimization Public

    WAO models and optimization code

    waok8s/optimization’s past year of commit activity
    1 0 0 0 Updated Feb 27, 2025
  • .github Public
    waok8s/.github’s past year of commit activity
    0 Apache-2.0 0 0 0 Updated Jan 28, 2025
  • wao-estimator Public archive

    Estimator for inter-cluster scheduling with WAO

    waok8s/wao-estimator’s past year of commit activity
    Go 1 Apache-2.0 0 0 0 Updated Jan 21, 2025
  • waofed Public archive

    WAO for KubeFed

    waok8s/waofed’s past year of commit activity
    Go 0 Apache-2.0 0 0 0 Updated Jan 21, 2025
  • wao-loadbalancer-build-v1 Public archive Forked from kubernetes/kubernetes

    Build WAO-LB (see wao-* branches)

    waok8s/wao-loadbalancer-build-v1’s past year of commit activity
    Go 0 Apache-2.0 41,992 0 0 Updated Apr 9, 2024

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…

0