일정 에 따라 하루에 두 번 실행 되는 Kubernetes Scheduled Job을 만들었습니다 . 그러나 테스트 목적으로 수동으로 트리거하고 싶습니다. 어떻게 할 수 있습니까?
일정 에 따라 하루에 두 번 실행 되는 Kubernetes Scheduled Job을 만들었습니다 . 그러나 테스트 목적으로 수동으로 트리거하고 싶습니다. 어떻게 할 수 있습니까?
답변:
ScheduledJob을 기반으로 간단한 작업을 만들 수 있습니다. ScheduledJob을 이미 실행 한 경우 기록에 작업이 있습니다.
kubectl get jobs
NAME DESIRED SUCCESSFUL AGE
hello-1477281595 1 1 11m
hello-1553106750 1 1 12m
hello-1553237822 1 1 9m
다음 작업 중 하나를 내 보냅니다.
kubectl get job hello-1477281595 -o yaml > my_job.yaml
그런 다음 yaml을 약간 편집하여 불필요한 필드를 지우고 수동으로 실행하십시오.
kubectl create -f my_job.yaml
kubectl delete -f my_job.yaml
*uid
필드와이 명령에 의해 쉽게 제거 할 수 있습니다sed -i '/uid:.*/d' my_job.yaml
편집-2018 년 7 월 : 이 기능이 이제 구현 되었으므로 @pedro_sland의 답변 을 참조하십시오.
아래의 원래 답변은 v1.10.1 미만의 이전 버전의 kubectl에 대해 올바른 상태로 유지됩니다.
================================================ ======================
(다른 답변에서 제안했듯이) 새 작업을 만드는 것 외에는 현재 방법이 없습니다. 이제 여기에서 추적 할 수있는 kubernetes의 기능 요청입니다 : https://github.com/kubernetes/kubernetes/issues/47538
편의를 위해 작은 cmd 유틸리티를 만들어 cronjob을 일시 중지 및 일시 중지 해제했습니다.
k8s 대시 보드의이 탭에서 cron 작업을 수동으로 트리거하는 옵션이 있습니다.
gcloud components install kubectl
그런 다음 kubernetes.io/docs/tasks/tools/install-kubectl