当前位置: 首页 > 知识库问答 >
问题:

如何在创建pod后让Kubectl运行容器

田曜瑞
2023-03-14

目的是从命令行执行gatling perf测试。等效docker命令是

docker run --rm  -w /opt/gatling-fundamentals/ 
tarunkumard/tarungatlingscript:v1.0 
./gradlew gatlingRun-simulations.RuntimeParameters -DUSERS=500 -DRAMP_DURATION=5 -DDURATION=30

现在,为了映射上面使用kubectl在库伯内特斯运行的docker,我创建了一个pod,下面是gradlewcommand.yaml文件

apiVersion: v1
kind: Pod
metadata:
name: gradlecommandfromcommandline
labels:
purpose: gradlecommandfromcommandline
spec:
containers:
- name: gradlecommandfromcommandline
image: tarunkumard/tarungatlingscript:v1.0
workingDir: /opt/gatling-fundamentals/
command: ["./gradlew"]
args: ["gatlingRun-simulations.RuntimeParameters", "-DUSERS=500", "- 
DRAMP_DURATION=5", "-DDURATION=30"]
restartPolicy: OnFailure

现在,使用以下命令创建容器:-

kubectl apply -f gradlewcommand.yaml 

现在是我的实际要求或问题,我如何运行或触发kubectl run命令,以便在上面创建的pod中运行容器?,请注意,您的 pod 名称是 gradlecommandf 从命令行

共有1个答案

韦安怡
2023-03-14

以下是解决问题的命令:

 kubectl exec gradlecommandfromcommandline -- \
   ./gradlew gatlingRun-simulations.RuntimeParameters \
   -DUSERS=500 -DRAMP_DURATION=5 -DDURATION=30
 类似资料:
  • 问题内容: 在pod内的容器中,如何使用kubectl运行命令?例如,如果我需要在容器内执行以下操作: kubectl得到豆荚 我已经试过了:在我的dockerfile中,我有以下命令: 编辑:我正在尝试OSX文件,我已将其更正为linux二进制文件。(由@svenwltr纠正 在创建docker文件时,这是成功的,但是当我在容器中运行kubectl get pod时, 我收到此错误: 与服务器的

  • 我刚刚开始使用kubernetes,并使用kops在AWS上建立集群。在我阅读(并尝试)的许多例子中,会有这样的命令: 这似乎在幕后做了几件事,我可以查看使用创建的清单文件,等等。然而,我看到许多例子,人们手工创建清单文件,并使用像或这样的命令 我假设两种方法都实现了相同的目标,但通过自己创建清单文件,您可以更好地控制,这对吗? 然后我必须自己创建服务、复制控制器和Pod规范吗? 最后,如果您自己

  • 我为kubernetes api服务器上的POD创建了如下限制 如果我理解正确,如果pod在创建pod时超出了用户定义的资源限制,kubernetes会拒绝pod。所以,我尝试创建一个新的pod,它通过了资源限制,然后我尝试消耗资源达到最大限制资源,但它对pod没有任何影响。LimitsRange和ResourceQuota插件是否包含在本案例中?如果没有,我如何在创建资源吊舱后限制资源吊舱?

  • null 我的问题是 为什么在一个集群中有三个操作来执行相同的任务? 这些操作的用例是什么? 他们在引擎盖下有什么不同?

  • 我想删除这两个图像 如何走出圈子?

  • 我对OSGi不是完全的新手,但显然已经够新手了。 我想做的是编写一个OSGi(ApacheFelix)包,并将Java脚本API(JSR-223)与Groovy结合使用。为此,我安装了groovy 2.4.12,它已经是一个OSGi捆绑包,我将groovy运行时(2.4.12)视为Felix远程Shell控制台中的一个活动服务。 我也理解Java的ServiceLoader API和OSGi的捆绑