跳到主要内容
Koordinator Logo

Koordinator

Star

基于 QoS 的 Kubernetes 混合工作负载调度系统

Koordinator 是什么?

Koordinator 是一个先进的调度系统,可以将不同类型的工作负载托管在Kubernetes上。将弹性的资源配额、高效的 Pod 打包、超卖、节点共享与容器资源隔离相结合,实现了高利用率。

Koordinator 是具有高性能、可扩展的, 在大规模生产环境中得到了验证的,可以构建支持企业生产环境的容器编排系统。

what is koordinator
Web ServiceSpark JobTF JobPresto JobCo-located Workloads Orchestration

Flexible Scheduling Policies

Koordinator provides a range of options for customizing scheduling policies, allowing users to fine-tune the behavior of the system to suit their specific needs, such as Web Service, Spark, Presto, TensorFlow, etc. We provide a profile tool to help you manage workload scheduling policies, which allows to control scheduling policies without modifying the existing workload controller
这些配置文件提供了在 Kubernetes 上运行典型工作负载的最佳实践,如果它们不能直接满足您的需求,您可以轻松扩展它们。Koordinator 社区将持续为工作负载托管添加更多最佳实践。
timeunallocatedpotentially reusable resources for Batchpotentially reusable resources for MidFreeusage of Prod

Improved Resource Utilization

Koordinator 引入了精心设计的优先级和 QoS 机制,将不同类型的工作负载混跑在集群中,并在单个节点上运行不同类型的 Pod。在划分优先级和 QoS 的基础上,通过资源超卖实现资源的高利用率,并通过应用分析析机制保证 QoS 。
大体思路是通过回收已申请但未使用的高优先级资源,超卖给低优先级的 Pod,并通过合理的资源分析机制和节点自下而上的策略避免预测失败。
Co-locatedworkloadsControllerCPUMemoryNetworkDiskInterference detectionResource IsolationImprove QoS

Enhanced Workload Performance

Koordinator 引入了一个 QoSManager 来协调一组插件,这些插件负责按优先级保证 SLO,减少 Pod 之间的干扰。这些插件根据资源分析、干扰检测结果和 SLO 配置,在不同场景下动态调整资源参数的“旋钮”。
QoSManager 不断调整每个 Pod 的资源隔离参数,以消除对延迟敏感的工作负载的长尾抖动。因此,即使您不关心资源利用率的提高,它也会提供一系列方法来提高运行时稳定性和性能。
controll planenodekubeletkoordletkoord-schedulerkoord-managerkoord-deschedulerkube-apiserverkube-controller-managerkube-schedulerruntime-proxy

Easy Integration

Koordinator consists of control plane components and node components, and does not require invasive modifications to the native components of Kubernetes. It runs in a similar fashion to a sidecar within a Kubernetes cluster, and based on the chosen policies, it schedules and manages user Pods, observes their runtime status, and optimizes their performance.
Koordinator follows the principle of loose coupling, allowing users to use the entire set of components or a combination of some components to meet their specific business requirements.