У меня есть приложение, работающее в модулях K8S. мое приложение записывает журналы по определенному пути, для которого у меня уже есть том, смонтированный на модуле. Мое требование - запланировать cronjob, который будет запускаться еженедельно один раз, читать журналы из этого тома модуля и генерировать базу отчетов на моем скрипте (который в основном фильтрует журналы на основе некоторых ключевых слов). и отправьте отчет по почте. К сожалению, я не уверен, как я буду действовать в этом направлении, так как я не смог получить ни одного документа или блога, в котором говорилось бы об интеграции conrjob в существующий модуль или том.
apiVersion: v1
kind: Pod
metadata:
name: webserver
spec:
volumes:
- name: shared-logs
emptyDir: {}
containers:
- name: nginx
image: nginx
volumeMounts:
- name: shared-logs
mountPath: /var/log/nginx
- name: sidecar-container
image: busybox
command: ["sh","-c","while true; do cat /var/log/nginx/access.log /var/log/nginx/error.log; sleep 30; done"]
volumeMounts:
- name: shared-logs
mountPath: /var/log/nginx
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: "discovery-cronjob"
labels:
app.kubernetes.io/name: discovery
spec:
schedule: "*/5 * * * *"
jobTemplate:
spec:
template:
spec:
containers:
- name: log-report
image: busybox
command: ['/bin/sh']
args: ['-c', 'cat /var/log/nginx/access.log > nginx.log']
volumeMounts:
- mountPath: /log
name: shared-logs
restartPolicy: Never