[JAVA] 간단한 .java 파일을 실행 가능한 .jar 파일로 만들고 도커 이미지로 쿠버네티스 cronjob 생성하기
2022. 11. 3. 13:35
개발/JAVA
어제 간단한 특정시간이 지난 뒤 프로세스가 종료되는 자바파일을 구현해야하는 상황이 생겼다. 그래서 jar 파일을 만들고 Dockerfile을 작성한 뒤 Docker image를 생성하고, 쿠버네티스 cronjob 에서 가져오는 것 까지해보았다. 먼저 .jar 파일은 그동안 maven, gradle을 통해 자동으로 쭈루룩 만들어줬었는데, 그냥 test.java main 메소드 하나 있는 것을 컴파일하여 나온 .class 파일과 매니패스트파일을 합치는 작업을 해주면 된다. 근데 이때 매니패스트 지정하는데에 시행착오를 겪었다.. (문자열 끝에 엔터가 필요하다고...) test.java 가장먼저 개발을 할 test.java 를 만들자. 간단히 Thread를 통해 3초의 대기를 준 뒤 프로세스가 종료되게 하였다...
[OCP] cronjob schedule 한국시간 설정하기
2022. 9. 1. 11:35
엔지니어링/OCP
cronjob 설정을하다가 보니 UTC로 스케줄이 돌고있었다.(환경은 ARO 4.10.x) 검색해보니 CRON_TZ=Asia/Seoul 을 지정하면 된다고 한다. 해당 설정은 ocp 4.9 이상부터 도입된 설정이다. schedule: CRON_TZ=Asia/Seoul 10 1 * * *
[Kubernetes] cron job 실패 시 중단하기
2022. 9. 1. 11:31
엔지니어링/Kubernetes
아래 포스팅인 3scale 백업 고도화 4편에서 cronjob 까지 완료하였는데, 해당 설정은 job 실패시 컨테이너를 restart 하는 설정이 되어있다. OCP 3scale 백업 자동화 고도화하기 - 4편(마지막) 지난 3편에 이어 다음!! OCP 3scale 백업 자동화 고도화하기 - 3편(이미지생성, 권한부여) 백업 자동화 고도화 작업 3탄이다. OCP 3scale 백업 자동화 고도화하기 - 2편(dockerfile, 쉘스크립트) 아래 1편에서 flowlog.tistory.com 바로 restartPolicy: OnFailure 설정때문인데, cronjob에서는 OnFailure / Never 두 가지 옵션이 존재한다. 앞서 말했듯이 OnFailure 는 job 이 실패하였을 때, 컨테이너를 재시..
[OCP] 3scale 백업 자동화 고도화하기 - 4편(마지막)
2022. 8. 31. 13:35
엔지니어링/3scale
지난 3편에 이어 다음!! OCP 3scale 백업 자동화 고도화하기 - 3편(이미지생성, 권한부여) 백업 자동화 고도화 작업 3탄이다. OCP 3scale 백업 자동화 고도화하기 - 2편(dockerfile, 쉘스크립트) 아래 1편에서 고도화할 작업을 정리해두었다. OCP 3scale 백업 자동화 고도화하기 - 1편(도입부) 저번 flowlog.tistory.com 지난 포스팅까지 base 이미지가 생성되었다. 이제 마지막으로 cronjob / pvc / serviceaccount / rolebinding / scc 권한을 해주면 끝난다. serviceAccount pod가 기동될때 사용할 서비스어카운트를 생성한다. 서비스 어카운트를 생성하면 secret에 token이 생기는데 해당 토큰으로 부여된 권..