首页 > 其他分享 >在 Kubernetes 中使用 ab 工具测试 HPA

在 Kubernetes 中使用 ab 工具测试 HPA

时间:2023-12-08 18:23:47浏览次数:32  
标签:ab Kubernetes -- nginx 测试 HPA

在 Kubernetes 中使用 ab 工具测试 HPA

Kubernetes 提供了强大的横向扩展能力,可以根据负载动态调整 Pod 的副本数量。本文将介绍如何使用 ab 工具测试 Horizontal Pod Autoscaler(HPA)。

下载并安装 ab 工具

首先,确保你的系统上安装了 ab 工具。在 Ubuntu 上,可以使用以下命令安装:

sudo apt update
sudo apt install apache2-utils -y

在 CentOS 上,可以使用以下命令安装:

sudo yum install httpd-tools -y

创建测试 Deployment 和暴露服务

使用以下命令创建一个测试的 Deployment,并将其暴露为服务:

kubectl create deployment nginx --image=nginx --requests='cpu=100m,memory=256Mi' --limits='cpu=200m,memory=512Mi'
kubectl expose deployment nginx --port=80 --type=NodePort

设置 HPA

设置 Horizontal Pod Autoscaler(HPA),指定 CPU 的目标使用率为 50%,最小和最大 Pod 数量分别为 1 和 10:

kubectl autoscale deployment nginx --cpu-percent=50 --min=1 --max=10

使用 ab 工具进行测试

执行 ab 命令来测试服务的性能:

ab -n 100000 -c 10000 http://<Node-IP>:<NodePort>/

结果验证

使用一下命令可以观测新起一个pod

kubectl get pod 

标签:ab,Kubernetes,--,nginx,测试,HPA
From: https://www.cnblogs.com/dongzhiwei/p/17888796.html

相关文章

  • Rusty Tuesday :Rust 基金会一行来访 Databend Labs,共话技术创新!
    在当今快速发展的技术浪潮中,Rust作为一种新兴的编程语言,凭借其卓越的内存安全特性和高效的性能,吸引了全球开发者的广泛关注。2023年12月05日,由DatabendLabs主办的首届RustyTuesday活动正式在北京揭开序幕。在本次活动中,我们非常荣幸地邀请到了多位行业精英:Rust语言......
  • Get-WindowsCapability -Online
    Get-WindowsCapability-OnlineName :Accessibility.Braille~~~~0.0.1.0State:NotPresentName :App.StepsRecorder~~~~0.0.1.0State:InstalledName :Browser.InternetExplorer~~~~0.0.11.0State:InstalledName :DirectX.Configuration.Database~~~~0.0.1.0S......
  • Isabelle上安装c-parser和autocorres
    c-parser,autocorres都是在Isabelle上形式验证c代码的工具,它们都是seL4项目的一部分,而这些所有的工具都是主要基于Linux的,所以建议在Linux上安装,以下内容是在WSL上安装的过程。进行安装前必要的步骤:支持WSL图形化的Windows系统,我个人用的是win10专业版,没有这个就别往下看了,别的......
  • Redis报错:(error) DENIED Redis is running in protected mode because protected mod
    一、报错内容  (error)DENIEDRedisisrunninginprotectedmodebecauseprotectedmodeisenabledandnopasswordissetforthedefaultuser.Inthismodeconnectionsareonlyacceptedfromtheloopbackinterface.Ifyouwanttoconnectfromexternal......
  • 在gitlab中如何导出、导入某个项目(提交记录不变),对某个项目进行迁移
    1、需求说明 在项目的迁移中遇到,需要将gitlab中的某个项目进行迁移的过程。关键点是,需要保持提交记录不变。 本文档下面的内容,就介绍这个过程。 2、项目导出、导入的过程 2.1、导出项目 a、登录到gitlab页面  b、点击要迁移的项目   可以看到项目......
  • 转载:ReportLab生成带表格和图文的PDF
    转载来自于:https://zhuanlan.zhihu.com/p/456486769龙在天涯 项目环境:环境:AnacondaPython3.10编辑器:PyCharm2021.2.3Packages:Reportlab3.6.2ReportLab简介“ThisisasoftwarelibrarythatletsyoudirectlycreatedocumentsinAdobe'sPortableDocumentForma......
  • zabbix使用自定义监控项权限不足
    一、背景zabbix在配置好个人监控项后,最开始基本上都会遇到权限不足的问题。二、解决方法两种解决方法:1、配置sudoers,然后再key值执行命令前加sudo(相对来说比较麻烦)2、配置zabbix_agent#zabbix-agent配置echo"AllowRoot=1">>/etc/zabbix/zabbix_agentd.conffind/-na......
  • [ABC254Ex] Multiply or Divide by 2
    [ABC254Ex]MultiplyorDivideby2题意:给定大小为$n$的集合$A$和$B$,你可以对集合$A$中的元素$a_i$进行两种操作,分别为$a_i\leftarrow\lfloor\dfrac{a_i}{2}\rfloor$,和$a_i\leftarrowa_i\times2$。你需要操作集合$A$直至集合$A,B$完......
  • 使用 Kubernetes 为 CI/CD 流水线打造高效可靠的临时环境
    介绍在不断发展的科技世界中,快速构建高质量的软件至关重要。在真实环境中测试应用程序是及早发现和修复错误的关键。但是,在真实环境中设置CI/CD流水线进行测试可能既棘手又昂贵。 Kubernetes是一个流行的容器编排平台,提供临时环境解决方案。在Kubernete的帮助下,用户能根......
  • uniapp滑动页面时警告Unable to preventDefault inside passive event listener due t
    翻译:没有添加被动事件监听器来阻止’touchstart‘事件,请考虑添加事件管理者’passive’,以使页面更加流畅。原因:由于浏览器必须要在执行事件处理函数之后,才能知道有没有掉用过 preventDefault(),这就导致了浏览器不能及时响应滚动,略有延迟。所以为了让页面滚动的效果如丝般顺滑......