Load balancing and resource allocation in Kubernetes clusters using Trimaran plugins
- Trimaran is a set of plugins for Kubernetes clusters that optimize resource allocation and load balancing
- The Target Load Packing plugin aims to achieve high utilization across all nodes while maintaining a safe margin for CPU usage spikes
- The Load Variation Risk Balancing plugin computes a risk score based on CPU and memory utilization and chooses the bottleneck resource score
- Trimaran uses multiple metric sources and caches data to avoid overwhelming metric providers
- Future work includes integrating Trimaran with other schedulers and incorporating additional resources like IO and network latency
In an experiment with 100 nodes and 400 pods, the Target Load Packing plugin resulted in better capacity utilization, fewer hot nodes, and fewer fragmented cores compared to the default scheduler