출제 문제
※ 기억에 의존해 복기하는 문제라 오류가 있을 수 있습니다.
참고만 부탁 드립니다.
- 30분 마다 job을 스케쥴 처리할 수 있는 cronjob 생성
- cronjob 이름은 grep, namespace는 devops 사용할 것
- 성공 history는 64개, 실패 history는 160개 보관
- job이 실행되고 8초 이내에 완료 되지 못하면 중단할 것
- pod가 중단 되더라도 재실행 되지 않을 것
- container 이름: busybox
image: busybox:stable,
command: [“grep”, “-i”, “NAMESERVER”, “/etc/resolv.conf”] - cronjob 테스트를 위해 job을 별도로 생성해볼 것
job 이름: grep-test
namespace: devops
# Kubernetes 메뉴얼
https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs
https://kubernetes.io/docs/concepts/workloads/controllers/job/
# cronjob-grep.yaml 생성
apiVersion: batch/v1
kind: CronJob
metadata:
name: grep
namespace: devops
spec:
schedule: "*/30 * * * *"
successfulJobsHistoryLimit: 64
failedJobsHistoryLimit: 160
jobTemplate:
spec:
activeDeadlineSeconds: 8
template:
spec:
containers:
- name: busybox
image: busybox:stable
imagePullPolicy: IfNotPresent
command: ["grep", "-i", "NAMESERVER", "/etc/resolv.conf"]
restartPolicy: Never
# job-grep-test.yaml 생성
apiVersion: batch/v1
kind: Job
metadata:
name: grep-test
namespace: devops
spec:
activeDeadlineSeconds: 8
template:
spec:
containers:
- name: busybox
image: busybox:stable
imagePullPolicy: IfNotPresent
command: ["grep", "-i", "NAMESERVER", "/etc/resolv.conf"]
restartPolicy: Never
# cronjob 생성 및 상태 확인 $ k apply -f cronjob-grep.yaml $ k get cronjob -n devops $ k describe cronjob -n devops grep # job 생성 및 실행 상태 확인 $ k apply -f job-grep-test.yaml $ k get job -n devops $ k describe job -n devops grep-test $ k get po -n devops # pod의 Completed 상태 확인