강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

배종원님의 프로필 이미지
배종원

작성한 질문수

Jenkins를 이용한 CI/CD Pipeline 구축

실습24) Jenkins를 이용하여 Tomcat 서버에 배포하기

Built-In Node가 오프라인 상태일때

작성

·

750

0

This is the Jenkins controller's built-in node. Builds running on this node will execute on the same system and as the same user as the Jenkins controller. This is appropriate e.g. for special jobs performing backups, but in general you should run builds on agents. Learn more about distributed builds.

Disk space is below threshold of 1.00 GiB. Only 471.52 MiB out of 474.81 MiB left on /tmp.

강의를 그대로 따라했는데 빌드상태가 오프라인으로 떠요

로컬호스트 환경에서는 문제없었습니다...

답변 2

0

해당 문제 해결한 방법 올려드립니다.

오답노트처럼 적어 읽는데 양해 부탁드립니다.

EC2 Jenkins 메모리 문제.

임시로 EC2에 젠킨스 서버를 구성했는데, 메모리 부족과 속도 저하 문제가 발생했다.

기본적으로 젠킨스 자체가 약 350MB 정도의 메모리를 사용하는데, 내가 사용한 인스턴스 타입은 t3.micro라서 메모리가 1GB밖에 안 됐다.

그래서 여러 가지 방법을 시도했다.

첫 번째로, 인스턴스 타입을 t3.small로 변경해서 서버 스펙을 스케일업했다.

두 번째로, 스왑 메모리 2GB를 추가해서 실제 메모리 부족 상황에서 디스크 기반으로 버틸 수 있게 했다.

세 번째로는 학습용이기도 하고, 동시에 실행할 Job 수도 적기 때문에 Executor 수를 기본 2개에서 1개로 줄였다. 이걸로 CPU, RAM, Disk 사용량을 줄였다.

마지막으로, Executor 수가 줄면 동시에 Job이 덜 돌아가니까 /tmp 디렉토리 사용량도 상대적으로 천천히 올라갈 거라 판단했다.

그래서 Jenkins의 노드 모니터링 설정에서 Free Temp Space의 임계치를 기본 1GiB에서 500MiB로 낮춰줬다.

이걸로 Jenkins 내부에서 발생하는 불필요한 경고를 줄이고, 리소스 감시로 인한 오버헤드도 최소화하면서 메모리 문제를 어느 정도 해결할 수 있었다.

위 글 보시면서 Jenkins 관리 > System에서 Executor 수 1로 줄이시고, Node 관리에서 모니터링하는 임계점 줄이시면 저처럼 small로 스케일업 안하셔도 micro에서 돌아갈거라고 생각합니다.

0

Dowon Lee님의 프로필 이미지
Dowon Lee
지식공유자

안녕하세요, 이도원입니다.

Local환경에서 실행 시 문제가 없었지만, AWS 환경에서 진행 시 오류가 발생하셨다는 것 같습니다. AWS에서 Jenkins를 구동하는 방식에 필요한 리소스가 부족한 경우일 수도 있을 것 같습니다. 저희가 실습한 환경과 동일하게 진행하시더라도, 실제 생성되어 사용되는 EC2 인스턴스 및 Docker, Jenkins의 서비스 상태가 완전하기 동일할 수 없기 때문에, 상황에 맞게 수정해야 할 부분도 있다고 생각됩니다. 우선 올려주신 오류 메시지만으로는 정확한 원인을 알기 어려우나, 마지막에 있는 메시지의 내용 처럼 Resource가 사용되기 위한 Disk 용량의 확보 및 Resource의 타입 변경 등을 해 보실 수 있을 것 같습니다. Jenkins를 Docker로 기동하셨다면, Volume mount를 통해 Host PC의 Disk를 공유해서 사용해 보실 수 있으며, Jenkins를 직접 EC2에 기동하신 경우라면, EC2의 Disk 공간을 늘려서 사용해 보시기 바랍니다. 한번 생성 된 EC2 인스턴스의 디스크 용량을 늘리기 위해 Mount 설정부터 다시 해야 하는데, 아래 내용 참조해 보실 수 있을 것 같습니다.

EBS 볼륨 크기 조정 후 파일 시스템 확장 - Amazon EBS

추가 질문 사항 있으시면 다시 글 남겨 주세요.

감사합니다.

배종원님의 프로필 이미지
배종원

작성한 질문수

질문하기