From eac5feb4f56392a978d7018d15008481e64483b8 Mon Sep 17 00:00:00 2001 From: Marian Steinbach Date: Wed, 28 Nov 2018 22:19:03 +0100 Subject: [PATCH] Kubernetes manifests: replace jobs with cronjobs --- .../green-spider-createjobs-cronjob.yaml | 39 ++++++++++++++++++ .../green-spider-screenshotter-cronjob.yaml | 36 ++++++++++++++++ .../green-spider-screenshotter-job.yaml | 29 ------------- kubernetes/green-spider-spider-cronjob.yaml | 41 +++++++++++++++++++ kubernetes/green-spider-spider-job.yaml | 37 ----------------- 5 files changed, 116 insertions(+), 66 deletions(-) create mode 100644 kubernetes/green-spider-createjobs-cronjob.yaml create mode 100644 kubernetes/green-spider-screenshotter-cronjob.yaml delete mode 100644 kubernetes/green-spider-screenshotter-job.yaml create mode 100644 kubernetes/green-spider-spider-cronjob.yaml delete mode 100644 kubernetes/green-spider-spider-job.yaml diff --git a/kubernetes/green-spider-createjobs-cronjob.yaml b/kubernetes/green-spider-createjobs-cronjob.yaml new file mode 100644 index 0000000..c9ed633 --- /dev/null +++ b/kubernetes/green-spider-createjobs-cronjob.yaml @@ -0,0 +1,39 @@ +apiVersion: batch/v1beta1 +kind: CronJob +metadata: + name: green-spider-createjobs +spec: + # Monday, Wednesday, Friday at 1:05 UTC + schedule: "5 1 * * 1,3,5" + jobTemplate: + spec: + parallelism: 1 + template: + spec: + containers: + - name: spider + image: quay.io/netzbegruenung/green-spider:latest + imagePullPolicy: Always + args: + - "--credentials-path=/secrets/datastore-writer.json" + - "--loglevel=info" + - jobs + volumeMounts: + - name: secrets + mountPath: "/secrets" + readOnly: true + resources: + requests: + cpu: 500m + memory: 200M + restartPolicy: OnFailure + volumes: + - name: secrets + secret: + secretName: green-spider + items: + - key: datastore-writer.json + path: datastore-writer.json + - name: shared + emptyDir: {} + diff --git a/kubernetes/green-spider-screenshotter-cronjob.yaml b/kubernetes/green-spider-screenshotter-cronjob.yaml new file mode 100644 index 0000000..3f5ac14 --- /dev/null +++ b/kubernetes/green-spider-screenshotter-cronjob.yaml @@ -0,0 +1,36 @@ +apiVersion: batch/v1beta1 +kind: CronJob +metadata: + name: green-spider-screenshotter +spec: + # Saturday at 1:05 UTC + schedule: "5 1 * * 6" + jobTemplate: + spec: + parallelism: 1 + template: + spec: + containers: + - name: screenshotter + image: quay.io/netzbegruenung/green-spider-screenshotter:latest + imagePullPolicy: Always + volumeMounts: + - name: secrets + mountPath: "/secrets" + readOnly: true + resources: + requests: + cpu: 800m + memory: 4000M + # No restarts, as this would mean to start over. + # TODO: Maintain a queue and change this. + restartPolicy: Never + volumes: + - name: secrets + secret: + secretName: green-spider + items: + - key: datastore-writer.json + path: datastore-writer.json + - key: screenshots-uploader.json + path: screenshots-uploader.json diff --git a/kubernetes/green-spider-screenshotter-job.yaml b/kubernetes/green-spider-screenshotter-job.yaml deleted file mode 100644 index da93d93..0000000 --- a/kubernetes/green-spider-screenshotter-job.yaml +++ /dev/null @@ -1,29 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: green-spider-screenshotter -spec: - template: - spec: - containers: - - name: screenshotter - image: quay.io/netzbegruenung/green-spider-screenshotter:latest - imagePullPolicy: Always - volumeMounts: - - name: secrets - mountPath: "/secrets" - readOnly: true - resources: - requests: - cpu: 800m - memory: 4000M - restartPolicy: Never - volumes: - - name: secrets - secret: - secretName: green-spider - items: - - key: datastore-writer.json - path: datastore-writer.json - - key: screenshots-uploader.json - path: screenshots-uploader.json diff --git a/kubernetes/green-spider-spider-cronjob.yaml b/kubernetes/green-spider-spider-cronjob.yaml new file mode 100644 index 0000000..0868d32 --- /dev/null +++ b/kubernetes/green-spider-spider-cronjob.yaml @@ -0,0 +1,41 @@ +apiVersion: batch/v1beta1 +kind: CronJob +metadata: + name: green-spider-spider +spec: + # Monday, Wednesday, Friday at 1:25 UTC + schedule: "25 1 * * 1,3,5" + jobTemplate: + spec: + parallelism: 2 + template: + spec: + containers: + - name: spider + image: quay.io/netzbegruenung/green-spider:latest + imagePullPolicy: Always + args: + - "--credentials-path=/secrets/datastore-writer.json" + - "--loglevel=info" + - spider + volumeMounts: + - name: secrets + mountPath: "/secrets" + readOnly: true + - name: shared + mountPath: /dev/shm + resources: + requests: + cpu: 800m + memory: 5000M + restartPolicy: OnFailure + volumes: + - name: secrets + secret: + secretName: green-spider + items: + - key: datastore-writer.json + path: datastore-writer.json + - name: shared + emptyDir: {} + diff --git a/kubernetes/green-spider-spider-job.yaml b/kubernetes/green-spider-spider-job.yaml deleted file mode 100644 index 21f051a..0000000 --- a/kubernetes/green-spider-spider-job.yaml +++ /dev/null @@ -1,37 +0,0 @@ -apiVersion: batch/v1 -kind: Job -metadata: - name: green-spider-spider -spec: - parallelism: 1 - template: - spec: - containers: - - name: spider - image: quay.io/netzbegruenung/green-spider:latest - imagePullPolicy: Always - args: - - "--credentials-path=/secrets/datastore-writer.json" - - "--loglevel=info" - - spider - volumeMounts: - - name: secrets - mountPath: "/secrets" - readOnly: true - - name: shared - mountPath: /dev/shm - resources: - requests: - cpu: 900m - memory: 2000M - restartPolicy: OnFailure - volumes: - - name: secrets - secret: - secretName: green-spider - items: - - key: datastore-writer.json - path: datastore-writer.json - - name: shared - emptyDir: {} -