通过kubernetes中的YML将蝗虫文件复制到卷中

通过kubernetes中的YML将蝗虫文件复制到卷中,kubernetes,locust,Kubernetes,Locust,我有一个从github存储库获取的yml文件 apiVersion: v1 kind: ConfigMap metadata: name: scripts-cm data: locustfile.py: | from locust import HttpLocust, TaskSet, task class UserTasks(TaskSet): @task def index(self): self.clie

我有一个从github存储库获取的yml文件

apiVersion: v1
kind: ConfigMap
metadata:
  name: scripts-cm
data:
  locustfile.py: |
    from locust import HttpLocust, TaskSet, task


    class UserTasks(TaskSet):

        @task
        def index(self):
            self.client.get("/")

        @task
        def stats(self):
            self.client.get("/stats/requests")


    class WebsiteUser(HttpLocust):
        task_set = UserTasks
但我不想将配置管理设置为执行此操作,因为我有一个单独的locastfile.py,它非常大。是否有办法将文件复制到数据属性中?或者我必须使用cat命令

是否有办法将文件复制到数据属性中

有。您可以从文件创建
configMap
,并将此configMap作为卷装载到
Pod
。我准备了一个例子向你展示整个过程

让我们假设您的
locastfile.py
仅包含Python脚本:

从蝗虫导入Http蝗虫,任务集,任务
类用户任务(任务集):
@任务
def索引(自):
self.client.get(“/”)
@任务
def状态(自我):
self.client.get(“/stats/requests”)
类WebsiteUser(HttpOccast):
task\u set=UserTasks
您需要使用以下命令从此文件创建
configMap

  • $kubectl创建配置映射脚本cm--from file=蝗虫文件.py
之后,您可以将此
configMap
装载为
,如下例所示:

apiVersion:v1 种类:豆荚 元数据: 名称:ubuntu 规格: 容器: -名称:ubuntu 图片:ubuntu 命令: -睡眠 -“无限” 体积数量: -名称:配置卷
mountPath:/app/#您是否尝试过这样创建configmap:
$kubectl create configmap scripts cm--from file=蝗虫.py
?上面写着
configmap/scripts cm created
,但我在文件夹中找不到它