Jenkins 신입 트러블슈팅 면접

Jenkins 신입 · 취준 (0~1년) 트러블슈팅 3문항 조회수 8 · 2026-09-16 (수) 07:40:39
1 빌드 실패 원인 분석
Easy

Q. Jenkins에서 빌드가 갑자기 실패하기 시작했습니다. Console Output을 확인했을 때 'Permission denied' 에러가 발생하고 있습니다. 이 문제의 원인으로 어떤 것들을 의심해볼 수 있으며, 어떤 순서로 확인하시겠습니까?

파일 시스템 권한과 Jenkins가 실행되는 사용자 계정을 생각해보세요.

A. 모범답안

먼저 Console Output에서 정확히 어떤 파일이나 디렉토리에 접근할 때 권한 에러가 발생했는지 확인합니다. 다음으로 Jenkins가 실행되는 사용자 계정(보통 jenkins 사용자)을 확인하고, 해당 사용자가 문제의 파일이나 디렉토리에 대한 읽기/쓰기/실행 권한을 가지고 있는지 확인합니다. Workspace 디렉토리의 권한 설정이 변경되었거나, 새로 추가된 스크립트 파일에 실행 권한이 없는 경우가 흔한 원인입니다. 권한 문제를 확인했다면 chmod나 chown 명령어로 적절한 권한을 부여하여 해결합니다. 재발 방지를 위해 빌드 스크립트 초반에 필요한 권한을 자동으로 설정하는 명령어를 추가하는 것도 좋은 방법입니다.

핵심 포인트
  • • Console Output에서 구체적인 에러 위치 파악
  • • Jenkins 실행 사용자 계정 확인
  • • 파일/디렉토리 권한 확인 및 수정
  • • 빌드 스크립트에 권한 설정 자동화
답변에 넣으면 좋은 키워드
Permission denied Console Output jenkins 사용자 chmod chown Workspace
실무에서는

빌드 서버의 권한 설정 오류는 배포 자동화 파이프라인에서 가장 자주 발생하는 문제 중 하나입니다.

Follow-up 질문

만약 권한 문제가 아니라 디스크 공간 부족으로 빌드가 실패한다면 어떻게 확인하고 해결하시겠습니까?

2 플러그인 오류 대응
Medium

Q. Jenkins 플러그인을 업데이트한 후 특정 Job이 실행되지 않고 'java.lang.NoClassDefFoundError' 에러가 발생합니다. 다른 Job들은 정상 동작하고 있습니다. 이 문제를 어떻게 진단하고 해결하시겠습니까?

플러그인 간 의존성과 호환성 문제, 그리고 Jenkins 재시작 여부를 고려해보세요.

A. 모범답안

먼저 Jenkins 관리 페이지에서 플러그인 관리 메뉴를 확인하여 업데이트된 플러그인과 의존성 경고가 있는지 확인합니다. NoClassDefFoundError는 주로 플러그인 버전 간 호환성 문제나 의존 라이브러리 누락으로 발생하므로, 문제가 되는 Job이 사용하는 플러그인을 파악합니다. Jenkins를 재시작하여 플러그인이 완전히 로드되도록 시도하고, 문제가 지속되면 플러그인을 이전 버전으로 롤백하는 것을 고려합니다. 시스템 로그(/var/log/jenkins/jenkins.log)에서 상세한 스택 트레이스를 확인하여 어떤 클래스가 누락되었는지 파악합니다. 재발 방지를 위해 플러그인 업데이트 전 테스트 환경에서 먼저 검증하고, 주요 플러그인의 버전을 문서화하여 관리하는 것이 좋습니다.

핵심 포인트
  • • 플러그인 관리 메뉴에서 의존성 경고 확인
  • • Jenkins 재시작으로 플러그인 완전 로드
  • • 시스템 로그에서 스택 트레이스 분석
  • • 플러그인 롤백 및 테스트 환경 검증
답변에 넣으면 좋은 키워드
NoClassDefFoundError 플러그인 의존성 롤백 jenkins.log 호환성 재시작
실무에서는

플러그인 의존성 문제는 Jenkins 버전 업그레이드나 플러그인 업데이트 시 가장 빈번하게 발생하는 장애입니다.

Follow-up 질문

플러그인 업데이트 시 안전하게 진행하기 위한 사전 점검 사항에는 어떤 것들이 있을까요?

3 빌드 성능 저하
Medium

Q. 최근 들어 Jenkins 빌드 시간이 평소보다 2배 이상 느려졌습니다. 여러 Job들이 동시에 영향을 받고 있으며, Jenkins 대시보드에서 'Executor 상태'를 보니 모든 Executor가 항상 사용 중입니다. 이 성능 저하 문제를 어떻게 진단하고 개선하시겠습니까?

동시 실행 가능한 빌드 수와 빌드 큐 상태를 확인해보세요.

A. 모범답안

먼저 Jenkins 대시보드의 Build Queue와 Build Executor Status를 확인하여 대기 중인 Job의 수와 패턴을 파악합니다. 모든 Executor가 사용 중이라는 것은 동시 실행 가능한 빌드 수가 부족하다는 의미이므로, Jenkins 설정에서 Executor 수를 증가시키는 것을 고려합니다. 시스템 리소스(CPU, 메모리, 디스크 I/O)를 모니터링하여 하드웨어 병목이 있는지 확인합니다. 특정 Job이 비정상적으로 오래 실행되고 있다면 해당 Job의 로그를 분석하여 원인을 파악합니다. 장기적으로는 빌드 에이전트(Slave Node)를 추가하여 분산 빌드 환경을 구성하고, 불필요한 빌드 트리거를 줄이며, 캐시를 활용하여 빌드 시간을 단축하는 방안을 검토합니다.

핵심 포인트
  • • Build Queue와 Executor 상태 모니터링
  • • Executor 수 조정 고려
  • • 시스템 리소스 병목 확인
  • • 빌드 에이전트 추가로 분산 처리
답변에 넣으면 좋은 키워드
Executor Build Queue 병목 Slave Node 분산 빌드 리소스 모니터링
실무에서는

팀 규모가 커지고 빌드 빈도가 증가하면 Executor 부족으로 인한 성능 저하가 필연적으로 발생합니다.

Follow-up 질문

빌드 에이전트(Slave Node)를 추가할 때 Master-Slave 구조에서 주의해야 할 점은 무엇인가요?

댓글 0

로그인 후 댓글을 작성할 수 있습니다.

아직 댓글이 없습니다. 첫 번째 댓글을 남겨보세요!