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