多租户资源管理
特性简介
现代企业的数据集群在向集中化和云化方向发展,企业级大数据集群需要满足:
- 不同用户在集群上运行不同类型的应用和作业(分析、查询、流处理等),同时存放不同类型和格式的数据。
- 部分用户(例如银行、政府单位等)对数据安全非常关注,不接受将自己的数据与其他用户放在一起。
这给大数据集群带来了以下挑战:
- 合理地分配和调度资源,以支持多种应用和作业在集群上平稳运行。
- 对不同的用户进行严格的访问控制,以保证数据和业务的安全。
多租户将大数据集群的资源隔离成一个个资源集合,彼此互不干扰,用户通过“租用”需要的资源集合,来运行应用和作业,并存放数据。在大数据集群上可以存在多个资源集合来支持多个用户的不同需求。
因此,MRS大数据集群提供了完整的企业级大数据多租户解决方案。多租户是MRS大数据集群中的多个资源集合(每个资源集合是一个租户),具有分配和调度资源(资源包括计算资源和存储资源)的能力。
特性优势
调度器增强
多租户根据调度器类型分为开源的Capacity调度器和华为自主研发的增强型Superior调度器。
为满足企业需求,克服YARN社区在调度上遇到的挑战与困难,华为自主研发的Superior调度器,不仅集合了当前Capacity调度器与Fair调度器的优点,还做了以下增强:
- 增强资源共享策略
Superior调度器支持队列层级,在同集群集成开源调度器的特性,并基于可配置策略进一步共享资源。针对实例,MRS集群管理员可通过Superior调度器为队列同时配置绝对值或百分比的资源策略计划。Superior调度器的资源共享策略将YARN的标签调度增强为资源池特性,YARN集群中的节点可根据容量或业务类型不同,进行分组以使队列更有效地利用资源。
- 基于租户的资源预留策略
部分租户可能在某些时间中运行关键任务,租户所需的资源应保证可用。Superior调度器构建了支持资源预留策略的机制,在这些租户队列运行的任务可立即获取到预留资源,以保证计划的关键任务可正常执行。
- 租户和资源池的用户公平共享
Superior调度器提供了队列内用户间共享资源的配置能力。每个租户中可能存在不同权重的用户,高权重用户可能需要更多共享资源。
- 大集群环境下的调度性能优势
Superior调度器接收到各个NodeManager上报的心跳信息,并将资源信息保存在内存中,使得调度器能够全局掌控集群的资源使用情况。Superior调度器采用了push调度模型,令调度更加精确、高效,大大提高了大集群下的资源使用率。另外,Superior调度器在NodeManager心跳间隔较大的情况下,调度性能依然优异,不牺牲调度性能,也能避免大集群环境下的“心跳风暴”。
- 优先策略