AWS 的 Cluster Autoscaler 可以在自动缩放组的期望容量下进行缩放。该功能可以通过在自动缩放组配置中添加自定义指标来实现。下面是一个示例代码:
apiVersion: extensions/v1beta1 kind: Deployment metadata: name: cluster-autoscaler spec: replicas: 1 template: metadata: labels: app: cluster-autoscaler spec: containers: - name: cluster-autoscaler image: k8s.gcr.io/autoscaling/cluster-autoscaler:v1.2.2 command: - ./cluster-autoscaler - --cloud-provider=aws - --skip-nodes-with-system-pods=false - --expander=least-waste envFrom: - configMapRef: name: cluster-autoscaler-cloud-provider resources: limits: cpu: 100m memory: 300Mi requests: cpu: 100m memory: 300Mi
在上面的示例中,我们添加了一个 ConfigMap 和一个 Deployment 来部署 Cluster Autoscaler。请注意,在 Deployment 中的 --cloud-provider=aws
标志指示 Cluster Autoscaler 使用AWS作为云提供程序,而 --skip-nodes-with-system-pods=false
标志确保自动缩放器还执行系统节点上的 Pod 。您可以根据需要更改配置。