본문 바로가기
반응형

젠킨스20

EC2 (Amazon Linux 2) 에 Jenkins 설치하기 기존에 작성된 EC2 (Amazon Linux 1) 에 Jenkins 설치하기 이 있지만, 현재 AWS에서 Amazon Linux2가 메인 이미지가 되었기에 해당 버전으로 설치하는 법을 진행하겠습니다. 아시다시피 Amazon Linux 2는 CentOS 7.x 호환입니다. 1. 버전 확인 먼저 현재 자신의 서버가 Amazon Linux2가 맞는지 확인합니다. 기억이 안나신다면 서버에서 아래 명령어로 버전을 확인합니다. cat /etc/*release 2. Jenkins 설치 Jenkins 설치는 크게 달라진 점은 없습니다. 다만, Jenkins 설치에 필요한 Java가 기본 설치되어 있지 않습니다. Amazon Linux 1에서는 Java7이 기본 설치되어 있었습니다. 그래서 기존처럼 Java7을 삭제할.. 2020. 12. 31.
Jenkins 버전 업데이트하기 Jenkins 버전업을 할 수 있는 2가지 방법을 소개 드립니다. 1. yum 으로 install한 경우 만약 기존 Jenkins 설치를 yum install로 진행하셨다면 편하게 yum update로 진행하시면 됩니다. yum install로 설치하는 방법은 이전 포스팅에 있습니다. 먼저 기존에 작동 중이던 Jenkins를 종료합니다. sudo service jenkins stop 그리고 아래 명령어로 바로 업데이트를 진행합니다. sudo yum update jenkins -y yum install, yum update는 모두 LTS 버전 기준으로만 작동합니다. 다만, public key가 없다는 에러 메세지가 나올텐데요. 이때는 현재 업데이트 버전의 Key가 없기 때문입니다. 아래 명령어로 현재 버전.. 2020. 7. 28.
AWS S3를 이용한 Jenkins 마이그레이션 기존 Jenkins 환경을 다른 서버로 마이그레이션을 해야할 때가 있습니다. 일반적으로는 잘 없지만, 계열사 혹은 서비스 분리로 AWS 환경 자체가 변경될 경우가 있습니다. 그럴때를 대비해서 EC2에 설치된 Jenkins를 다른 EC2로 마이그레이션 하는 방법을 진행해보겠습니다. 전체 구조는 아래와 같습니다.Jenkins는 모든 설정과 Job 내용이 파일로 관리가 됩니다. 그래서 Jenkins가 설치된 디렉토리 전체를 타 서버로 이관만 하면 마이그레이션은 끝입니다. 그럼 하나씩 진행해보겠습니다. 1. 기존 서버 먼저 기존에 운영되던 Jenkins EC2 서버에서 root 계정으로 전환합니다. sudo su - root 안전하게 이관하기 위해 실행중인 Jenkins를 정지합니다. service jenkin.. 2020. 7. 9.
Spring Batch 관리 도구로서의 Jenkins Spring Batch는 아직까지 확실한 표준 관리 도구가 없습니다. 각 팀/회사마다 상이한 방법들을 사용하는데요. 대표적인 방법들은 아래와 같습니다. Cron 클라우드 서버리스 이를테면 AWS의 Lambda 에 배치 코드를 등록하고, AWS CloudWatch에서 스케줄링 실행을 하도록 구성하는 방식입니다. API 기반의 직접 만든 관리자 페이지 Spring Batch Admin Deprecated 되었습니다. 더이상 개선하지 않겠다고 합니다. Spring Cloud Data Flow 로 전환하라고 합니다. 참고 Quartz를 이용한 관리자 페이지 Scheduler 역할로 Quartz를 사용하고 그에 대한 UI 대시보드를 직접 만드는 경우입니다. 참고 CI 서비스 (Jenkins / Teamcity 등.. 2020. 3. 22.
젠킨스 변경된 Slack Integration Token 등록하기 젠킨스 Slack Notification 플러그인이 버전업 되면서 더이상 Integration Token을 Job Config에서 바로 설정할 수 없게 되었습니다. 기존 플러그인을 사용한다면 문제 없지만, 최근에 젠킨스를 설치하면 플러그인 역시 최신 버전으로 받게되니 참고하시면 될것 같습니다. 기존의 Github ssh 연동과 동일한 방식으로 진행합니다. 좌측 사이드의 Credentials -> System로 차례로 이동합니다.Grlobal credentials를 클릭합니다화면 좌측에 있는 Add Credentials를 클릭해 Credentials 등록 화면으로 이동합니다.Kind 항목에서 Secret text를 선택하고 아래와 같이 항목을 등록합니다. Secret: 기존에 사용하시던 Slack Inte.. 2020. 2. 15.
Spring Batch의 멱등성 유지하기 프로그래밍에서 자주 사용되는 단어 중에 멱등성 이 있습니다. 이 멱등성을 한마디로 정의 하면 연산을 여러번 적용하더라도 결과가 달라지지 않는 성질 입니다. 참고: idempotent-rest-apis Spring Batch에서도 역시 이런 멱등성이 필요한 경우가 있습니다. 예를 들어 Spring Batch를 사용하다보면 동적으로 변하는 날짜가 필요한 경우가 있습니다. 대표적으로 다음과 같은 경우들 입니다. 매일 한번 어제 매출 데이터를 집계해야할 때 현재 시간을 기준으로 유효기간이 만료된 포인트를 정리할 때 매일 한번 오늘을 기준으로 휴면회원 처리를 할 때 등등 실행되는 시간을 기준으로 데이터를 조회하고 처리해야할 경우들입니다. 이럴때 가장 흔하게 사용되는 방법이 LocalDate.now() 혹은 Loc.. 2019. 9. 29.

728x90
반응형