如何在混合模式下设置自动扩展的Kubernetes集群

时间:2019-06-22 13:44:40

标签: kubernetes autoscaling

我需要为将在本地和AWS上作为docker映像运行的spark应用程序创建K8s自动缩放设置,通过缩放,我的意思是(使用节点自动缩放)从本地部署到使用集群自动缩放器的AWS云或通过其他方式

我浏览了很多文章,例如如何在AWS / HPA和CA扩展上设置K8集群,但是找不到具体的指导

我正在寻找可以帮助我了解从哪里开始/应该遵循的步骤来建立这样的K8s集群的方向。

1 个答案:

答案 0 :(得分:0)

关于群集自动缩放器: 满足以下条件之一时,Cluster Autoscaler是一种自动调整Kubernetes群集大小的工具: -由于资源不足,某些Pod无法在群集中运行, -群集中的某些节点未被充分利用的时间很长,它们的Pod可以放置在其他现有节点上。

Azure上的群集自动缩放器可动态缩放Kubernetes工作者节点。它在您的集群中作为部署运行。 此README将帮助您在Azure Kubernetes群集上运行群集自动缩放器。

关于HPA: Horizo​​ntal Pod Autoscaler基于观察到的CPU利用率或其他自定义指标,自动缩放复制控制器,部署或副本集中的Pod数量。 HPA通常从一系列汇总的API中获取指标: -metrics.k8s.io -custom.metrics.k8s.io -external.metrics.k8s.io

如果不仅仅基于CPU利用率,还需要单独启动Metrics-server。可以在herehere中找到更多信息。

如何使其起作用? 默认情况下,kubectl支持HPA:

  • kubectl create-创建一个新的自动缩放器
  • kubectl get hpa-列出您的自动缩放器
  • kubectl describe hpa-获取有关自动缩放器的详细描述
  • kubectl delete-删除自动缩放器

示例: kubectl自动缩放rs foo --min = 2 --max = 5 --cpu-percent = 80为复制集foo创建一个自动缩放器,目标CPU利用率设置为80%,副本数在2到5之间。

Here是有关如何使用kubectl自动缩放命令的详细文档。