自动扩缩容HPA实践(二)

2023-04-30 21:25:02 浏览数 (1)

步骤3:测试HPA

现在,我们可以测试HPA是否按预期工作。为此,我们可以使用Apache Bench(ab)来模拟负载。我们将使用以下命令运行ab:

代码语言:javascript复制
ab -n 5000 -c 100 http://<NODE_IP>:<NODE_PORT>/

其中,<NODE_IP>是您的节点的IP地址,<NODE_PORT>是Service分配的NodePort。该命令将在5000个请求中使用100个并发客户端发送HTTP GET请求。

使用以下命令获取NodePort:

代码语言:javascript复制
kubectl get svc nginx-service

然后,使用以下命令获取节点的IP地址:

代码语言:javascript复制
kubectl get nodes -o wide

在发送请求后,使用以下命令检查HPA的状态:

代码语言:javascript复制
kubectl get hpa

您将看到类似于以下输出:

代码语言:javascript复制
NAME           REFERENCE                 TARGETS   MINPODS   MAXPODS   REPLICAS   AGE
nginx-hpa      Deployment/nginx-deploy   0%/50%    1         10        1          2m

在开始测试时,Pod副本数为1。在发送一些请求后,HPA将启动新的Pod副本,以处理负载。在完成测试后,HPA将收缩Pod副本数量,以减少资源的浪费。

步骤4:删除资源

测试完成后,您可以使用以下命令删除Deployment、Service和HPA:

代码语言:javascript复制
kubectl delete deployment nginx-deployment
kubectl delete service nginx-service
kubectl delete hpa nginx-hpa

这些命令将删除部署、服务和HPA,以便您可以从集群中删除示例应用程序。

0 人点赞