手把手教你在腾讯云上部署压测引擎

前言

随着云原生的推进,k8s和service mesh已然成为云上的事实标准,我们的压测引擎也是基于这个理念演化而来。整个引擎的架构为k8s+jmeter+influxdb+grafana,其中:

  • K8S管理压测发力机,可以方便快速的适配目标环境的扩缩容处理
  • 通过框架提供的grafana的dashboard,能实时的了解压测量级的变化以及看到目标接口QPS的变化。依托于grafana优秀的时间选择体验,能很方便查看各次压测的详细数据,为压测节约了大量的时间
  • JMeter On K8s 的提供的Master / Slave 方式,让压测脚本实现过程中,对于一些资源数据,框架承担了发送到各压测执行机的责任,简化了编码和操作流程

集群节点配置

  • 子节点:多台普通节点,8核16G,带宽按量计费,外网带宽100Mbps,需要公网IP,系统盘: 50GB 高性能云硬盘(作为实际施压的节点)
  • 子节点数量视要压的QPS而定,一般1台可以支持2K的QPS

部署流程

我们的压测引擎是tke上一个服务,所以可以基于k8s进行一键部署。整个过程有如下的三个步骤,如果很熟练的操作tke,可以直接跳到第3个步骤。

步骤1:购买云服务器

以子节点(8核16G,带宽按量计费,外网带宽100Mbps,需要公网IP,系统盘: 50GB 高性能云硬盘)为例子,说明下购买步骤。

  • 登录上腾讯云之后,进入到云服务器界面,点击新建

  • 选择合适的计费模式,地域

  • 实例的话,选择8核16G,镜像选择默认就好,后面加到集群中会重装系统

  • 勾选上“免费分配独立公网IP”,选择“按使用流量”,带宽选择100Mbps,数量选择10台,点击下一步

  • 安全组把常用的IP/端口放开

  • 设置好密码,密码不能过于简单,否则很容易被攻击;至于是否自动续费要取决于压测使用的时长

后续就按步骤点击就好。

步骤2:把云服务器加到tke集群中

  • 容器服务界面,点击创建
  • 在“集群信息”页面输入集群名称,选择所在地域,集群网络需要和机器在同一个网络下,点击下一步

  • 强烈建议操作系统选择ubuntu server(不建议选择其他版本)

  • 进入“选择机型”步骤,选择已有节点,然后选择你需要加入集群的节点

  • 选择完需要加入的集群后,还需要在下面登录方式里面选择【设置密码】,之后填写需要设定的密码,设置完后点击下一步

  • 组件配置不需要改动,直接点击下一步
  • 最后确认一下信息是否有误,无误的话点击完成,集群就创建完成了

  • 如果最后点击完成时出现以下提示,证明安全组已经达到了目前的上限

解决办法:

进入账号的安全组设置中,以下两种方法都行

a.首先进入云服务器界面,之后选择左侧的安全组

b.鼠标放到云产品上,在搜索框中输入安全组进行查找,选择【云服务器-安全组】

进入安全组后,选择如下图的,关联实例数位0,命名与备注不明确,时间较久的安全组,进行删除,之后再回去就能成功完成集群的创建了。

(注意:关联实例数为0是首要条件)

如果没有满足条件的安全组,请联系相关负责人员来进行协调。

步骤3:安装压测引擎jmeter-suite

进入:容器服务->应用市场->jmeter-suite

点击创建应用,输入应用名称,选择相应的集群,并输入合理的参数,点击创建即可

  • server-replicaCount对应的施压节点的数量,一般要小于或等于机器的节点数;
  • image-tag确保是最新的版本V1.5;
  • 需要修改grafana-adminPassword的密码;

如果要要卸载或者重新安装,需要如下两个操作:

1.在应用里面删除jmeter-suite

2.在PVC界面也需要删除

查看监控面板

监控面板的地址为:集群节点IP:31221

以下面为例对应的grafana监控面板地址为:http://159.75.220.185:31221

安装jmeter-suite的注意事项请参考:

https://cloud.tencent.com/developer/article/1822041

https://cloud.tencent.com/developer/article/1824996

操作TKE的腾讯云子账号是需要如下两类权限:

  • 使用TKE预设策略授权:QcloudTKEFullAccess,QcloudTKEInnerFullAccess,QcloudTKEReadOnlyAccess

详见:https://cloud.tencent.com/document/product/457/46033

  • 使用预设身份授权,操作如下

详见:https://cloud.tencent.com/document/product/457/46105

本站文章资源均来源自网络,除非特别声明,否则均不代表站方观点,并仅供查阅,不作为任何参考依据!
如有侵权请及时跟我们联系,本站将及时删除!
如遇版权问题,请查看 本站版权声明
THE END
分享
二维码
海报
手把手教你在腾讯云上部署压测引擎
随着云原生的推进,k8s和service mesh已然成为云上的事实标准,我们的压测引擎也是基于这个理念演化而来。整个引擎的架构为k8s+jmeter+infl...
<<上一篇
下一篇>>