微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么使用 Job API 时 Kubernetes 成功计数会下降

如何解决为什么使用 Job API 时 Kubernetes 成功计数会下降

在 GKE 上的 Kubernetes 集群上运行作业时,我注意到以下行为(这是 kubectl get jobs --watch 的输出

f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h4m       4h4m
f76b2146-c302-4d0e-94a7-9299675bdc5b         3/8           4h10m      4h10m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h11m      4h11m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h11m      4h11m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h18m      4h18m
f76b2146-c302-4d0e-94a7-9299675bdc5b         3/8           4h18m      4h18m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h18m      4h18m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h19m      4h19m
f76b2146-c302-4d0e-94a7-9299675bdc5b         0/8           4h21m      4h21m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h22m      4h22m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h22m      4h22m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h22m      4h22m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h23m      4h23m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h29m      4h29m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h30m      4h30m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h30m      4h30m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h31m      4h31m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h31m      4h31m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h35m      4h35m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h36m      4h36m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h38m      4h38m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h38m      4h38m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h40m      4h40m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h40m      4h40m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h43m      4h43m
f76b2146-c302-4d0e-94a7-9299675bdc5b         3/8           4h46m      4h46m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h47m      4h47m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h47m      4h47m
f76b2146-c302-4d0e-94a7-9299675bdc5b         0/8           4h49m      4h49m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h52m      4h52m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h56m      4h56m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h56m      4h56m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           4h58m      4h58m
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           4h58m      4h58m
f76b2146-c302-4d0e-94a7-9299675bdc5b         2/8           5h         5h
f76b2146-c302-4d0e-94a7-9299675bdc5b         1/8           5h         5h

如您所见,“succeeded”字段的值会上升和下降。这也可以在从 API 收到的完整 yaml 中看到(只留下状态字段):

status:
  active: 7
  startTime: "2021-02-02T06:42:53Z"
  succeeded: 1

仔细阅读文档后,我没有看到提及此类行为。 这是完整的工作规范:

apiVersion: batch/v1
kind: Job
Metadata:
  creationTimestamp: "2021-02-02T06:42:53Z"
  labels:
    controller-uid: 575af5b7-0c98-4470-a75f-d552810a2887
    job-name: f76b2146-c302-4d0e-94a7-9299675bdc5b
  name: f76b2146-c302-4d0e-94a7-9299675bdc5b
  namespace: default
  resourceVersion: "204488525"
  selfLink: /apis/batch/v1/namespaces/default/jobs/f76b2146-c302-4d0e-94a7-9299675bdc5b
  uid: 575af5b7-0c98-4470-a75f-d552810a2887
spec:
  backoffLimit: 6
  completions: 8
  parallelism: 10
  selector:
    matchLabels:
      controller-uid: 575af5b7-0c98-4470-a75f-d552810a2887
  template:
    Metadata:
      creationTimestamp: null
      labels:
        controller-uid: 575af5b7-0c98-4470-a75f-d552810a2887
        job-name: f76b2146-c302-4d0e-94a7-9299675bdc5b
    spec:
      containers:
      - command:
        - node
        - --max-old-space-size=24576
        - dist/src/main.js
        - --queue
        - f76b2146-c302-4d0e-94a7-9299675bdc5b
        env:
        - name: CONSUME_WAIT_FOR_MESSAGE_TIMEOUT_SEC
          value: "300"
        - name: GOOGLE_APPLICATION_CREDENTIALS
          value: /var/secrets/google/key.json
        - name: RUN_ENVIRONMENT
          value: development
        image: gcr.io/ds-research-1/scan-worker:8def43ab927aa4d23ad0e8dafac4eb16180dae66
        imagePullPolicy: IfNotPresent
        name: scan-container
        resources:
          limits:
            cpu: 2500m
            memory: 2Gi
          requests:
            cpu: 1600m
            memory: 1Gi
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
        volumeMounts:
        - mountPath: /var/secrets/google
          name: google-cloud-key
      dnsPolicy: ClusterFirst
      nodeselector:
        cloud.google.com/gke-nodepool: scans-pool
      restartPolicy: OnFailure
      schedulerName: default-scheduler
      securityContext: {}
      terminationGracePeriodSeconds: 30
      volumes:
      - name: google-cloud-key
        secret:
          defaultMode: 420
          secretName: scan-service-app-poc-df0e7546cca02ed6fa492f01ea166160f2190e94

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?