Continuous Integration System 복구일지.

  • Post author:
  • Post category:
  • Post comments:0 Comments
  • Post last modified:January 12, 2006

오전에 Cruise Control .Net에 문제가 발생하였다. 문제가 발생한 시기부터 문제를 해결한 시기까지 시간순서대로 사건을 요약하면 다음과 같다.

  1. 원격작업 도중에 윈도우즈 2000 서버가 말썽을 일으켰다. 운영체제를 재부팅시켜야 했다.

  2. 재부팅 후에 CruiseControl .NET이 등록된 첫번째 프로젝트에서 멈추는 현상이 발생했다.

  3. CruiseControl .NET의 윈도우즈 서비스를 중지시키려고 해봤으나, 정상 종료가 되지 않았다는 에러 메시지가 떴다.

  4. PsKill을 사용해서 CruiseControl .NET의 윈도우즈 서비스 프로세스를 강제종료시켰다.

  5. 프로젝트 설정파일을 백업 받고, 프로그램 추가제거에서 CruiseControl .NET을 삭제하고, 다시 설치했다. 백업 받은 설정파일을 [잘라내기->붙여넣기]했다.

  6. 새로 설치한 CruiseControl .NET의 윈도우즈 서비스를 실행시켰으나, 오류가 발생했다.

  7. 이벤트 로그를 보니, 해당 네트워크 포트를 다른 프로세스가 사용하고 있다는 메시지를 볼 수 있었다. 문제를 간단하게 해결하기 위해서 개발서버를 재부팅시켰다.

  8. 만약을 위해 CruiseControl .NET을 제거하고 다시 설치했다. 이 과정에서 기존 프로젝트 설정파일을 함께 지워버렸다.

  9. 기본 설정파일 내용 중 처음 두개의 프로젝트 내용만 복구한 후, CruiseControl .NET을 콘솔 모드로 실행시켜봤다. 콘솔 모드를 택한 것은 작업 과정을 실시간으로 모니터링하기 위함이었다. 이번에도 첫번째 프로젝트에서 작동이 멈췄다.

  10. 메시지를 자세히 살펴보니, check source code modifications(정확한 표현인지는 확실하지 않다. 여하튼 비슷한 내용의 메시지였다.)라는 메시지 이후에 작업이 멈췄다.

  11. 첫번째 프로젝트의 소스버전관리시스템 저장소에 문제가 발생했을지 모른다는 생각이 들었다. 실제로 해당 저장소에 접근이 되지 않았다.

  12. 관리도구로 저장소를 복구하니 모든 문제가 해결됐다.

  13. 설정파일에 나머지 프로젝트에 대한 정보를 모두 기입하고 마무리했다.

오늘의 교훈: 트러블 슈팅시에는 무턱대고 여기저기 찔러보지 말고, 가능한 많은 자료를 모은 후에 작업하자.

Author Details
Kubernetes, DevSecOps, AWS, 클라우드 보안, 클라우드 비용관리, SaaS 의 활용과 내재화 등 소프트웨어 개발 전반에 도움이 필요하다면 도움을 요청하세요. 지인이라면 가볍게 도와드리겠습니다. 전문적인 도움이 필요하다면 저의 현업에 방해가 되지 않는 선에서 협의가능합니다.
0 0 votes
Article Rating
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Inline Feedbacks
View all comments