使用 HPA 虚拟节点自动缩放将不起作用,因为将 ACI 呈现为虚拟节点而不是 Pod 的 AKS 集群。如果要求是高突发需求,则使用虚拟节点和 Azure 容器实例进行扩展。
HPA 将自动增加/减少副本数量,以将所有 Pod 的平均 CPU 利用率维持在建议的百分比。
我在GitHub 找到了一个解决方案,这将有助于自动缩放虚拟节点。
复制过程:
我已经成功地重现了该解决方案,并且在对启用虚拟节点插件.
第 1 步:创建一个地址前缀为 10.0.0.0/8 和子网 myAKSSubnet 的 Vnet:10.240.0.0/16 和 myVirtualNodeSubnet 10.241.0.0/16
Step2:创建一个默认节点数为 1 的集群,并映射到子网 id myVirtualNodeSubnet
第 3 步:使用以下命令启用虚拟节点插件
az aks enable-addons --resource-group <resourcegroupName>--name <CluserName> --addons virtual-node --subnet-name <Subnetname>
第四步:
连接集群并检查节点详细信息:
az aks get-credentials --resource-group <ResourcegroupName>--name <CluserName>
kubectl get nodes
step5: 在没有 HPA 的情况下部署相同的应用程序
kubectl apply -f <app>.yaml
第六步:
使用相同的应用程序应用 HPA
第七步:
验证 pod 后,它现在会自动缩放到 2
注意:在虚拟节点上启用时,插件 HPA 正在运行。