Helm Flow Control로 여러 Cron 관리
하나의 cronjob이 있으면 별로 중요하지 않지만 cronjob이 많으면 cron당 각 파일을 만드는 것이 때때로 재미가 없을 수 있습니다.
Helm에는 템플릿에서 동적 값을 조작하는 데 사용할 수 있는 Flow Control 이 있습니다.
이 기사에서는 단일 cron을 생성한 다음 cronjob 명령 모음을 반복하여 여러 cronjob 리소스를 생성합니다.
단일 CronJob 만들기:
다음 코드를 복사하여 cronjob을 만듭니다.
위의 파일은 매분 실행되고 일부 텍스트를 인쇄하는 크론을 생성합니다.
여러 Cronjob 명령 만들기:
이제 모든 고유 자리 표시자를 보유할 여러 cronjob 명령을 만들어 보겠습니다. 이제 cron의 name
, frequency
, command
등의 값을 저장할 별도의 cronjob 파일을 생성합니다. cronjobs.yaml
안에 .helm/values/cronjobs.yaml.
를 생성하자
우리는 고유한 ID, 이름, 명령 및 일정을 갖는 4개의 cronjob을 만들 것입니다. 하지만 원하는 경우 더 많은 동적 값을 추가할 수 있습니다.
<script id="gist-ltag"src="https://gist.github.com/ujwaldhakal/099ace9401ed99054199f670db9d857b.js"/>
helm 템플릿에 동적 값을 전달합니다.
지금까지 단일 cronjob 작업을 수행한 다음 여러 cronjob 명령을 생성했습니다. 이제 여러 파일을 수동으로 생성할 필요가 없도록 단일 cronjob 내에서 이러한 cronjobs 명령을 반복하려고 합니다.
Helm Flow Control에서 사용할 수 있는 여러 명령이 있습니다. 이를 위해 *{{- range $cronjob := $.Values.cronjobs }}*
를 사용하여 값을 반복하고 {{$cronjob.id}},{{$cronjob.name}},{{$cronjob.schedule}}
와 같은 동적 값에 액세스합니다. 아래 코드와 같이:
<script id="gist-ltag"src="https://gist.github.com/ujwaldhakal/ff97414c73fb52d8d72d96b97282c2bf.js"/>
마지막 퍼즐 조각은 Helm을 설치/업그레이드하는 동안 이러한 동적 값을 전달하는 것입니다. 이를 위해 해당 cronjobs 명령 파일의 전체 경로(예:*.`*helm/values/cronjobs.yaml)와 함께 — values 키워드를 사용하여 해당 값을 전달할 수 있습니다. `The final command 다음과 같이 표시됩니다.
helm upgrade — install — values “.helm/values/cronjobs.yaml” multiple-cronjobs .helm
결론:
두 개의 파일을 사용하여 여러 cronjob을 설정했습니다. 하나는 전체 Kubernetes cronjob의 사양을 정의하기 위한 것이고 다음은 명령, 빈도, 이름 등과 같은 동적 값을 정의하기 위한 것입니다. Helm Flow Control을 사용하여 복잡한 구성을 빌드/관리할 수 있습니다. .
Github 링크: https://github.com/ujwaldhakal/multiple-cronjob-helm
Reference
이 문제에 관하여(Helm Flow Control로 여러 Cron 관리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ujwaldhakal/manage-multiple-cron-with-helm-flow-control-32i7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)