Kubernetes ConfigMap 需要有效 YAML 中的“字符串”

问题描述 投票:0回答:1

我正在尝试使用 ConfigMap 在 Kubernetes 中设置 Cron 作业,并将 shell 脚本安装到卷。我有有效的 YAML,但第 9 行抛出一个错误,指出它需要一个字符串:

apiVersion: v1
kind: ConfigMap
metadata:
  name: elasticdump-configmap
  namespace: default
data:
  job.schedule: "*/5 * * * *"
  spec:
    restartPolicy: OnFailure
    containers:
    - name: elasticdump
      image: elasticdump/elasticsearch-dump
      imagePullPolicy: IfNotPresent
      command: ["/bin/sh", "-c", "elasticdump.sh"]
    volumeMounts:
      - mountPath: /opt/data
        name: blob01
    resources:
      requests:
        memory: 1Gi
      limits:
        memory: 5Gi
  volumes:
     - name: blob01
       persistentVolumeClaim:
        claimName: pvc-blob
       configMap:
        name: elasticdump-configmap
        items:
          - key: elasticdump.sh
            path: elasticdump.sh

我知道我在 YAML 结构中做错了一些事情,但我对 Kubernetes 还很陌生,所以即使有一点提示,我也会很感激。

kubernetes yaml configmap
1个回答
0
投票

正如docs中所述:

ConfigMap 是一个 API 对象,可让您存储配置 其他要使用的物体。

因此,不可能以这种方式定义 CronJob。请查看名为 CronJob

的特殊 k8s 对象
apiVersion: batch / v1
kind: CronJob
metadata:
name: elasticdump - configmap
namespace: default
spec:
schedule: "*/5 * * * *"
jobTemplate:
    spec:
        template:
            spec:
                containers:
                    - name: elasticdump
                    image: elasticdump / elasticsearch - dump
                    imagePullPolicy: IfNotPresent
                    command: ["/bin/sh", "-c", "elasticdump.sh"]
                    volumeMounts:
                    - mountPath: / opt / data
                    name: blob01
                    resources:
                    requests:
                    memory: 1
                    Gi
                    limits:
                    memory: 5
                    Gi
                    volumes:
                    - name: blob01
                    persistentVolumeClaim:
                    claimName: pvc - blob
                    configMap:
                    name: elasticdump - configmap
                    items:
                    - key: elasticdump.sh
                    path: elasticdump.sh
                restartPolicy: OnFailure
© www.soinside.com 2019 - 2024. All rights reserved.