跳到主要内容
Koordinator Logo

Koordinator

Star

基于 QoS 调度系统,为在Kubernetes中高效运行微服务、AI、大数据负载设计

Koordinator 是什么?

Koordinator 是一个现代的调度系统,可以将微服务、AI、大数据的工作负载托管在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, Pytorch, 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 由控制平面组件和节点组件组成,不需要对 Kubernetes 原生组件进行侵入。它与 Kubernetes 集群中的同级边车相似,并且基于用户选择的策略,它调度和管理用户 Pod,观察其运行时状态,并优化其性能。
Koordinator 遵循松耦合原则,允许用户使用整个组件或某些组件来满足其特定业务需求。