如何为 k8s 集群指定备用/空闲节点?

时间:2021-06-24 10:21:23

标签: amazon-web-services kubernetes autoscaling horizontal-pod-autoscaling

我在 AWS 上运行了一个具有自动缩放功能的 k8s 集群。我使用集群来运行 Spark(主 + 工人)。其中一部分是工作节点的以下节点组:

managedNodeGroups:
  - name: mng0
    instanceType: m5.large
    desiredCapacity: 0
    privateNetworking: false # if only 'Private' subnets are given, this must be enabled
    minSize: 4
    maxSize: 50
    securityGroups:
      attachIDs: xxxxx
    iam:
      withAddonPolicies:
        autoScaler: true
        cloudwatch: true

通过此设置,我始终至少有 4 个节点可用于“热启动”,以防出现火花作业,以避免 +-2 分钟。现在,如果第二个 spark 作业请求节点(并且 >4 个节点都已启动),则第二个作业必须再次等待更多节点启动。我想创造一种情况,即总是立即获取新的 Spark 作业,而不会产生“启动新节点”的开销。这对我来说尤其重要,因为数据集大小变化很大(从 MB 到 TB)并且用于探索性分析和 ETL,对于小数据集的探索性分析,我想要一个

问题:我可以指定准备接受新 Spark 作业的空闲/等待/备用节点的数量吗?

这是实现我想要的正确方法,还是有更好的方法?

0 个答案:

没有答案