银行spark

大数据与日常应用容器化混合部署,如何合理分配资源?

混合部署时候,初衷是想当日间应用或者大数据应用在达到上限时候,进行动态扩容。在资源不紧张时候,自动释放资源。释放出的资源给下一个高峰期的日间应用或者大数据应用申请使用。
那么在确认初始化配置的资源上限时候,应该参考什么去设置。 设置的过大,弹性扩缩容的意义就不大了,设置的过下,频繁的需要动态扩展。
特别是例如大数据的spark作业,资源基本都是事先预设的资源。相当于运行前就需要确认资源量,那么这种情况下是否无法发挥出混合部署时候,空闲资源的按需使用的优点。 
即使开启了 spark.dynamicAllocation.enabled SPARK的动态资源,但是也是需要事先设定一个最大和最小的分配资源量。

参与3

1同行回答

dean25dean25课题专家组软件架构设计师民生银行
离线在线混合部署后,主要是错峰运行。夜间(22:00-8:00)之间是在线的低谷期,可以出让较多的CPU计算资源给大数据,比如40%-45%。白天(8:00-18:00) 是在线应用的高峰期,可以出让比如15%-20%的资源给大数据作业;晚上(18:00-22:00)在线业务负载相比白天下降,可以出让30%的资源给大...显示全部

离线在线混合部署后,主要是错峰运行。夜间(22:00-8:00)之间是在线的低谷期,可以出让较多的CPU计算资源给大数据,比如40%-45%。白天(8:00-18:00) 是在线应用的高峰期,可以出让比如15%-20%的资源给大数据作业;晚上(18:00-22:00)在线业务负载相比白天下降,可以出让30%的资源给大数据。这样将计算节点的总体CPU使用率控制在不超过50%。实现这种控制的方式,是计算节点提供对于低优大树作业容器可使用资源总量的压制, 当然这样带来的影响是,白天如果大数据应用申请了过多CPU资源,但是实际上并得不到那么多,就会变得慢一些。

目前我们是给每个应用项目组一个作业提交队列,并配置了队列的资源配额,在配额范围内可以提交任意多的作业。 然后通过计算节点低优作业资源总量控制,实现实际的资源上限分配控制

收起
银行 · 2024-05-08
浏览76

ChatGPT 回答

在确定初始化配置的资源上限时,可以参考以下几点:

1.历史数据:可以根据历史数据来确定应用或大数据作业的峰值和谷值,以此来确定资源上限。

2.实时监控:可以通过实时监控系统来获取当前应用或大数据作业的资源使用情况,以此来确定资源上限。

3.预估算法:可以通过预估算法来预估应用或大数据作业的资源使用情况,以此来确定资源上限。例如,可以通过机器学习算法来预测未来资源使用情况。

在设置资源上限时,需要考虑到应用或大数据作业的实际需求和资源的可用性。如果设置的过大,会浪费资源,而设置的过小,会导致应用或大数据作业无法正常运行。因此,需要根据实际情况进行合理的设置。在混合部署时,空闲资源的按需使用的优点可以在资源不紧张时发挥出来,但在资源紧张时,仍需要事先设定一个最大和最小的分配资源量,以确保应用或大数据作业的正常运行。

提问者

jillme
CIO某大型银行

问题来自

相关问题

相关资料

问题状态

  • 发布时间:2024-05-07
  • 关注会员:2 人
  • 问题浏览:588
  • 最近回答:2024-05-08
  • X社区推广