本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

执行器是一个包装在Docker容器中的程序,它接收基于OpenAPI的testkube.Execution JSON文档作为输入,并返回JSON输出行流(testkube.ExecutorOutput),其中每行输出都简单地包装在该JSON中,类似于结构化日志的理念。
这是一个基本的JMeter执行器,能够运行JMX格式编写的简单JMeter场景。请将JMeter文件定义为文件(字符串或Git文件)。目前尚未实现项目目录功能。
默认安装以下插件:
您可以在创建或执行JMeter测试时,利用Testkube的文件复制功能添加更多JMeter插件。JMeter插件JAR文件需复制到执行器容器的uploads目录。
示例:
kubectl testkube create test \ --file test.jmx \ --copy-files "/source/path/to/jmeter-plugins-functions-2.1.jar:plugins/jmeter-plugins-functions-2.1.jar" \ --name jmeter-test \ --type jmeter/test
确保以下工具已安装在您的机器上并在PATH中可用:
data/的目录(JMeter将在此运行并存储结果,建议在项目根目录创建,因为该目录已被git忽略)data/目录下的test-content文件execution.json(建议保存在项目根目录的temp/文件夹,因为该目录已被git忽略):
{ "id": "jmeter-test", "args": [], "variables": {}, "content": { "type": "string" } }
RUNNER_SCRAPPERENABLED、RUNNER_SSL和RUNNER_DATADIR环境变量,并使用make run run_args="-f|--file <path>"命令运行执行器,其中-f|--file <path>是步骤3中创建的execution.json文件路径:
RUNNER_SCRAPPERENABLED=false RUNNER_SSL=false RUNNER_DATADIR="./data" make run run_args="-f temp/execution.json"
Execution JSON存储执行器运行配置测试所需的信息,结构说明如下:
{ "args": ["-n", "-t", "test.jmx"], "variables": { "example": { "type": "basic", "name": "example", "value": "some-value" } }, "content": { "type": "string" } }
["-n", "-t", "test.jmx"]{"example": {"type": "basic", "name": "example", "value": "some-value"}}RUNNER_SSL=false # 若存储后端使用HTTPS则设置,本地开发应设为false RUNNER_SCRAPPERENABLED=false # 启用/禁用scrapper,本地开发应设为false RUNNER_DATADIR=<path-to-data-dir> # JMeter运行和存储结果的数据目录路径
testkube命名空间)本地验证执行器变更正常工作后,需测试Testkube能否成功调度使用新执行器镜像的测试。以下命令假设Testkube安装在testkube命名空间,若在其他命名空间,请调整--namespace参数。
使Testkube使用新执行器镜像的步骤:
使用make docker-build-local命令构建新执行器镜像。默认标记为kubeshop/testkube-executor-jmeter:999.0.0,可通过LOCAL_TAG环境变量自定义。
将镜像加载到Kubernetes集群:
kind load docker-image <image-name> --name <kind cluster name>(示例:kind load docker-image testkube-executor-jmeter:999.0.0 --name testkube-k8s-cluster)minikube image load <image-name> --profile <minikube profile>(示例:minikube image load testkube-executor-jmeter:999.0.0 --profile k8s-cluster-test)编辑Job模板,将imagePullPolicy改为IfNotPresent:
kubectl edit configmap testkube-api-server --namespace testkubejob-template.yml键,修改containers部分的imagePullPolicy字段为IfNotPresent编辑执行器配置,将基础镜像改为新创建的镜像:
kubectl edit configmap testkube-api-server --namespace testkubeexecutors.json键,修改名称为jmeter-executor的执行器的executor.image字段重启API Server:kubectl rollout restart deployment testkube-api-server --namespace testkube
Testkube现在将使用新镜像,您可通过首选方式调度测试。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429